import type { QuerySerializer, QuerySerializerOptions } from '../core/bodySerializer'; import type { Client, ClientOptions, Config, RequestOptions } from './types'; export declare const createQuerySerializer: ({ allowReserved, array, object, }?: QuerySerializerOptions) => (queryParams: T) => string; /** * Infers parseAs value from provided Content-Type header. */ export declare const getParseAs: (contentType: string | null) => Exclude; export declare const setAuthParams: ({ security, ...options }: Pick, "security"> & Pick & { headers: Headers; }) => Promise; export declare const buildUrl: Client['buildUrl']; export declare const getUrl: ({ baseUrl, path, query, querySerializer, url: _url, }: { baseUrl?: string; path?: Record; query?: Record; querySerializer: QuerySerializer; url: string; }) => string; export declare const mergeConfigs: (a: Config, b: Config) => Config; export declare const mergeHeaders: (...headers: Array["headers"] | undefined>) => Headers; type ErrInterceptor = (error: Err, response: Res, request: Req, options: Options) => Err | Promise; type ReqInterceptor = (request: Req, options: Options) => Req | Promise; type ResInterceptor = (response: Res, request: Req, options: Options) => Res | Promise; declare class Interceptors { _fns: (Interceptor | null)[]; constructor(); clear(): void; getInterceptorIndex(id: number | Interceptor): number; exists(id: number | Interceptor): boolean; eject(id: number | Interceptor): void; update(id: number | Interceptor, fn: Interceptor): number | false | Interceptor; use(fn: Interceptor): number; } export interface Middleware { error: Pick>, 'eject' | 'use'>; request: Pick>, 'eject' | 'use'>; response: Pick>, 'eject' | 'use'>; } export declare const createInterceptors: () => { error: Interceptors>; request: Interceptors>; response: Interceptors>; }; export declare const createConfig: (override?: Config & T>) => Config & T>; export {}; //# sourceMappingURL=utils.d.ts.map