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>; /** * 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} 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; /** * 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; /** * 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; //# sourceMappingURL=OAuth2OIDCApi.d.ts.map