@mollie/api-client
Version:
Official Mollie API client for Node
32 lines (31 loc) • 1.48 kB
TypeScript
import type NetworkClient from '../../communication/NetworkClient';
import type Token from '../../data/oauth/data';
import type Callback from '../../types/Callback';
import { type CreateParameters, type RevokeParameters } from './parameters';
export default class OAuthBinder {
protected readonly networkClient: NetworkClient;
protected readonly endpoint: string;
constructor(networkClient: NetworkClient, endpoint?: string);
/**
* Makes an OAuth API request with Basic authentication.
* OAuth token endpoints require application/x-www-form-urlencoded body encoding
* and Basic auth with client credentials (different from standard Mollie API).
*/
protected request<T>(method: string, basicAuthToken: string, data?: Partial<Record<string, string>>): Promise<T>;
/**
* Exchange the authorization code for an access token, or refresh an existing access token.
*
* @since 4.4.0
* @see https://docs.mollie.com/reference/oauth-generate-tokens
*/
create(parameters: CreateParameters): Promise<Token>;
create(parameters: CreateParameters, callback: Callback<Token>): void;
/**
* Revoke an access token or refresh token. Once revoked, the token can no longer be used.
*
* @since 4.4.0
* @see https://docs.mollie.com/reference/oauth-revoke-tokens
*/
revoke(parameters: RevokeParameters): Promise<true>;
revoke(parameters: RevokeParameters, callback: Callback<true>): void;
}