import type { CallEndReason, IncomingCall, OutgoingCall } from "../ExpoVicallCallManager.types"; import { type CreateCallEventRouterOptions } from "./call-event-router"; /** * Imperative helpers for app/service code that needs to drive native call UI * without re-learning platform differences. */ export declare const NativeCallController: { readonly setup: () => Promise; readonly displayIncomingCall: (call: IncomingCall) => Promise; readonly startCall: (call: OutgoingCall) => Promise; readonly answerCall: (callId: string) => Promise; readonly endCall: (callId: string) => Promise; readonly endAllCalls: () => Promise; readonly setMuted: (callId: string, muted: boolean) => Promise; readonly setHeld: (callId: string, held: boolean) => Promise; readonly setCallActive: (callId: string) => Promise; readonly reportOutgoingCallConnecting: (callId: string) => Promise; readonly reportOutgoingCallConnected: (callId: string) => Promise; readonly reportCallEnded: (callId: string, reason: CallEndReason) => Promise; readonly updateCallDisplay: (callId: string, displayName: string, handle?: string | null, hasVideo?: boolean | null) => Promise; readonly getCalls: () => Promise; readonly getVoipPushToken: () => Promise; readonly canUseFullScreenIntent: () => Promise; readonly openFullScreenIntentSettings: () => Promise; }; /** * RN-host convenience wrapper around {@link createCallEventRouter} that defaults * `setCallActive` to the native module. */ export declare function createNativeCallEventRouter(options: Omit & { setCallActive?: CreateCallEventRouterOptions["setCallActive"]; }): (event: import("..").CallEvent) => Promise; //# sourceMappingURL=native-call-controller.d.ts.map