/** * 缓存promise实例。 * 适用于阻止对同一个Promise函数进行多次重复调用的场景 * * ```ts * import { cachePromise } from 'sunny-js' * function promiseFn() { * console.log(promiseFn, 'invoked') * return Promise.resolve('fulfilled') * } * const _cacheKey = promiseFn.toString() * void cachePromise(_cacheKey, promiseFn).then(console.log) * void cachePromise(_cacheKey, promiseFn).then(console.log) * ``` * * @deprecated since 2.1.33。请使用{@link seriesPromise}替代 * @category Promise */ export declare function cachePromise(cacheKey: string, fn: () => Promise): Promise; /** * 通过缓存promise实例,让相同的Promise实例按顺序执行。 * * 适用于阻止对同一个Promise函数进行多次重复调用的场景 * * ```ts * import { seriesPromise } from 'sunny-js' * function promiseFn() { * console.log(promiseFn, 'invoked') * return Promise.resolve('fulfilled') * } * void seriesPromise(promiseFn).then(console.log) * void seriesPromise(promiseFn).then(console.log) * ``` * * @since 2.1.33 * @category Promise */ export declare function seriesPromise(fn: () => Promise, cacheKey?: string): Promise; /** * 使用Promise实现当延迟函数 * * ```ts * import { delay } from 'sunny-js' * void (async () => { * await delay(1000) * console.log('1 second delayed') * })() * ``` * * @since 2.1.33 * @param ms 毫秒 * @category Promise */ export declare function delay(ms: number): Promise;