type AsyncFn = (...args: Args) => Promise; /** * Takes an async function `fn` as a parameter and returns a wrapper function, which ensures * that `fn` will be called only once if the promise succeeds: * * - If the first call is not finished yet, returns the promise to the same result * - If the first call is finished and has succeeded, returns the result of this call * - If the first call is finished but has failed, `fn` is called again * @param fn * @returns */ export declare function callOnceOnSuccess(fn: AsyncFn): AsyncFn; export {};