@exadel/esl
Version:
Exadel Smart Library (ESL) is the lightweight custom elements library that provide a set of super-flexible components
21 lines (20 loc) • 976 B
TypeScript
/** Key to store listeners on the {@link SyntheticEventTarget} instance*/
declare const LISTENERS: unique symbol;
/**
* Synthetic implementation of EventTarget
* Replicates behavior of native event
* Doesn't give explicit access to callback storage
*/
export declare class SyntheticEventTarget implements EventTarget {
static DEFAULT_EVENT: string;
private readonly [LISTENERS];
protected getEventListeners(): EventListenerOrEventListenerObject[];
protected getEventListeners(type: string): EventListenerOrEventListenerObject[];
hasEventListener(type?: string): boolean;
addEventListener(callback: EventListenerOrEventListenerObject): void;
addEventListener(type: string, callback: EventListenerOrEventListenerObject): void;
removeEventListener(callback: EventListenerOrEventListenerObject): void;
removeEventListener(type: string, callback: EventListenerOrEventListenerObject): void;
dispatchEvent(e: Event): boolean;
}
export {};