import { DOMRefValue, FocusableRef, FocusableRefValue } from '@react-types/shared'; import { Ref, RefObject, MutableRefObject } from 'react'; export declare function canUseDOM(): boolean; export declare const isBrowser: boolean; declare function getUserAgentBrowser(navigator: Navigator): "Chrome for iOS" | "Edge" | "Silk" | "Chrome" | "Firefox" | "AOSP" | "IE" | "Safari" | "WebKit" | null; export declare type UserAgentBrowser = NonNullable>; declare function getUserAgentOS(navigator: Navigator): "Android" | "iOS" | "Windows" | "Mac" | "Chrome OS" | "Firefox OS" | null; export declare type UserAgentOS = NonNullable>; export declare function detectDeviceType(navigator: Navigator): "tablet" | "phone" | "desktop"; export declare type UserAgentDeviceType = NonNullable>; export declare function detectOS(os: UserAgentOS): boolean; export declare function detectBrowser(browser: UserAgentBrowser): boolean; export declare function detectTouch(): boolean; export declare function createDOMRef(ref: RefObject): DOMRefValue; export declare function createFocusableRef(domRef: RefObject, focusableRef?: RefObject): FocusableRefValue; export declare function useDOMRef(ref: RefObject | Ref): RefObject; export declare function useFocusableRef(ref: FocusableRef, focusableRef?: RefObject): RefObject; export interface ContextValue { ref?: MutableRefObject; } export declare function useSyncRef(context: ContextValue, ref: RefObject): void; export {};