revbits-cip-integration
Version:
This package will integrate CIP with any product
25 lines (24 loc) • 978 B
TypeScript
import FormData from 'form-data';
import { CIP_OPTIONS, PLATFORM } from '../interfaces/types.type';
export declare abstract class BaseApi {
baseUrl: string;
options: CIP_OPTIONS;
platform: PLATFORM;
getJwt: () => string;
private api;
constructor(baseUrl: string, options: CIP_OPTIONS, platform: PLATFORM, getJwt: () => string);
protected updateJWT(jwtToken: string): void;
private request;
protected get<P, T>(url: string, params?: P): Promise<T>;
protected post<D, T>(url: string, data?: D): Promise<T>;
private getRequestData;
private resolveResponse;
protected sendApiRequest<T extends {
platform?: string | undefined;
}, U extends {
return_code: number;
}>(endpoint: string, requestData: T | undefined, errorMessage: string): Promise<U>;
protected sendFormDataApiRequest<U extends {
return_code: number;
}>(endpoint: string, formData: FormData, errorMessage: string): Promise<U>;
}