import { AxiosResponse, AxiosError } from 'axios';
interface GetTokenRequestParams {
    code: string;
    clientId: string;
    scope: string;
    redirectUri: string;
}
export interface GetTokenResponse {
    token_type: string;
    access_token: string;
}
interface GetTokenError {
    code: string;
}
export interface GetTokenErrorResponse extends AxiosError {
    response: AxiosResponse<GetTokenError>;
}
export declare const getToken: ({ code, clientId, scope, redirectUri, }: GetTokenRequestParams) => Promise<{
    tokenType: string;
    accessToken: string;
}>;
interface RevokeRequestParams {
    clientId: string;
    token: string;
}
export declare const revokeToken: ({ clientId, token }: RevokeRequestParams) => Promise<void>;
interface IntrospectRequestParams {
    clientId: string;
    accessToken: string;
}
export interface IntrospectionResponse extends AxiosResponse {
    data: {
        encompass_instance_id: string;
        user_name: string;
        bearer_token: string;
        user_key: string;
    };
}
export declare const introspectToken: ({ clientId, accessToken, }: IntrospectRequestParams) => Promise<{
    encompass_instance_id: string;
    user_name: string;
    bearer_token: string;
    user_key: string;
}>;
export {};
