box-node-sdk
Version:
Official SDK for Box Platform APIs
38 lines (37 loc) • 1.15 kB
text/typescript
import { AccessToken } from '../schemas/accessToken';
import { NetworkSession } from './network';
export interface Authentication {
/**
* @param {NetworkSession} networkSession
* @returns {Promise<AccessToken>}
*/
retrieveToken(networkSession?: NetworkSession): Promise<AccessToken>;
/**
* @param {NetworkSession} networkSession
* @returns {Promise<AccessToken>}
*/
refreshToken(networkSession?: NetworkSession): Promise<AccessToken>;
/**
* @param {NetworkSession} networkSession
* @returns {Promise<string>}
*/
retrieveAuthorizationHeader(networkSession?: NetworkSession): Promise<string>;
/**
* @param {NetworkSession} networkSession
* @returns {Promise<undefined>}
*/
revokeToken(networkSession?: NetworkSession): Promise<undefined>;
/**
* @param {readonly string[]} scopes
* @param {string} resource
* @param {string} sharedLink
* @param {NetworkSession} networkSession
* @returns {Promise<AccessToken>}
*/
downscopeToken(
scopes: readonly string[],
resource?: string,
sharedLink?: string,
networkSession?: NetworkSession,
): Promise<AccessToken>;
}