import { RequestOptions } from '../http/RequestOptions'; import { FetchOptions } from '../types/Gateway'; import { RequestProvider } from '../http/RequestProvider'; import { Store } from '../types/Cache'; import { Uri } from '../types/Uri'; import { HttpVerb } from '../http/HttpVerb'; import { Request } from '../http/Request'; import { Response } from '../http/Response'; export type RouteOptions = RequestOptions | FetchOptions; export declare class Api { readonly provider: RequestProvider; protected store?: Store | undefined; constructor(provider?: RequestProvider, store?: Store | undefined); get(uri: Uri, options?: RouteOptions, transform?: (r: any) => any, transformError?: (r: any) => any): Promise; post(uri: Uri, body?: unknown, options?: RouteOptions, transform?: (r: any) => any, transformError?: (r: any) => any): Promise; put(uri: Uri, body?: unknown, options?: RouteOptions, transform?: (r: any) => any, transformError?: (r: any) => any): Promise; patch(uri: Uri, body?: unknown, options?: RouteOptions, transform?: (r: any) => any, transformError?: (r: any) => any): Promise; delete(uri: Uri, options?: RouteOptions, transform?: (b: any) => any, transformError?: (r: any) => any): Promise; options(verb: HttpVerb, options?: RouteOptions): RequestOptions; execute(req: Request): Promise; } export declare const api: Api;