import type Fetch from '../fetch.js'; type Clazz = Options extends undefined ? new (fetch: Fetch) => Client : new (fetch: Fetch, options: Options) => Client; interface BaseFetcherOptions { fetch: Fetch; clazz: Clazz; endpoint: string; } export type FetcherOptions = Options extends undefined ? BaseFetcherOptions & { clazzOptions?: never; } : BaseFetcherOptions & { clazzOptions: Options; }; declare class Fetcher { private readonly clazz; private readonly clazzOptions; private readonly _endpoint; protected get endpoint(): string; protected readonly fetch: Fetch; constructor({ fetch, clazz, endpoint, clazzOptions }: FetcherOptions); options(options: Parameters[0]): Client; } export default Fetcher; //# sourceMappingURL=fetcher.d.ts.map