@bookla-app/react-client-sdk
Version:
React SDK for Bookla Client API
32 lines (31 loc) • 1.16 kB
TypeScript
import { AuthTokens, EndpointConfig, RequestOptions, SDKConfig } from "../types/config";
import { InterceptorManager } from "./interceptors";
import { CancelToken } from "./cancel-token";
import { AuthState } from "../types/auth";
export declare class HttpClient {
private readonly baseURL;
private readonly apiKey;
private readonly timeout;
private retry;
private readonly debug;
private tokens;
interceptors: {
request: InterceptorManager;
response: InterceptorManager;
};
constructor(config: SDKConfig);
setTokens(tokens: AuthTokens): void;
isAuthenticated(): Promise<AuthState>;
clearAuth(): void;
private saveTokensToStorage;
private loadTokensFromStorage;
private validateAuth;
private request;
private getHeaders;
private refreshToken;
get<T>(endpoint: EndpointConfig, options?: RequestOptions): Promise<T>;
post<T>(endpoint: EndpointConfig, data?: any, options?: RequestOptions): Promise<T>;
delete<T>(endpoint: EndpointConfig, options?: RequestOptions): Promise<T>;
createCancelToken(): CancelToken;
isCancelledError(error: any): boolean;
}