As a Watchlist Expiry user, I want support added to Protect, Delete, Undelete, Rollback, Upload and Move APIs, so that I can access the feature while using these functionalities.
**Background:** This is split out from T248407. `ApiProtect`, `ApiDelete`, `ApiUndelete`, `ApiUpload`, and `ApiRollback` ll use `ApiBase::setWatch()` to watch pages, so adding expiry support to all of them should involve the same changes. Protect and Delete both already have an `expiry` parameter, so for all APIs we can instead use a parameter called `watchlistexpiry`. It should have `ApiBase::PARAM_TYPE` of "expiry", to be introduced with T248508.
* [[ https://meta.wikimedia.org/wiki/Community_Tech/Watchlist_Expiry | Watchlist Expiry project page ]]
* Add watchlist expiry support to Protect API
* Add watchlist expiry support to Delete API
* Add watchlist expiry support to Undelete API
* Add watchlist expiry support to Upload API
* Add watchlist expiry support to Rollback API