/// import { JSONObject, JSONValue } from '@expo/json-file'; import { AxiosRequestConfig } from 'axios'; import FormData from 'form-data'; export declare class TurtleApiError extends Error { readonly name = "TurtleApiError"; code: string; details?: JSONValue; serverStack?: string; readonly _isApiError = true; constructor(message: string, code?: string); } declare type RequestOptions = { httpMethod: 'get' | 'post' | 'put' | 'delete'; queryParameters?: QueryParameters; body?: JSONObject; }; declare type QueryParameters = { [key: string]: string | number | boolean | null | undefined; }; declare type TurtleApiClientOptions = { sessionSecret: string; }; export default class TurtleApiClient { sessionSecret: string; static clientForUser(sessionSecret: string): TurtleApiClient; constructor(options: TurtleApiClientOptions); getAsync(methodName: string, args?: QueryParameters, extraOptions?: Partial): Promise; postAsync(methodName: string, data?: any, extraOptions?: Partial): Promise; putAsync(methodName: string, data: JSONObject, extraOptions?: Partial): Promise; deleteAsync(methodName: string, extraOptions?: Partial): Promise; _requestAsync(methodName: string, options: RequestOptions, extraRequestOptions?: Partial): Promise; uploadFile(tarPath: string): Promise; handleRequest(reqOptions: AxiosRequestConfig): Promise; convertFormDataToBuffer(formData: FormData): Promise<{ data: Buffer; }>; } export {};