* SPDX-License-Identifier: AGPL-3.0-or-later */ namespace KTXF\Resource\Provider; /** * Resource Service Identity OAuth * * OAuth authentication credentials for resource services, including token management. * * @since 2025.05.01 */ interface ResourceServiceIdentityOAuth extends ResourceServiceIdentityInterface { /** * Gets the access token * * @since 2025.05.01 * * @return string */ public function getAccessToken(): string; /** * Sets the access token * * @since 2025.05.01 * * @param string $value * * @return void */ public function setAccessToken(string $value): void; /** * Gets the access token scope * * @since 2025.05.01 * * @return array */ public function getAccessScope(): array; /** * Sets the access token scope * * @since 2025.05.01 * * @param array $value * * @return void */ public function setAccessScope(array $value): void; /** * Gets the access token expiry timestamp * * @since 2025.05.01 * * @return int Unix timestamp */ public function getAccessExpiry(): int; /** * Sets the access token expiry timestamp * * @since 2025.05.01 * * @param int $value Unix timestamp * * @return void */ public function setAccessExpiry(int $value): void; /** * Gets the refresh token * * @since 2025.05.01 * * @return string */ public function getRefreshToken(): string; /** * Sets the refresh token * * @since 2025.05.01 * * @param string $value * * @return void */ public function setRefreshToken(string $value): void; /** * Gets the token refresh location/endpoint * * @since 2025.05.01 * * @return string */ public function getRefreshLocation(): string; /** * Sets the token refresh location/endpoint * * @since 2025.05.01 * * @param string $value * * @return void */ public function setRefreshLocation(string $value): void; }