import type { z } from "zod"; export type VoyantFetcher = (url: string, init?: RequestInit) => Promise; export declare const defaultFetcher: VoyantFetcher; export declare class VoyantApiError extends Error { readonly status: number; readonly body: unknown; constructor(message: string, status: number, body: unknown); } export interface FetchWithValidationOptions { baseUrl: string; fetcher: VoyantFetcher; } export type QueryParamValue = string | number | boolean | null | undefined | Array; export declare function fetchWithValidation(path: string, schema: z.ZodType, options: FetchWithValidationOptions, init?: RequestInit): Promise; export declare function withQueryParams(path: string, query?: object): string;