*/ interface Enumerable extends \Countable, \IteratorAggregate, \JsonSerializable { /** * @param string|callable(TValue, TKey): bool $key * @param mixed $operator * @param mixed $value * @return static */ public function partition($key, $operator = null, $value = null); /** * @param string|callable(TValue, TKey): mixed $keyBy * @return static */ public function keyBy($keyBy); /** * @param callable(TValue, TKey): array $callback * @return static */ public function mapWithKeys(callable $callback); /** * @param callable(TValue, TKey): array $callback * @return static> */ public function mapToDictionary(callable $callback); /** * @param string|callable(TValue, TKey): bool $key * @param mixed $operator * @param mixed $value * @return bool */ public function every($key, $operator = null, $value = null); /** * @param int $size * @return static */ public function chunk($size); /** * @param callable(static): void $callable * @return static */ public function tap($callable); }