/** * Copyright (c) 2015-present, Facebook, Inc. * All rights reserved. * * This source code is licensed under the BSD-style license found in the * LICENSE file in the root directory of this source tree. An additional grant * of patent rights can be found in the PATENTS file in the same directory. * * @flow * @nolint * @format */ /* eslint-disable */ // These annotations are copy/pasted from the built-in Flow definitions and // tweaked so that then() and catch() accept `null` arguments, that they // rightfully do. This should probably be changed in the core lib eventually. declare class Promise<+R> { constructor( callback: ( resolve: (result?: Promise | R) => void, reject: (error?: any) => void, ) => mixed, ): void, then( onFulfill?: ?(value: R) => Promise | ?U, onReject?: ?(error: any) => Promise | ?U, ): Promise, catch(onReject?: (error: any) => ?Promise | U): Promise, static resolve(object?: Promise | T): Promise, static reject(error?: mixed): Promise, static all>( promises: T, ): Promise<$TupleMap>, static race(promises: Array>): Promise, }