UNPKG

polling-emitter

Version:
75 lines 1.93 kB
/** @module polling-emitter */ declare module "polling-emitter" { /** * @typedef Options * @type {Object} * @prop {number} [pollInterval=60000] * @prop {boolean} [invalidateInitialEntries=false] * @prop {boolean} [autostart=true] * @prop {Function} [getIdFromEntry=(entry) => entry.id] * @prop {Function} [processEntry] * @prop {Function} fetchEntries */ export type Options = { pollInterval?: number; invalidateInitialEntries?: boolean; autostart?: boolean; getIdFromEntry?: (...params: any[]) => any; processEntry?: (...params: any[]) => any; fetchEntries: (...params: any[]) => any; }; /** * @constructor * @param {Options} options */ export default class extends EventEmitter { constructor(options: Options); /** * @member {Options} * @readonly */ readonly options: Options; /** * @member {Set<string>} */ processedEntryIds: Set<string>; /** * @member {number} */ successfulRunsCount: number; /** * @member {boolean} */ isRunning: boolean; /** * @type {boolean} */ hasProcessEntryFunction: boolean; /** * @type {boolean} */ hasHandleErrorFunction: boolean; /** * @function * @fires PollingEmitter#newEntry */ start(): void; /** * @function * @param {Object} entry * @returns {boolean} */ hasAlreadyProcessedEntry(entry: any): boolean; /** * @function * @param {string} entryId * @returns {boolean} */ hasAlreadyProcessedEntryId(entryId: string): boolean; /** * @function */ stop(): void; } }