import type { CallEvent } from "../ExpoVicallCallManager.types"; import { NATIVE_CALL_BOOTSTRAP_ORDER, createNativeCallBootstrapOrder, type NativeCallBootstrapStep } from "./bootstrap-order"; export { NATIVE_CALL_BOOTSTRAP_ORDER, createNativeCallBootstrapOrder }; export type { NativeCallBootstrapStep }; export type NativeCallEventHandler = (event: CallEvent) => void | Promise; export interface InitializeNativeCallsOptions { /** * Invoked for every buffered event and every live event after subscription. * Keep this handler idempotent for `callId` + `type` when possible. */ onEvent: NativeCallEventHandler; /** * When false, skips `CallManager.setup()`. Default true. * Useful in tests or when setup already ran at app launch. */ setup?: boolean; } export interface NativeCallSubscription { remove(): void; } /** * Initializes native call integration for a React Native application. * * Recommended call site: root layout / app bootstrap, once per process. * * Order is fixed by {@link NATIVE_CALL_BOOTSTRAP_ORDER}: * setup → addListener → getInitialEvents → handleInitialEvents → clearInitialEvents. */ export declare function initializeNativeCalls(options: InitializeNativeCallsOptions | NativeCallEventHandler): Promise; //# sourceMappingURL=initialize-native-calls.d.ts.map