uc-base-libraries
Version:
Typescript libraries for UC projects
35 lines (34 loc) • 1.31 kB
TypeScript
export interface IException {
message: string;
}
export declare class Task<TT> {
private func;
promise: Promise<TT>;
private resolveFunc;
constructor(func: (cback?: (val?: TT) => void) => void);
then: (onFulfilled: (value?: TT) => TT | PromiseLike<TT>) => Promise<TT>;
start: () => void;
}
export interface IDebouncedTask<TT> extends Task<TT> {
trigger: () => void;
call: () => void;
}
export declare class RecurringTask {
private callback;
private timeout;
private maxLockTime;
private _isRunning;
private refreshLock;
private timedCall;
constructor(callback: () => Promise<void>, timeout: number, maxLockTime?: number);
get isRunning(): boolean;
setTimeOut: (time: number) => void;
start: () => void;
stop: () => void;
}
export declare function runAfterWait(waitTimeMilliSeconds: number): IDebouncedTask<void>;
export declare function debounced(): IDebouncedTask<void>;
export declare function delay(msec: number): Promise<void>;
export declare function whenReady(): Promise<void>;
export declare function whenTrue(trueFunc: () => boolean, maxLockTime?: number): Promise<void>;
export declare function WhenAll<tRet>(list: Array<Promise<tRet>>, progressCB?: (numFinished: number, total: number) => void): Promise<Array<tRet>>;