/** * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. * * @flow strict * @format */ // These annotations are copy/pasted from the built-in Flow definitions for // Native Map. declare module 'Map' { // Use the name "MapPolyfill" so that we don't get confusing error // messages about "Using Map instead of Map". declare class MapPolyfill { @@iterator(): Iterator<[K, V]>; constructor(_: void): MapPolyfill; constructor(_: null): MapPolyfill; constructor( iterable: Iterable<[Key, Value]>, ): MapPolyfill; clear(): void; delete(key: K): boolean; entries(): Iterator<[K, V]>; forEach( callbackfn: (value: V, index: K, map: MapPolyfill) => mixed, thisArg?: any, ): void; get(key: K): V | void; has(key: K): boolean; keys(): Iterator; set(key: K, value: V): MapPolyfill; size: number; values(): Iterator; } declare module.exports: typeof MapPolyfill; }