import type { Ref } from 'vue'; /** * The Return type of the composable returned by `createUseDevice`. * * @public */ export type UseDeviceReturn = { orientation: Ref<'landscape' | 'portrait' | undefined>; isTouchable: Ref; deviceName: Ref; } & UseDeviceFlags; /** * The device flags type of the Return type of the composable returned by `createUseDevice`. * * @public */ export type UseDeviceFlags = Record<`is${Capitalize}`, Ref> & Record<`is${Capitalize}OrGreater`, Ref> & Record<`is${Capitalize}OrLess`, Ref>; /** * Factory function that creates a composable for device detection using the devices parameter * to configure breakpoints. * * @param devices - An object containing the breakpoints, where the key is the name of the device * and the value is the screen width. * @returns A composable which provides multiple reactive flags and values for detecting the * current device. The flags names depends on the names passed in the `devices` parameter. * @remarks The `orientation` only works for orientation-sensor devices (mobile, tablet, etc). If * in a desktop, the height of the window is larger than the width, the orientation will be * `landscape`. * * @example * ´´´typescript * const useDevice = createUseDevice(\{ mobile: 0, tablet: 744, desktop: 1024 \}); * const \{ * isMobile, * isMobileOrLess, * isMobileOrGreater, * isTablet, * isTabletOrLess, * isTabletOrGreater, * isDesktop, * isDesktopOrLess, * isDesktopOrGreater, * deviceName, * orientation, * istTouchable * \} = useDevice(); * * @public */ export declare function createUseDevice(devices: Record): () => UseDeviceReturn; //# sourceMappingURL=create-use-device.d.ts.map