import { adapter } from './adapter.ts'; type Fn = (opts: { url?: string; headers?: Record; body?: Record; [key: string]: any; timeout?: number; }) => Promise>; type QueryOpts = { url?: string; adapter?: typeof adapter; headers?: Record; timeout?: number; }; type Data = { path?: string; key?: string; [key: string]: any; }; type DataOpts = Partial & { beforeRequest?: Fn; }; export declare class Query { adapter: typeof adapter; url: string; beforeRequest?: Fn; headers?: Record; timeout?: number; constructor(opts: QueryOpts); get(params: Record & Data & T, options?: DataOpts): Promise; post(body: Record & Data & T, options?: DataOpts): Promise; before(fn: Fn): void; } export { adapter };