x-api-sdk-ts
Version:
TypeScript Library for the X (ex-twitter) API V2
29 lines (28 loc) • 1.08 kB
TypeScript
import { IHttpAdapter } from 'src/interfaces/IHttpAdapter';
import { AbstractOAuth2Auth, IOAuth2Config, IOAuth2Token } from '../interfaces/auth/IOAuth2Auth';
import { NullablePartial } from '../types/x-api/shared';
export declare class OAuth2Auth extends AbstractOAuth2Auth {
private clientId;
private clientSecret?;
private redirectUri?;
private state;
private codeVerifier;
private scopes;
private accessToken;
private refreshToken;
private tokenExpiresAt;
constructor(config: IOAuth2Config, httpAdapter: IHttpAdapter);
setToken(token: IOAuth2Token): this;
getToken(): NullablePartial<IOAuth2Token>;
generateAuthorizeUrl(codeChallenge?: string | null, codeChallengeMethod?: 'S256' | 'plain'): string;
exchangeAuthCodeForToken(code: string): Promise<this>;
getHeaders(): Promise<{
Authorization: string;
}>;
refreshAccessToken(): Promise<this>;
isTokenExpired(): boolean;
private base64urlEncode;
private generateCodeVerifier;
private generateCodeChallenge;
private generateState;
}