UNPKG

pdfjs-dist

Version:

Generic build of Mozilla's PDF.js library.

76 lines (75 loc) 2.41 kB
export type WaitOnEventOrTimeoutParameters = { /** * - The event target, can for example be: * `window`, `document`, a DOM element, or an {EventBus} instance. */ target: Object; /** * - The name of the event. */ name: string; /** * - The delay, in milliseconds, after which the * timeout occurs (if the event wasn't already dispatched). */ delay: number; }; /** * NOTE: Only used to support various PDF viewer tests in `mozilla-central`. */ export class AutomationEventBus extends EventBus { dispatch(eventName: any, data: any): void; } /** * Simple event bus for an application. Listeners are attached using the `on` * and `off` methods. To raise an event, the `dispatch` method shall be used. */ export class EventBus { /** * @param {string} eventName * @param {function} listener * @param {Object} [options] */ on(eventName: string, listener: Function, options?: Object | undefined): void; /** * @param {string} eventName * @param {function} listener * @param {Object} [options] */ off(eventName: string, listener: Function, options?: Object | undefined): void; /** * @param {string} eventName * @param {Object} data */ dispatch(eventName: string, data: Object): void; /** * @ignore */ _on(eventName: any, listener: any, options?: null): void; /** * @ignore */ _off(eventName: any, listener: any, options?: null): void; #private; } /** * @typedef {Object} WaitOnEventOrTimeoutParameters * @property {Object} target - The event target, can for example be: * `window`, `document`, a DOM element, or an {EventBus} instance. * @property {string} name - The name of the event. * @property {number} delay - The delay, in milliseconds, after which the * timeout occurs (if the event wasn't already dispatched). */ /** * Allows waiting for an event or a timeout, whichever occurs first. * Can be used to ensure that an action always occurs, even when an event * arrives late or not at all. * * @param {WaitOnEventOrTimeoutParameters} * @returns {Promise} A promise that is resolved with a {WaitOnType} value. */ export function waitOnEventOrTimeout({ target, name, delay }: WaitOnEventOrTimeoutParameters): Promise<any>; export namespace WaitOnType { let EVENT: string; let TIMEOUT: string; }