export declare function isIPhone(): boolean | undefined; export declare function isMac(): boolean | undefined; export declare function isSafari(): boolean | undefined; export declare function isIPad(): boolean | undefined; export declare function isIOS(): boolean | undefined; export declare function testPlatform(re: RegExp): boolean | undefined; interface PreventScrollOptions { focusCallback?: () => void; /** Whether the scroll lock is disabled. */ isDisabled?: boolean; } export declare function isScrollable(node: Element): boolean; export declare function getScrollParent(node: Element): Element; /** * Prevents scrolling on the document body on mount, and * restores it on unmount. Also ensures that content does not * shift due to the scrollbars disappearing. */ export declare function usePreventScroll(options?: PreventScrollOptions): void; export declare function isInput(target: Element): boolean; /** * @deprecated Overlay components manage scroll locking automatically. * This registration hook remains only as a compatibility shim for custom class toggling. */ declare const registerHookForOverlayPreventScroll: ({ throttleKeyword, globalScrollTarget, }: { throttleKeyword: string; globalScrollTarget: HTMLElement | null; }) => void; /** * @deprecated Overlay components manage scroll locking automatically. */ declare const useOverlayPreventScroll: (view: boolean) => void; export { registerHookForOverlayPreventScroll, useOverlayPreventScroll }; //# sourceMappingURL=useOverlayPreventScroll.d.ts.map