interface RequestConfig { headers?: Record; timeout?: number; responseType?: XMLHttpRequestResponseType; } export interface ApiResponse { meta: { requestId: string; httpStatus: number; errorCode?: string; message?: string; }; result: Record; } /** * API utility class for making HTTP requests using XMLHttpRequest */ export declare class API { baseUrl: any; defaultHeaders: Record; defaultTimeout: number; useCookie: boolean; sessionKey: string | undefined; constructor(payload?: { baseUrl?: string; defaultHeaders?: Record; defaultTimeout?: number; useCookie?: boolean; sessionKey?: string; }); setUseCookie(value: boolean): void; get(endpoint: string, config?: RequestConfig): Promise; post(endpoint: string, payload?: Record, config?: RequestConfig): Promise; put(endpoint: string, payload?: Record, config?: RequestConfig): Promise; delete(endpoint: string, payload?: Record, config?: RequestConfig): Promise; patch(endpoint: string, payload?: Record, config?: RequestConfig): Promise; request(method: string, endpoint: string, data?: any, config?: RequestConfig): Promise; /** * Build the full URL by combining baseUrl and endpoint */ buildUrl(endpoint: string): string; /** * Prepare data by response type */ getResponseData(xhr: XMLHttpRequest, headers: Record): ApiResponse; } export declare const CheckoutAPI: API; export declare const CardAPI: API; export {};