import { ok } from "../"; export declare type RequestOpts = { baseUrl?: string; fetch?: typeof fetch; formDataConstructor?: new () => FormData; headers?: Record; } & Omit; declare type FetchRequestOpts = RequestOpts & { body?: string | FormData; }; declare type JsonRequestOpts = RequestOpts & { body?: object; }; export declare type ApiResponse = { status: number; data?: any; }; declare type MultipartRequestOpts = RequestOpts & { body?: Record; }; export declare function runtime(defaults: RequestOpts): { ok: typeof ok; fetchText: (url: string, req?: FetchRequestOpts | undefined) => Promise<{ status: number; contentType: string | null; data: string | undefined; }>; fetchJson: (url: string, req?: FetchRequestOpts) => Promise; fetchBlob: (url: string, req?: FetchRequestOpts) => Promise; json({ body, headers, ...req }: JsonRequestOpts): { headers: { "Content-Type": string; }; body?: string | undefined; baseUrl?: string | undefined; fetch?: typeof fetch | undefined; formDataConstructor?: (new () => FormData) | undefined; cache?: RequestCache | undefined; credentials?: RequestCredentials | undefined; integrity?: string | undefined; keepalive?: boolean | undefined; method?: string | undefined; mode?: RequestMode | undefined; redirect?: RequestRedirect | undefined; referrer?: string | undefined; referrerPolicy?: ReferrerPolicy | undefined; signal?: AbortSignal | null | undefined; window?: null | undefined; }; form({ body, headers, ...req }: JsonRequestOpts): { headers: { "Content-Type": string; }; body?: string | undefined; baseUrl?: string | undefined; fetch?: typeof fetch | undefined; formDataConstructor?: (new () => FormData) | undefined; cache?: RequestCache | undefined; credentials?: RequestCredentials | undefined; integrity?: string | undefined; keepalive?: boolean | undefined; method?: string | undefined; mode?: RequestMode | undefined; redirect?: RequestRedirect | undefined; referrer?: string | undefined; referrerPolicy?: ReferrerPolicy | undefined; signal?: AbortSignal | null | undefined; window?: null | undefined; }; multipart({ body, ...req }: MultipartRequestOpts): { baseUrl?: string | undefined; fetch?: typeof fetch | undefined; formDataConstructor?: (new () => FormData) | undefined; headers?: Record | undefined; cache?: RequestCache | undefined; credentials?: RequestCredentials | undefined; integrity?: string | undefined; keepalive?: boolean | undefined; method?: string | undefined; mode?: RequestMode | undefined; redirect?: RequestRedirect | undefined; referrer?: string | undefined; referrerPolicy?: ReferrerPolicy | undefined; signal?: AbortSignal | null | undefined; window?: null | undefined; } | { body: FormData; baseUrl?: string | undefined; fetch?: typeof fetch | undefined; formDataConstructor?: (new () => FormData) | undefined; headers?: Record | undefined; cache?: RequestCache | undefined; credentials?: RequestCredentials | undefined; integrity?: string | undefined; keepalive?: boolean | undefined; method?: string | undefined; mode?: RequestMode | undefined; redirect?: RequestRedirect | undefined; referrer?: string | undefined; referrerPolicy?: ReferrerPolicy | undefined; signal?: AbortSignal | null | undefined; window?: null | undefined; }; }; export {};