import type {Sequence} from './types'; interface ForEachTrait { forEach(callback: (value: V, key: K, self: this) => void): void; } interface PlainObject { [key: string]: T; } export default function forEachWithNullKeys( iterable: Set, callback: (value: V, key: null) => void ): void; export default function forEachWithNullKeys( iterable: ForEachTrait, callback: (value: V, key: K) => void ): void; export default function forEachWithNullKeys( iterable: Iterator | Iterable | Sequence, callback: (item: T, key: null) => void ): void; export default function forEachWithNullKeys( object: PlainObject, callback: (value: T, key: string) => void ): void;