Describes the depth strategy when modifying types
Describes the merging strategy
0
: lodash style. Preserves lists, and completes when undefined types
1
: ramda style. Destroys lists, does not complete if undefined types
2
: lodash style. Lists are narrowed down, tuples are not preserved
3
: ramda style. Assumes that we are only working with lists
Describes the permissions/modifiers fields can have
R
: readonly
W
: writable
!
: required
?
: optional
Make an object properties (all)
never
. We use this to intersectobject
s and preserve the combine modifiers like+readonly
and?optional
.