@selfage/once
Version:
Calling functions only once.
21 lines (20 loc) • 531 B
TypeScript
type Arr = readonly unknown[];
export declare class OnceCaller<T extends Arr, R> {
private func;
private altFunc?;
call: (...args: T) => R;
private result;
constructor(func: (...args: T) => R, altFunc?: (...args: T) => R);
private callFirstTime;
private callNoop;
reset(): void;
}
export declare class OnceOrErrorCaller<T extends Arr, R> {
private func;
private onceCaller;
constructor(func: (...args: T) => R);
call(...args: T): R;
private fail;
reset(): void;
}
export {};