/** * 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. * * Utilities for working with built-in Maps and Sets without mutating them. * * @emails oncall+recoil * @flow strict * @format */ 'use strict'; declare function setByAddingToSet(set: $ReadOnlySet, v: V): Set; declare function setByDeletingFromSet(set: $ReadOnlySet, v: V): Set; declare function mapBySettingInMap(map: $ReadOnlyMap, k: K, v: V): Map; declare function mapByUpdatingInMap(map: $ReadOnlyMap, k: K, updater: (V | void) => V): Map; declare function mapByDeletingFromMap(map: $ReadOnlyMap, k: K): Map; declare function mapByDeletingMultipleFromMap(map: $ReadOnlyMap, ks: Set): Map; module.exports = { setByAddingToSet, setByDeletingFromSet, mapBySettingInMap, mapByUpdatingInMap, mapByDeletingFromMap, mapByDeletingMultipleFromMap };