export interface MediaQueryTypes { all?: boolean; grid?: boolean; aural?: boolean; braille?: boolean; handheld?: boolean; print?: boolean; projection?: boolean; screen?: boolean; tty?: boolean; tv?: boolean; embossed?: boolean; } export type MediaQueryType = keyof MediaQueryTypes; export interface MediaQueryMatchers { aspectRatio?: string; deviceAspectRatio?: string; height?: number | string; deviceHeight?: number | string; width?: number | string; deviceWidth?: number | string; color?: boolean; colorIndex?: boolean; monochrome?: boolean; resolution?: number | string; orientation?: 'portrait' | 'landscape'; scan?: 'progressive' | 'interlace'; type?: MediaQueryType; } export interface MediaQueryFeatures extends MediaQueryMatchers { minAspectRatio?: string; maxAspectRatio?: string; minDeviceAspectRatio?: string; maxDeviceAspectRatio?: string; minHeight?: number | string; maxHeight?: number | string; minDeviceHeight?: number | string; maxDeviceHeight?: number | string; minWidth?: number | string; maxWidth?: number | string; minDeviceWidth?: number | string; maxDeviceWidth?: number | string; minColor?: number; maxColor?: number; minColorIndex?: number; maxColorIndex?: number; minMonochrome?: number; maxMonochrome?: number; minResolution?: number | string; maxResolution?: number | string; } export interface MediaQueryAllQueryable extends MediaQueryFeatures, MediaQueryTypes { }