UNPKG

@vansite/ts-sharetribe-flex-sdk

Version:

This is a TypeScript SDK for Sharetribe Flex API. It reduces the complexity of the API and provides a more user-friendly interface.

46 lines 1.71 kB
/** * @fileoverview Client for Sharetribe Authentication API (OAuth2) * * @see https://www.sharetribe.com/api-reference/authentication.html */ import type { AxiosResponse } from "axios"; import SharetribeSdk from "../../sdk"; import IntegrationSdk from "../../integrationSdk"; import { AuthWithIdpParameter, RevokeResponse, TokenDetails, TokenRequest, TokenResponse, UserTokenRequest } from "../../types"; /** * Encodes object as application/x-www-form-urlencoded */ export declare const urlEncodeFormData: (obj: Record<string, any> | null) => string; declare class AuthenticationApi { private readonly axios; private readonly endpoint; private readonly headers; constructor(sdk: SharetribeSdk | IntegrationSdk); /** * Request a token using any supported OAuth2 grant * * @template T - Token request type * @param {T} params - OAuth2 token request parameters * @returns {Promise<AxiosResponse<TokenResponse<T>>>} */ token<T extends TokenRequest>(params: T): Promise<AxiosResponse<TokenResponse<T>>>; /** * Authenticate via external Identity Provider * * @param {AuthWithIdpParameter} params * @returns {Promise<AxiosResponse<TokenResponse<UserTokenRequest>>>} */ authWithIdp(params: AuthWithIdpParameter): Promise<AxiosResponse<TokenResponse<UserTokenRequest>>>; /** * Revoke a refresh token * * @param {string} token - Refresh token to revoke */ revoke(token: string): Promise<AxiosResponse<RevokeResponse>>; /** * Introspect current access token */ details(): Promise<AxiosResponse<TokenDetails>>; } export default AuthenticationApi; //# sourceMappingURL=index.d.ts.map