import { type ReactNode } from "react"; import { type TextInputProps } from "react-native"; interface EscapeLayer { id: symbol; parent: EscapeLayer | null; active: boolean; dismiss: () => void; native: { mounted: boolean; active: boolean; parent: EscapeLayer | null; children: Set; order: number; dismiss: () => void; }; } /** The common subset of DOM keydown and React Native TextInput key events. */ interface EscapeEvent { key?: string; repeat?: boolean; defaultPrevented?: boolean; nativeEvent?: { key?: string; repeat?: boolean; defaultPrevented?: boolean; }; preventDefault?: () => void; } /** Preserve a TextInput editor's local Escape cancellation through Modal keyup. */ export declare function consumeEscapeKey(event: EscapeEvent): void; /** Preserve local editing decisions before bridging RNW's stopped input keys. */ export declare function useInputEscapeBridge(onKeyPress: TextInputProps["onKeyPress"]): NonNullable; /** Internal ownership hook for Canvas overlays; the public hook remains below. */ export declare function useEscapeLayer(active: boolean, onEscape: () => void): { layer: EscapeLayer; onAccessibilityEscape: () => void; onKeyPress(event: EscapeEvent): void; onRequestClose(): void; }; /** Place this provider inside the node passed to Portal/AnchoredOverlay/Modal. */ export declare function EscapeLayerProvider({ scope, children }: { scope: ReturnType; children: ReactNode; }): import("react").FunctionComponentElement>; export {}; //# sourceMappingURL=escape-layer.d.ts.map