export interface EventDef { /** The event name (e.g. `"click"`) */ name: string; /** The event type (e.g. `"MouseEvent"`) */ type: string; /** The options parameter type from the owning `addEventListener` overload */ options: string; /** JSDoc comment for the event entry, if any */ doc?: string; } export interface Target { /** The interface name (e.g. `"HTMLElement"`) */ name: string; /** JSDoc comment for the target interface, if any */ doc?: string; } export interface EventMapEntry { /** The event map interface name (e.g. `"HTMLElementEventMap"`) */ map: string; /** JSDoc comment for the event map interface, if any */ doc?: string; /** Interfaces whose `addEventListener` is keyed by this map */ targets: Target[]; /** Events available on the map (including inherited) */ events: EventDef[]; /** The options parameter type from the owning `addEventListener` overload */ options: string; /** Direct parent event maps via `extends` */ extends: string[]; /** Full transitive extend chain (parents, grandparents, ...) */ chain: string[]; } export interface ExtractOptions { typescriptPath?: string; /** Tiebreaker order for entries at the same hierarchy depth */ hierarchyOrder?: string[]; /** * Target interface names to exclude from the results entirely. * Defaults to {@link defaultSkipTargets}. */ skipTargets?: string[]; /** * Drop subclass targets when an ancestor interface is also a target of the * same event map (e.g. collapses every `HTMLDivElement`/`HTMLSpanElement` * etc. into the single `HTMLElement` branch). Defaults to `true`. */ collapseSubclasses?: boolean; } /** * Mixin-style interfaces that pollute the conditional cascade because their * structural shape overlaps with other targets and they aren't real runtime * objects. Their events are still reachable via concrete subclasses (e.g. * `HTMLElement` inherits all `GlobalEventHandlersEventMap` events). */ export declare const defaultSkipTargets: string[]; /** Extract the event maps from the lib.dom.d.ts file */ export declare const extractEventMaps: (options?: ExtractOptions) => EventMapEntry[]; //# sourceMappingURL=index.d.ts.map