UNPKG

mock-xmlhttprequest

Version:
69 lines (67 loc) 3.09 kB
/** * mock-xmlhttprequest v8.4.1 * (c) 2025 Bertrand Guay-Paquet * @license MIT */ /** * Implementation of XMLHttpRequestEventTarget. A target for dispatching events. * * See https://xhr.spec.whatwg.org/#xmlhttprequesteventtarget */ export default class XhrEventTarget implements XMLHttpRequestEventTarget { private _eventContext; private _listeners; constructor(eventContext?: XMLHttpRequestEventTarget); get onabort(): EventHandlerProperty | null; set onabort(value: EventHandlerProperty | null); get onerror(): EventHandlerProperty | null; set onerror(value: EventHandlerProperty | null); get onload(): EventHandlerProperty | null; set onload(value: EventHandlerProperty | null); get onloadend(): EventHandlerProperty | null; set onloadend(value: EventHandlerProperty | null); get onloadstart(): EventHandlerProperty | null; set onloadstart(value: EventHandlerProperty | null); get onprogress(): EventHandlerProperty | null; set onprogress(value: EventHandlerProperty | null); get ontimeout(): EventHandlerProperty | null; set ontimeout(value: EventHandlerProperty | null); /** * @returns Whether any event listener is registered */ hasListeners(): boolean; /** * Add an event listener. * See https://dom.spec.whatwg.org/#dom-eventtarget-addeventlistener * * @param type Event type ('load', 'abort', etc) * @param listener Listener callback * @param options Options object or the useCapture flag */ addEventListener<K extends keyof XMLHttpRequestEventTargetEventMap>(type: K, listener: (this: XMLHttpRequestEventTarget, ev: XMLHttpRequestEventTargetEventMap[K]) => unknown, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; /** * Remove an event listener. * See https://dom.spec.whatwg.org/#dom-eventtarget-removeeventlistener * * @param type Event type ('load', 'abort', etc) * @param listener Listener callback * @param options Options object or the useCapture flag */ removeEventListener<K extends keyof XMLHttpRequestEventTargetEventMap>(type: K, listener: (this: XMLHttpRequestEventTarget, ev: XMLHttpRequestEventTargetEventMap[K]) => unknown, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; /** * Calls all the listeners for the event. * * @param event Event * @returns Always true since none of the xhr event are cancelable */ dispatchEvent(event: Event | EventMock): boolean; protected _getEventHandlerProperty(event: string): EventHandlerProperty | null; protected _setEventHandlerProperty(event: string, value?: EventHandlerProperty | null): void; } interface EventMock { type: string; } type EventHandlerProperty = ((this: XMLHttpRequest, ev: ProgressEvent) => unknown); export {};