regular-listener
Version:
RegularListener is a listener that detects the value periodically.
40 lines (39 loc) • 1.56 kB
TypeScript
type hookOnTrigger = (value: unknown) => unknown | Promise<unknown>;
type hookOnError = (error: unknown) => unknown | Promise<unknown>;
type ReadTypeOfArray = 'array' | 'some' | 'every';
declare abstract class RegularListener {
private delay;
private intervalId;
private readTypeOfArray;
private isMessagePrinted;
private onTrigger;
private onError;
constructor();
constructor(onTrigger: hookOnTrigger);
protected abstract isTriggered(value: unknown): boolean;
protected abstract isTriggered(value: unknown, index: number): boolean;
protected abstract isTriggered(value: unknown, index: number, array: Array<unknown>): boolean;
private toString;
private run;
listenOnce(getValue: () => unknown): Promise<void>;
listen(getValue: () => unknown): Promise<void>;
stop(): void;
catch(onError: hookOnError): void;
setDelay(delay: number): void;
setReadTypeOfArray(readTypeOfArray: ReadTypeOfArray): void;
printMessage(): void;
hideMessage(): void;
}
export default RegularListener;
export declare class BooleanListener extends RegularListener {
protected isTriggered(value: unknown): boolean;
}
export declare class ValueExistedListener extends RegularListener {
protected isTriggered(value: unknown): boolean;
}
export declare class ValueUpdatedListener extends RegularListener {
private isValueInitialized;
private lastValue;
protected isTriggered(value: unknown, index?: number, array?: Array<unknown>): boolean;
setInitialValue(value: unknown): void;
}