import React from "react";
export declare enum DeviceType {
    DESKTOP = "desktop",
    TABLET = "tablet",
    MOBILE = "mobile"
}
export declare const BREAKPOINTS: {
    readonly mobile: 768;
    readonly tablet: 1024;
    readonly desktop: 1200;
};
export interface DeviceInfo {
    type: DeviceType;
    isMobile: boolean;
    isTablet: boolean;
    isDesktop: boolean;
    screenWidth: number;
    screenHeight: number;
    orientation: "portrait" | "landscape";
    isTouchDevice: boolean;
    pixelRatio: number;
    userAgent: string;
}
interface DeviceDetectorContextType {
    deviceInfo: DeviceInfo;
    isLoading: boolean;
    forceRefresh: () => void;
}
export declare const useDeviceDetection: () => DeviceDetectorContextType;
export declare const useIsMobile: () => boolean;
interface DeviceDetectorProviderProps {
    children: React.ReactNode;
    debounceMs?: number;
    enableLogging?: boolean;
}
export declare const DeviceDetectorProvider: React.FC<DeviceDetectorProviderProps>;
interface DeviceConditionalProps {
    mobile?: React.ReactNode;
    tablet?: React.ReactNode;
    desktop?: React.ReactNode;
    fallback?: React.ReactNode;
}
export declare const DeviceConditional: React.FC<DeviceConditionalProps>;
export declare const DeviceDetectionDebug: React.FC;
export default DeviceDetectorProvider;
//# sourceMappingURL=device-detector.d.ts.map