Files
server/shared/lib/Resource/Provider/ResourceServiceIdentityOAuth.php
2026-01-03 13:18:04 -05:00

122 lines
2.3 KiB
PHP

<?php
declare(strict_types=1);
/**
* SPDX-FileCopyrightText: Sebastian Krupinski <krupinski01@gmail.com>
* 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;
}