* Change return type of abstract request methods
* Change return type of `fromParams` method to `static` in request classes
(cherry picked from commit 94799ab66ff60d4b2305aadb6b73aaa4c805221e)
* Make request classes final and update `getParams` return types for improved type safety
(cherry picked from commit d6be496f89cc0e6d30f519792d0dc902685c4178)