export declare function reversed(thing: Iterable): Iterable; /** * [TODO] Implement an iterator that goes through the array as if it were a ring * and starts with a random offset and direction. * * @param thing */ export declare function randomShifted(thing: Iterable): Iterable; /** * Creates a generator that yields the values of a given Map in random order. * * The function first creates an array of keys from the map, then shuffles * this array using the Fisher-Yates algorithm. Finally, it yields the map's * values in the order of the shuffled keys. The original Map is not modified. * * Note: This function is not space efficient for large maps as it creates * an additional array for the keys. * * @template K - The type of the keys of the map. * @template V - The type of the values of the map. * @param {Map} map - The map whose values are to be yielded in random order. * @yields {V} - The next value from the map in random order. * * @example * let map = new Map(); * map.set('a', 1); * map.set('b', 2); * map.set('c', 3); * map.set('d', 4); * let iter = shuffleMapIterator(map); * for (let value of iter) { * console.log(value); // Prints values in random order * } */ export declare function shuffleMapIterator(map: Map): IterableIterator;