import { WebSocket } from 'ws';
export type AnyString = string & NonNullable<unknown>;
/** Default production inference URL */
export declare const DEFAULT_INFERENCE_URL = "https://agent-gateway.livekit.cloud/v1";
/** Staging inference URL */
export declare const STAGING_INFERENCE_URL = "https://agent-gateway.staging.livekit.cloud/v1";
/** LiveKit Agent Gateway routing header names. */
export declare const INFERENCE_PROVIDER_HEADER = "X-LiveKit-Inference-Provider";
export declare const INFERENCE_PRIORITY_HEADER = "X-LiveKit-Inference-Priority";
/**
 * Get the default inference URL based on the environment.
 *
 * Priority:
 * 1. LIVEKIT_INFERENCE_URL if set
 * 2. If LIVEKIT_URL contains '.staging.livekit.cloud', use staging gateway
 * 3. Otherwise, use production gateway
 */
export declare function getDefaultInferenceUrl(): string;
export declare function createAccessToken(apiKey: string, apiSecret: string, ttl?: number): Promise<string>;
/**
 * Build metadata headers for inference requests.
 * Includes SDK version/platform, and optionally room/job/agent IDs from the current job context.
 * Includes X-LiveKit-Worker-Token when LIVEKIT_WORKER_TOKEN is set (hosted agents).
 * The job context's {@link JobContext.inferenceHeaders} are merged last and win.
 */
export declare function buildMetadataHeaders(): Record<string, string>;
export declare function connectWs(url: string, headers: Record<string, string>, timeoutMs: number): Promise<WebSocket>;
//# sourceMappingURL=utils.d.ts.map