/** * @fileoverview Client configuration types. * @module meteo-lt-sdk/client/config */ /** * Configuration options for the Meteo.lt client. */ export interface MeteoClientConfig { /** * Base URL for the API. * @default 'https://api.meteo.lt/v1/' */ readonly baseUrl?: string; /** * Request timeout in milliseconds. * @default 30000 */ readonly timeout?: number; /** * Custom fetch implementation. * Useful for testing or custom environments. * @default globalThis.fetch */ readonly fetch?: typeof globalThis.fetch; /** * Custom headers to include in all requests. */ readonly headers?: Readonly>; /** * Enable automatic rate limiting. * When true, requests are queued to stay under the API limit (180 req/min). * Uses a global rate limiter shared across all MeteoClient instances. * @default false */ readonly throttle?: boolean; } /** * Resolved configuration with all defaults applied. */ export interface ResolvedMeteoClientConfig { readonly baseUrl: string; readonly timeout: number; readonly fetch: typeof globalThis.fetch; readonly headers: Readonly>; readonly throttle: boolean; } /** * Default configuration values. */ export declare const DEFAULT_CONFIG: ResolvedMeteoClientConfig; /** * Resolves partial config with defaults. * @param config - Partial configuration * @returns Fully resolved configuration */ export declare function resolveConfig(config?: MeteoClientConfig): ResolvedMeteoClientConfig; //# sourceMappingURL=config.d.ts.map