UNPKG

sussudio

Version:

An unofficial VS Code Internal API

31 lines (30 loc) 1.68 kB
/*--------------------------------------------------------------------------------------------- * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ import { GestureEvent } from "./touch.mjs"; import { Event as BaseEvent } from "../common/event.mjs"; import { IDisposable } from "../common/lifecycle.mjs"; export type EventHandler = HTMLElement | HTMLDocument | Window; export interface IDomEvent { <K extends keyof HTMLElementEventMap>(element: EventHandler, type: K, useCapture?: boolean): BaseEvent<HTMLElementEventMap[K]>; (element: EventHandler, type: string, useCapture?: boolean): BaseEvent<unknown>; } export interface DOMEventMap extends HTMLElementEventMap, DocumentEventMap, WindowEventMap { '-monaco-gesturetap': GestureEvent; '-monaco-gesturechange': GestureEvent; '-monaco-gesturestart': GestureEvent; '-monaco-gesturesend': GestureEvent; '-monaco-gesturecontextmenu': GestureEvent; 'compositionstart': CompositionEvent; 'compositionupdate': CompositionEvent; 'compositionend': CompositionEvent; } export declare class DomEmitter<K extends keyof DOMEventMap> implements IDisposable { private emitter; get event(): BaseEvent<DOMEventMap[K]>; constructor(element: Window & typeof globalThis, type: WindowEventMap, useCapture?: boolean); constructor(element: Document, type: DocumentEventMap, useCapture?: boolean); constructor(element: EventHandler, type: K, useCapture?: boolean); dispose(): void; }