export interface FetchConfig { headers?: Record; } interface FetchOptions { options?: FetchConfig; clientKey: string; apiEndpoint: string; authorization?: string; } interface FetchReturnType { data: T; status: number; } export type PathVariables = Record; declare class Fetch { private axios; constructor({ options, clientKey, apiEndpoint, authorization }: FetchOptions); get(url: string): Promise>; post(url: string, body?: unknown): Promise>; put(url: string, body?: unknown): Promise>; patch(url: string, body: unknown, query?: Record): Promise>; delete(url: string): Promise>; /** * Updates the data by the provided path and value, variables can be used in the path * @example * // return Promise * fetch.granularPatch('/endpoint', 'vendors[$vendorID].skillID', 5678, { vendorID: "234" }) */ granularPatch(url: string, path: string, value?: T, pathVariables?: PathVariables): Promise>; setOptions({ headers }: FetchConfig): void; initWithOptions({ headers }: FetchConfig): Fetch; } export default Fetch; //# sourceMappingURL=fetch.d.ts.map