UNPKG

@hyext/utils

Version:

A tools lib for huya miniapp business development

27 lines (26 loc) 1.36 kB
export declare type PromisfyFn<T, U> = (...args: Array<T>) => Promise<U>; declare type PromisfyFnWithCatchOptions = { executePromiseFn: PromisfyFn<any, any>; onPending?: (callArgs: Array<any>, callId: number) => void; onResolve?: (response: any, callId: number) => void; onReject?: (error: Error, callId: number) => Error | void; }; export declare const createPromisfyFnWithCatch: (options: PromisfyFnWithCatchOptions) => (...args: any) => Promise<any>; declare type NormalFn = (...args: Array<any>) => any; export declare const once: (fn: NormalFn) => (...arg: Array<any>) => any; export declare const throttle: (delay: number, fn: NormalFn) => (...args: Array<any>) => void; declare type PollingOptions = { intervalTime: number; fn: (...args: Array<any>) => Promise<boolean> | boolean; immediately?: boolean; onEnd?: NormalFn; }; export declare const createPolling: (options: PollingOptions) => (...args: Array<any>) => () => void; declare type MemoryFn<T extends any[], U> = (...args: T) => U; /** * memory - 返回一个缓存每次调用的结果并输出的函数 * @param fn 计算纯函数,入参成员必须是 number | string * @returns 返回一个缓存入参映射结果的函数 */ export declare const memory: <T extends any[], U>(fn: MemoryFn<T, U>) => (...args: T) => U; export {};