-
-
Notifications
You must be signed in to change notification settings - Fork 662
Open
Labels
enhancementNew feature or requestNew feature or request
Description
https://github.com/sindresorhus/type-fest/blob/main/source/paths.d.ts
=>
new 2 option for type PathsOptions
/**
Skip in paths array elements
@default false
@example
```
import type {Paths} from 'type-fest';
type Project = {
filename: string;
listA: string[];
listB: [{filename: string}];
folder: {
subfolder: {
filename: string;
};
};
};
type ProjectPaths = Paths<Project, {skipArray: true}>;
//=> 'filename' | 'listA' | 'listB' | 'folder' | 'listB.0' | 'listB.0.filename' | 'folder.subfolder' | 'folder.subfolder.filename'
*/
skipArray?: boolean;
/**
Skip in paths tuple elements
@default false
@example
```
import type {Paths} from 'type-fest';
type Project = {
filename: string;
listA: string[];
listB: [{filename: string}];
folder: {
subfolder: {
filename: string;
};
};
};
type ProjectPaths = Paths<Project, {skipTuple: true}>;
//=> 'filename' | 'listA' | 'listB' | 'folder' | `listA.${number}` | 'folder.subfolder' | 'folder.subfolder.filename'
*/
skipTuple?: boolean;
/**
Skip in paths tuple elements
@default false
@example
```
import type {Paths} from 'type-fest';
type Project = {
filename: string;
size?: number;
folder: {
name: string;
subfolder?: {
filename: string;
};
};
};
type ProjectPaths = Paths<Project, {skipOptional: true}>;
//=> 'filename' | 'folder.name'
*/
skipOptional?: boolean;Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request