main
Last change
on this file was d24f17c, checked in by Aleksandar Panovski <apano77@…>, 15 months ago |
Initial commit
|
-
Property mode
set to
100644
|
File size:
894 bytes
|
Rev | Line | |
---|
[d24f17c] | 1 | /**
|
---|
| 2 | * Describes the permissions/modifiers fields can have
|
---|
| 3 | * `R`: readonly
|
---|
| 4 | * `W`: writable
|
---|
| 5 | * `!`: required
|
---|
| 6 | * `?`: optional
|
---|
| 7 | */
|
---|
| 8 | export declare type Modx = ['?' | '!', 'W' | 'R'];
|
---|
| 9 | /**
|
---|
| 10 | * Describes the depth strategy when modifying types
|
---|
| 11 | */
|
---|
| 12 | export declare type Depth = 'flat' | 'deep';
|
---|
| 13 | /**
|
---|
| 14 | * Describes the merging strategy
|
---|
| 15 | * `0`: lodash style. Preserves lists, and completes when undefined types
|
---|
| 16 | * `1`: ramda style. Destroys lists, does not complete if undefined types
|
---|
| 17 | * `2`: lodash style. Lists are narrowed down, tuples are not preserved
|
---|
| 18 | * `3`: ramda style. Assumes that we are only working with lists
|
---|
| 19 | */
|
---|
| 20 | export declare type MergeStyle = 0 | 1 | 2;
|
---|
| 21 | /**
|
---|
| 22 | * Make an object properties (all) `never`. We use this to intersect `object`s and
|
---|
| 23 | * preserve the combine modifiers like `+readonly` and `?optional`.
|
---|
| 24 | */
|
---|
| 25 | export declare type Anyfy<O extends object> = {
|
---|
| 26 | [K in keyof O]: any;
|
---|
| 27 | };
|
---|
Note:
See
TracBrowser
for help on using the repository browser.