@hapic/oauth2
Version:
A oauth2 api client based on axios.
23 lines (22 loc) • 2.03 kB
TypeScript
import type { RequestTransformer } from 'hapic';
import type { JwtPayload } from '../../type';
import { BaseAPI } from '../base';
import type { ClientAuthenticationParameters, TokenAuthorizationCodeGrantParameters, TokenBaseOptions, TokenClientCredentialsGrantParameters, TokenGrantParameters, TokenGrantResponse, TokenIntrospectParameters, TokenPasswordGrantParameters, TokenRefreshTokenGrantParameters, TokenRevokeParameters, TokenRobotCredentialsGrantParameters } from './type';
export declare class TokenAPI extends BaseAPI {
createWithRefreshToken(parameters: Omit<TokenRefreshTokenGrantParameters, 'grant_type'>, options?: TokenBaseOptions): Promise<TokenGrantResponse>;
createWithClientCredentials(parameters?: Omit<TokenClientCredentialsGrantParameters, 'grant_type'>, options?: TokenBaseOptions): Promise<TokenGrantResponse>;
createWithPassword(parameters: Omit<TokenPasswordGrantParameters, 'grant_type'>, options?: TokenBaseOptions): Promise<TokenGrantResponse>;
createWithAuthorizationCode(parameters: Omit<TokenAuthorizationCodeGrantParameters, 'grant_type'>, options?: TokenBaseOptions): Promise<TokenGrantResponse>;
createWithRobotCredentials(parameters: Omit<TokenRobotCredentialsGrantParameters, 'grant_type'>, options?: TokenBaseOptions): Promise<TokenGrantResponse>;
/**
* @throws Error
* @param parameters
* @param options
*/
create(parameters: TokenGrantParameters, options?: TokenBaseOptions): Promise<TokenGrantResponse>;
revoke(parameters?: TokenRevokeParameters, options?: TokenBaseOptions): Promise<import("hapic").Response<any>>;
introspect<T extends JwtPayload>(parameters?: TokenIntrospectParameters, options?: TokenBaseOptions): Promise<T>;
protected buildRequestTransformers(parameters: ClientAuthenticationParameters, options?: TokenBaseOptions): RequestTransformer[];
extendCreateParameters(parameters: TokenGrantParameters): TokenGrantParameters;
protected buildURLSearchParams(input: Record<string, any>): URLSearchParams;
}