import { ResolvedPromise } from './allSettled';
declare global {
    interface Promise<T> {
        /**
         * Creates a Promise that is resolved with an array of results when all of the provided Promises resolve or reject.
         *
         * @param {U} values
         * - An array of Promises.
         *
         * @return {ResolvedPromise<U>}
         * A new Promise.
         *
         * @example
         * Promise.resolve()
         *   .allSettled(
         *     [
         *       Promise.resolve(1),
         *       Promise.reject(2)
         *     ]
         *   )
         * // return [{status: 'fulfilled', value: 1},{status: 'rejected', value: 2}] in the subsequent promise
         */
        allSettled<U extends readonly unknown[] | []>(values: U): ResolvedPromise<U>;
    }
}
