import type { AxiosInstance } from 'axios'; export interface SendCallRequest { name: string; sip: { to_number: string; from_number: string; rtc_uid: string; rtc_token: string; }; properties: { channel: string; token: string; agent_rtc_uid: string; remote_rtc_uids: string[]; idle_timeout?: number; llm?: Record; tts?: Record; asr?: Record; }; } export interface SendCallResponse { agent_id: string; } export interface CallStatusResponse { agent_id: string; status: string; start_ts: number; stop_ts?: number; channel?: string; message?: string; } export declare class CallAPI { private readonly client; constructor(client: AxiosInstance); /** Initiate an outbound phone call via SIP. */ send(req: SendCallRequest): Promise; /** Get the current status of a call (reuses agent status endpoint). */ status(agentId: string): Promise; /** Hang up an active call (reuses agent leave endpoint). */ hangup(agentId: string): Promise; /** List calls (reuses agent list, caller can filter). */ list(params?: { limit?: number; state?: number; }): Promise<{ data: { list: CallStatusResponse[]; }; }>; }