import { Path } from './Path.js'; import { Values } from './Values.js'; import './chunks/CM89_aaq.js'; import './BooleanNor.js'; import './BooleanNot.js'; import './BooleanOr.js'; import './Tuple.js'; import './chunks/DZEfmVOc.js'; import './BooleanAnd.js'; import './MaybeReadonly.js'; import './TupleLength.js'; import './Collection.js'; /** * A type that may match the path of the elements in a collection. This type is * used to allow auto-completion in IDEs without losing the ability to match * non-literal string types. * * @template T Type of the collection to get the path from. * @example * interface Person { * age: number * name: { * first: string * last: string * } * } * * // Wrap the `Person` type in an array. * type Persons = Person[] * * // Get the paths of all items in the collection. * type Paths = IteratorPath // 'age' | 'name' | 'name.first' | 'name.last' */ type IteratorPath = Path> | (string & {}); export type { IteratorPath };