export declare const isIOS: () => boolean; export declare const isIOSSafari: () => boolean; export declare const isIOSChrome: () => boolean; export declare const requestIOSMediaPermissions: () => Promise<{ video: boolean; audio: boolean; }>; export declare const checkIOSMediaPermissions: () => Promise<{ video: "granted" | "denied" | "prompt" | "unknown"; audio: "granted" | "denied" | "prompt" | "unknown"; }>; export declare const getIOSCameras: () => Promise; export declare const getCameraFacingMode: (track: MediaStreamTrack) => "user" | "environment" | "unknown"; export declare const createIOSVideoConstraints: (options: { facingMode?: "user" | "environment"; deviceId?: string; width?: number; height?: number; frameRate?: number; }) => MediaTrackConstraints; export declare const waitForIOSMediaStability: (ms?: number) => Promise; export declare const switchIOSCamera: (currentTrack: MediaStreamTrack | null, newConstraints: MediaTrackConstraints) => Promise; export declare const useIOSMediaPermissions: () => { isIOS: boolean; isIOSSafari: boolean; isIOSChrome: boolean; requestPermissions: () => Promise<{ video: boolean; audio: boolean; }>; checkPermissions: () => Promise<{ video: "granted" | "denied" | "prompt" | "unknown"; audio: "granted" | "denied" | "prompt" | "unknown"; }>; }; export declare const handleIOSMediaError: (error: any) => { type: "permission" | "not-found" | "constraint" | "unknown"; message: string; userMessage: string; };