import type { EventHandlerMap, EventListener, EventTarget } from '../../dom'; import type { MediaQueryListEvent } from './media-query-list-event'; /** @spec https://drafts.csswg.org/cssom-view-1/#mediaquerylist */ export interface MediaQueryList extends MediaQueryList.Interface {} export namespace MediaQueryList { export interface EventTypes { change: MediaQueryListEvent; } export interface Prototype extends EventTarget.Prototype, EventHandlerMap { readonly media: string; readonly matches: boolean; addListener(callback: EventListener | null): void; removeListener(callback: EventListener | null): void; } export type Interface = Prototype & EventTarget.Interface; export interface Static extends EventTarget.Static { prototype: Prototype; } export interface Constructor extends Static { /** @abstract */ new(): never; } }