$publicKeyStorage
$publicKeyStorage :
__construct(\OAuth2\Storage\OAuth2\Encryption\PublicKeyInterface $publicKeyStorage, \OAuth2\Storage\OAuth2\Storage\AccessTokenInterface $tokenStorage = null, \OAuth2\Storage\OAuth2\Encryption\EncryptionInterface $encryptionUtil = null)
| \OAuth2\Storage\OAuth2\Encryption\PublicKeyInterface | $publicKeyStorage | the public key encryption to use |
| \OAuth2\Storage\OAuth2\Storage\AccessTokenInterface | $tokenStorage | OPTIONAL persist the access token to another storage. This is useful if you want to retain access token grant information somewhere, but is not necessary when using this grant type. |
| \OAuth2\Storage\OAuth2\Encryption\EncryptionInterface | $encryptionUtil | OPTIONAL class to use for "encode" and "decode" functions. |