The main change would be to depend upon PSR-18 ClientInterface instead of Guzzle's ClientInterface. I see that there are some guzzle middlewares shipped for convenience about rate limiting and such, they can be left as is with a note (if you're using guzzle you can use these middlewares bla bla).
This package has a hard dependency upon guzzle, it is generally considered a good practice for an SDK to not depend upon a specific implementation.
We've PSR-18 for exact this use-case. Luckily, Guzzle already implements it (https://packagist.org/providers/psr/http-client-implementation). It would allow consumers to use http client of their choice. Optionally, this package can depend upon php-http/discovery instead which provides factories and discoveries for various PSRs.
The main change would be to depend upon PSR-18 ClientInterface instead of Guzzle's ClientInterface. I see that there are some guzzle middlewares shipped for convenience about rate limiting and such, they can be left as is with a note (if you're using guzzle you can use these middlewares bla bla).