import { AccessToken } from '../schemas/accessToken.generated.js'; import { NetworkSession } from './network.generated.js'; export interface Authentication { /** * @param {NetworkSession} networkSession * @returns {Promise} */ retrieveToken(networkSession?: NetworkSession): Promise; /** * @param {NetworkSession} networkSession * @returns {Promise} */ refreshToken(networkSession?: NetworkSession): Promise; /** * @param {NetworkSession} networkSession * @returns {Promise} */ retrieveAuthorizationHeader(networkSession?: NetworkSession): Promise; /** * @param {NetworkSession} networkSession * @returns {Promise} */ revokeToken(networkSession?: NetworkSession): Promise; /** * @param {readonly string[]} scopes * @param {string} resource * @param {string} sharedLink * @param {NetworkSession} networkSession * @returns {Promise} */ downscopeToken( scopes: readonly string[], resource?: string, sharedLink?: string, networkSession?: NetworkSession, ): Promise; }