@rockcarver/frodo-lib
Version:
A library to manage ForgeRock Identity Cloud tenants, ForgeOps deployments, and classic deployments.
90 lines • 3.1 kB
TypeScript
import { AxiosRequestConfig, AxiosResponse } from 'axios';
import { State } from '../shared/State';
export type AccessTokenResponseType = {
access_token: string;
id_token?: string;
scope: string;
token_type: string;
expires_in: number;
};
export type TokenInfoResponseType = {
sub: string;
cts: string;
auditTrackingId: string;
subname: string;
iss: string;
tokenName: string;
token_type: string;
authGrantId: string;
access_token: string;
aud: string;
nbf: number;
grant_type: string;
scope: string[];
auth_time: number;
sessionToken?: string;
realm: string;
exp: number;
iat: number;
expires_in: number;
jti: string;
[k: string]: string | number | string[];
};
/**
* Perform the authorization step of the authorization code grant flow
* @param {string} amBaseUrl access management base URL
* @param {string} data body form data
* @param {AxiosRequestConfig} config axios request config object
* @param {State} state library state
* @returns {Promise} a promise resolving to an object containing the authorization server response object
*/
export declare function authorize({ amBaseUrl, data, config, state, }: {
amBaseUrl: string;
data: string;
config: AxiosRequestConfig;
state: State;
}): Promise<AxiosResponse<any, any>>;
/**
* Perform access token request step of the authorization code grant flow
* @param {string} amBaseUrl access management base URL
* @param {string} data body form data
* @param {AxiosRequestConfig} config config axios request config object
* @param {State} state library state
* @returns {Promise<AccessTokenResponseType>} a promise resolving to an object containing the authorization server response object containing the access token
*/
export declare function accessToken({ amBaseUrl, postData, config, realm, state, }: {
amBaseUrl: string;
postData: any;
config: AxiosRequestConfig;
realm?: boolean;
state: State;
}): Promise<AccessTokenResponseType>;
/**
* Get token info
* @param {string} amBaseUrl access management base URL
* @param {AxiosRequestConfig} config config axios request config object
* @param {State} state library state
* @returns
*/
export declare function getTokenInfo({ amBaseUrl, config, state, }: {
amBaseUrl: string;
config: AxiosRequestConfig;
state: State;
}): Promise<TokenInfoResponseType>;
/**
* Perform client credentials grant flow
* @param {string} amBaseUrl access management base URL
* @param {string} clientId client id
* @param {string} clientSecret client secret
* @param {string} scope space-delimited scope list
* @param {State} state library state
* @returns {Promise} a promise resolving to an object containing the authorization server response object
*/
export declare function clientCredentialsGrant({ amBaseUrl, clientId, clientSecret, scope, state, }: {
amBaseUrl: string;
clientId: string;
clientSecret: string;
scope: string;
state: State;
}): Promise<AccessTokenResponseType>;
//# sourceMappingURL=OAuth2OIDCApi.d.ts.map