@strictly/define 0.0.1 → 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.out/index.d.ts +17 -11
- package/.out/index.js +17 -11
- package/.out/transformers/copies/copy.d.ts +3 -3
- package/.out/transformers/copies/copy_to.d.ts +3 -3
- package/.out/transformers/copies/copy_to.js +4 -0
- package/.out/transformers/copies/mobx_copy.d.ts +4 -4
- package/.out/transformers/copies/mobx_copy.js +1 -1
- package/.out/transformers/copies/specs/copy_to.tests.js +8 -8
- package/.out/transformers/copies/specs/mobx_copy.tests.js +1 -1
- package/.out/transformers/flatteners/flatten_accessors_of_type.d.ts +5 -0
- package/.out/transformers/flatteners/flatten_accessors_of_type.js +11 -0
- package/.out/transformers/flatteners/flatten_json_value_to_type_paths_of.d.ts +2 -2
- package/.out/transformers/flatteners/flatten_json_value_to_type_paths_of.js +2 -2
- package/.out/transformers/flatteners/{flatten_type_def_to.d.ts → flatten_type_to.d.ts} +1 -1
- package/.out/transformers/flatteners/{flatten_type_def_to.js → flatten_type_to.js} +1 -1
- package/.out/transformers/flatteners/{flatten_type_defs_of.d.ts → flatten_types_of_type.d.ts} +1 -1
- package/.out/transformers/flatteners/flatten_types_of_type.js +7 -0
- package/.out/transformers/flatteners/flatten_validation_errors_of_type.d.ts +22 -0
- package/.out/transformers/flatteners/flatten_validation_errors_of_type.js +10 -0
- package/.out/transformers/flatteners/flatten_validators_of_validating_type.d.ts +4 -0
- package/.out/transformers/flatteners/flatten_validators_of_validating_type.js +17 -0
- package/.out/transformers/flatteners/{flatten_value_type_to.d.ts → flatten_value_to.d.ts} +4 -4
- package/.out/transformers/flatteners/{flatten_value_type_to.js → flatten_value_to.js} +7 -2
- package/.out/transformers/flatteners/flatten_values_of_type.d.ts +3 -0
- package/.out/transformers/flatteners/flatten_values_of_type.js +7 -0
- package/.out/transformers/flatteners/specs/{flatten_accessors_of.tests.js → flatten_accessors_of_type.tests.js} +5 -6
- package/.out/transformers/flatteners/specs/flatten_json_value_to_type_paths_of.tests.js +6 -6
- package/.out/transformers/flatteners/specs/{flatten_type_def_to.tests.js → flatten_type_to.tests.js} +15 -13
- package/.out/transformers/flatteners/specs/flatten_types_of_type.tests.js +18 -0
- package/.out/transformers/flatteners/specs/flatten_validation_errors_of_type.tests.js +25 -0
- package/.out/transformers/flatteners/specs/{flatten_value_type_to.tests.js → flatten_value_to.tests.js} +81 -58
- package/.out/transformers/flatteners/specs/{flatten_value_types_of.tests.js → flatten_values_of_type.tests.js} +4 -4
- package/.out/transformers/flatteners/specs/value_path_to_type_path.tests.js +5 -3
- package/.out/transformers/flatteners/value_path_to_type_path.d.ts +1 -1
- package/.out/tsconfig.tsbuildinfo +1 -1
- package/.out/types/builders.d.ts +55 -29
- package/.out/types/builders.js +116 -32
- package/.out/types/definitions.d.ts +1 -1
- package/.out/types/flattened_accessors_of_type.d.ts +9 -0
- package/.out/types/{flattened_type_defs_of.d.ts → flattened_types_of_type.d.ts} +9 -6
- package/.out/types/flattened_types_of_validating_type.d.ts +25 -0
- package/.out/types/flattened_validators_of_validating_type.d.ts +10 -0
- package/.out/types/flattened_values_of_type.d.ts +6 -0
- package/.out/types/{mobx_value_type_of.d.ts → mobx_value_of_type.d.ts} +2 -2
- package/.out/types/{partial_type_def_of.d.ts → partial_type_of_type.d.ts} +1 -1
- package/.out/types/path_of.d.ts +1 -0
- package/.out/types/{json_paths_of.d.ts → paths_of_type.d.ts} +5 -5
- package/.out/types/readonly_type_of_type.d.ts +29 -0
- package/.out/types/specs/builder.tests.js +73 -23
- package/.out/types/specs/{flattened_accessors_of.tests.js → flattened_accessors_of_type.tests.js} +1 -1
- package/.out/types/specs/{flattened_type_defs_of.tests.js → flattened_types_of_type.tests.js} +22 -15
- package/.out/types/specs/flattened_validators_of_validating_type.tests.js +24 -0
- package/.out/types/specs/flattened_values_of_type.tests.js +18 -0
- package/.out/types/specs/{partial_type_def_of.tests.js → partial_type_of_type.tests.js} +4 -4
- package/.out/types/specs/{json_paths_of.tests.js → paths_of_type.tests.js} +19 -19
- package/.out/types/specs/{readonly_type_def_of.tests.js → readonly_type_of_type.tests.js} +6 -6
- package/.out/types/specs/type_of_type.tests.d.ts +1 -0
- package/.out/types/specs/type_of_type.tests.js +27 -0
- package/.out/types/specs/value_of_type.tests.d.ts +1 -0
- package/.out/types/specs/{value_type_of.tests.js → value_of_type.tests.js} +1 -1
- package/.out/types/specs/value_to_type_paths_of_type.tests.d.ts +1 -0
- package/.out/types/specs/{value_to_type_paths_of.tests.js → value_to_type_paths_of_type.tests.js} +9 -9
- package/.out/types/specs/value_types_of_discriminated_union.tests.js +2 -2
- package/.out/types/strict_definitions.d.ts +2 -2
- package/.out/types/type_of_type.d.ts +49 -0
- package/.out/types/type_of_type.js +70 -0
- package/.out/types/validating_definitions.d.ts +49 -0
- package/.out/types/validating_definitions.js +1 -0
- package/.out/types/validating_type_def_with_error.d.ts +55 -0
- package/.out/types/validating_type_def_with_error.js +1 -0
- package/.out/types/value_of_type.d.ts +24 -0
- package/.out/types/value_of_type.js +1 -0
- package/.out/types/{value_to_type_paths_of.d.ts → value_to_type_paths_of_type.d.ts} +13 -13
- package/.out/types/value_to_type_paths_of_type.js +1 -0
- package/.out/types/value_types_of_discriminated_union.d.ts +5 -4
- package/.out/validation/errors_of_validators.d.ts +4 -0
- package/.out/validation/errors_of_validators.js +1 -0
- package/.out/validation/specs/errors_of_validators.tests.d.ts +1 -0
- package/.out/validation/specs/errors_of_validators.tests.js +9 -0
- package/.out/validation/specs/validators_of_values.tests.d.ts +1 -0
- package/.out/validation/specs/validators_of_values.tests.js +21 -0
- package/.out/validation/validator.d.ts +21 -0
- package/.out/validation/validator.js +26 -0
- package/.out/validation/validators/defined_validator.d.ts +10 -0
- package/.out/validation/validators/defined_validator.js +18 -0
- package/.out/validation/validators/minimum_string_length_validator.d.ts +16 -0
- package/.out/validation/validators/minimum_string_length_validator.js +23 -0
- package/.out/validation/validators_of_values.d.ts +4 -0
- package/.out/validation/validators_of_values.js +1 -0
- package/.turbo/turbo-build.log +9 -9
- package/.turbo/turbo-check-types.log +1 -1
- package/.turbo/turbo-release$colon$exports.log +1 -1
- package/README.md +16 -2
- package/dist/index.cjs +364 -76
- package/dist/index.d.cts +365 -114
- package/dist/index.d.ts +365 -114
- package/dist/index.js +355 -73
- package/index.ts +17 -11
- package/package.json +11 -3
- package/transformers/copies/copy.ts +4 -4
- package/transformers/copies/copy_to.ts +11 -7
- package/transformers/copies/mobx_copy.ts +6 -6
- package/transformers/copies/specs/copy_to.tests.ts +8 -8
- package/transformers/copies/specs/mobx_copy.tests.ts +3 -3
- package/transformers/flatteners/{flatten_accessors_of.ts → flatten_accessors_of_type.ts} +10 -10
- package/transformers/flatteners/flatten_json_value_to_type_paths_of.ts +5 -5
- package/transformers/flatteners/{flatten_type_def_to.ts → flatten_type_to.ts} +1 -1
- package/transformers/flatteners/{flatten_type_defs_of.ts → flatten_types_of_type.ts} +3 -3
- package/transformers/flatteners/flatten_validation_errors_of_type.ts +93 -0
- package/transformers/flatteners/flatten_validators_of_validating_type.ts +32 -0
- package/transformers/flatteners/{flatten_value_type_to.ts → flatten_value_to.ts} +12 -7
- package/transformers/flatteners/{flatten_value_types_of.ts → flatten_values_of_type.ts} +6 -6
- package/transformers/flatteners/specs/{flatten_accessors_of.tests.ts → flatten_accessors_of_type.tests.ts} +10 -11
- package/transformers/flatteners/specs/flatten_json_value_to_type_paths_of.tests.ts +6 -6
- package/transformers/flatteners/specs/{flatten_type_def_to.tests.ts → flatten_type_to.tests.ts} +15 -13
- package/transformers/flatteners/specs/flatten_types_of_type.tests.ts +27 -0
- package/transformers/flatteners/specs/flatten_validation_errors_of_type.tests.ts +48 -0
- package/transformers/flatteners/specs/{flatten_value_type_to.tests.ts → flatten_value_to.tests.ts} +124 -91
- package/transformers/flatteners/specs/{flatten_value_types_of.tests.ts → flatten_values_of_type.tests.ts} +4 -4
- package/transformers/flatteners/specs/value_path_to_type_path.tests.ts +20 -18
- package/transformers/flatteners/value_path_to_type_path.ts +4 -4
- package/types/builders.ts +239 -71
- package/types/definitions.ts +2 -2
- package/types/{flattened_accessors_of.ts → flattened_accessors_of_type.ts} +3 -3
- package/types/{flattened_type_defs_of.ts → flattened_types_of_type.ts} +22 -12
- package/types/flattened_types_of_validating_type.ts +152 -0
- package/types/flattened_validators_of_validating_type.ts +33 -0
- package/types/flattened_values_of_type.ts +11 -0
- package/types/{mobx_value_type_of.ts → mobx_value_of_type.ts} +2 -2
- package/types/{partial_type_def_of.ts → partial_type_of_type.ts} +3 -1
- package/types/{json_path_of.ts → path_of.ts} +1 -1
- package/types/{json_paths_of.ts → paths_of_type.ts} +5 -5
- package/types/readonly_type_of_type.ts +54 -0
- package/types/specs/builder.tests.ts +205 -54
- package/types/specs/{flattened_accessors_of.tests.ts → flattened_accessors_of_type.tests.ts} +3 -3
- package/types/specs/{flattened_type_defs_of.tests.ts → flattened_types_of_type.tests.ts} +82 -34
- package/types/specs/flattened_validators_of_validating_type.tests.ts +47 -0
- package/types/specs/flattened_values_of_type.tests.ts +39 -0
- package/types/specs/{partial_type_def_of.tests.ts → partial_type_of_type.tests.ts} +11 -11
- package/types/specs/{json_paths_of.tests.ts → paths_of_type.tests.ts} +47 -47
- package/types/specs/{readonly_type_def_of.tests.ts → readonly_type_of_type.tests.ts} +14 -14
- package/types/specs/type_of_type.tests.ts +60 -0
- package/types/specs/{value_type_of.tests.ts → value_of_type.tests.ts} +15 -15
- package/types/specs/{value_to_type_paths_of.tests.ts → value_to_type_paths_of_type.tests.ts} +26 -25
- package/types/specs/value_types_of_discriminated_union.tests.ts +6 -6
- package/types/strict_definitions.ts +3 -3
- package/types/type_of_type.ts +178 -0
- package/types/validating_definitions.ts +109 -0
- package/types/validating_type_def_with_error.ts +93 -0
- package/types/value_of_type.ts +84 -0
- package/types/{value_to_type_paths_of.ts → value_to_type_paths_of_type.ts} +30 -29
- package/types/value_types_of_discriminated_union.ts +4 -3
- package/validation/errors_of_validators.ts +10 -0
- package/validation/specs/errors_of_validators.tests.ts +20 -0
- package/validation/specs/validators_of_values.tests.ts +68 -0
- package/validation/validator.ts +103 -0
- package/validation/validators/defined_validator.ts +22 -0
- package/validation/validators/minimum_string_length_validator.ts +36 -0
- package/validation/validators_of_values.ts +17 -0
- package/.out/transformers/flatteners/flatten_accessors_of.d.ts +0 -5
- package/.out/transformers/flatteners/flatten_accessors_of.js +0 -11
- package/.out/transformers/flatteners/flatten_type_defs_of.js +0 -7
- package/.out/transformers/flatteners/flatten_value_types_of.d.ts +0 -3
- package/.out/transformers/flatteners/flatten_value_types_of.js +0 -7
- package/.out/transformers/flatteners/specs/flatten_type_defs_of.tests.js +0 -17
- package/.out/types/flattened_accessors_of.d.ts +0 -9
- package/.out/types/flattened_value_types_of.d.ts +0 -6
- package/.out/types/json_path_of.d.ts +0 -1
- package/.out/types/readonly_type_def_of.d.ts +0 -29
- package/.out/types/specs/flattened_value_types_of.tests.js +0 -11
- package/.out/types/value_type_of.d.ts +0 -24
- package/transformers/flatteners/specs/flatten_type_defs_of.tests.ts +0 -26
- package/types/flattened_value_types_of.ts +0 -11
- package/types/readonly_type_def_of.ts +0 -53
- package/types/specs/flattened_value_types_of.tests.ts +0 -21
- package/types/value_type_of.ts +0 -84
- /package/.out/transformers/flatteners/specs/{flatten_accessors_of.tests.d.ts → flatten_accessors_of_type.tests.d.ts} +0 -0
- /package/.out/transformers/flatteners/specs/{flatten_type_def_to.tests.d.ts → flatten_type_to.tests.d.ts} +0 -0
- /package/.out/transformers/flatteners/specs/{flatten_type_defs_of.tests.d.ts → flatten_types_of_type.tests.d.ts} +0 -0
- /package/.out/transformers/flatteners/specs/{flatten_value_type_to.tests.d.ts → flatten_validation_errors_of_type.tests.d.ts} +0 -0
- /package/.out/transformers/flatteners/specs/{flatten_value_types_of.tests.d.ts → flatten_value_to.tests.d.ts} +0 -0
- /package/.out/{types/flattened_accessors_of.js → transformers/flatteners/specs/flatten_values_of_type.tests.d.ts} +0 -0
- /package/.out/types/{flattened_type_defs_of.js → flattened_accessors_of_type.js} +0 -0
- /package/.out/types/{flattened_value_types_of.js → flattened_types_of_type.js} +0 -0
- /package/.out/types/{json_path_of.js → flattened_types_of_validating_type.js} +0 -0
- /package/.out/types/{json_paths_of.js → flattened_validators_of_validating_type.js} +0 -0
- /package/.out/types/{partial_type_def_of.js → flattened_values_of_type.js} +0 -0
- /package/.out/types/{mobx_value_type_of.js → mobx_value_of_type.js} +0 -0
- /package/.out/types/{readonly_type_def_of.js → partial_type_of_type.js} +0 -0
- /package/.out/types/{specs/flattened_accessors_of.tests.d.ts → path_of.js} +0 -0
- /package/.out/types/{specs/flattened_type_defs_of.tests.d.ts → paths_of_type.js} +0 -0
- /package/.out/types/{specs/flattened_value_types_of.tests.d.ts → readonly_type_of_type.js} +0 -0
- /package/.out/types/specs/{json_paths_of.tests.d.ts → flattened_accessors_of_type.tests.d.ts} +0 -0
- /package/.out/types/specs/{partial_type_def_of.tests.d.ts → flattened_types_of_type.tests.d.ts} +0 -0
- /package/.out/types/specs/{readonly_type_def_of.tests.d.ts → flattened_validators_of_validating_type.tests.d.ts} +0 -0
- /package/.out/types/specs/{value_to_type_paths_of.tests.d.ts → flattened_values_of_type.tests.d.ts} +0 -0
- /package/.out/types/specs/{value_type_of.tests.d.ts → partial_type_of_type.tests.d.ts} +0 -0
- /package/.out/types/{value_to_type_paths_of.js → specs/paths_of_type.tests.d.ts} +0 -0
- /package/.out/types/{value_type_of.js → specs/readonly_type_of_type.tests.d.ts} +0 -0
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { type Type } from './definitions'
|
|
2
|
-
import { type FlattenedTypeDefsOf } from './flattened_type_defs_of'
|
|
3
|
-
import { type ValueTypeOf } from './value_type_of'
|
|
4
|
-
|
|
5
|
-
export type FlattenedValueTypesOf<
|
|
6
|
-
T extends Type,
|
|
7
|
-
SegmentOverride extends string | null = null,
|
|
8
|
-
Flattened extends Readonly<Record<string, Type>> = FlattenedTypeDefsOf<T, SegmentOverride>,
|
|
9
|
-
> = {
|
|
10
|
-
[K in keyof Flattened]: ValueTypeOf<Flattened[K], {}>
|
|
11
|
-
}
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
type ListTypeDef,
|
|
3
|
-
type LiteralTypeDef,
|
|
4
|
-
type ObjectTypeDef,
|
|
5
|
-
type RecordTypeDef,
|
|
6
|
-
type Type,
|
|
7
|
-
type TypeDef,
|
|
8
|
-
type UnionTypeDef,
|
|
9
|
-
} from './definitions'
|
|
10
|
-
|
|
11
|
-
export type ReadonlyTypeDefOf<T extends Type> = {
|
|
12
|
-
readonly definition: InternalReadonlyTypeDefOf<T['definition']>,
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
type InternalReadonlyTypeDefOf<T extends TypeDef> = T extends LiteralTypeDef ? InternalReadonlyTypeDefOfLiteral<T>
|
|
16
|
-
: T extends ListTypeDef ? InternalReadonlyTypeDefOfList<T>
|
|
17
|
-
: T extends RecordTypeDef ? InternalReadonlyTypeDefOfRecord<T>
|
|
18
|
-
: T extends ObjectTypeDef ? InternalReadonlyTypeDefOfObject<T>
|
|
19
|
-
: T extends UnionTypeDef ? InternalReadonlyTypeDefOfUnion<T>
|
|
20
|
-
: never
|
|
21
|
-
|
|
22
|
-
type InternalReadonlyTypeDefOfLiteral<T extends LiteralTypeDef> = T
|
|
23
|
-
|
|
24
|
-
type InternalReadonlyTypeDefOfList<T extends ListTypeDef> = {
|
|
25
|
-
readonly type: T['type'],
|
|
26
|
-
readonly elements: InternalReadonlyTypeDefOf<T['elements']>,
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
type InternalReadonlyTypeDefOfRecord<T extends RecordTypeDef> = {
|
|
30
|
-
readonly type: T['type'],
|
|
31
|
-
readonly keyPrototype: T['keyPrototype'],
|
|
32
|
-
readonly valueTypeDef: undefined extends T['valueTypeDef'] ? InternalReadonlyTypeDefOf<
|
|
33
|
-
Exclude<T['valueTypeDef'], undefined>
|
|
34
|
-
> | undefined
|
|
35
|
-
: InternalReadonlyTypeDefOf<T['valueTypeDef']>,
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
type InternalReadonlyTypeDefOfObject<T extends ObjectTypeDef> = T extends ObjectTypeDef<infer Fields> ? {
|
|
39
|
-
readonly type: T['type'],
|
|
40
|
-
readonly fields: {
|
|
41
|
-
readonly [K in keyof Fields]: InternalReadonlyTypeDefOf<Fields[K]>
|
|
42
|
-
},
|
|
43
|
-
}
|
|
44
|
-
: never
|
|
45
|
-
|
|
46
|
-
type InternalReadonlyTypeDefOfUnion<T extends UnionTypeDef> = T extends UnionTypeDef<infer D, infer Unions> ? {
|
|
47
|
-
readonly type: T['type'],
|
|
48
|
-
readonly discriminator: D,
|
|
49
|
-
readonly unions: {
|
|
50
|
-
readonly [K in keyof Unions]: InternalReadonlyTypeDefOf<Unions[K]>
|
|
51
|
-
},
|
|
52
|
-
}
|
|
53
|
-
: never
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
numberType,
|
|
3
|
-
record,
|
|
4
|
-
} from 'types/builders'
|
|
5
|
-
import { type FlattenedValueTypesOf } from 'types/flattened_value_types_of'
|
|
6
|
-
|
|
7
|
-
describe('FlattenedValueTypesOf', function () {
|
|
8
|
-
// note we only test a small example since most of the work is done in flatten
|
|
9
|
-
describe('record', function () {
|
|
10
|
-
const builder = record<typeof numberType, string>(numberType)
|
|
11
|
-
type V = FlattenedValueTypesOf<typeof builder>
|
|
12
|
-
|
|
13
|
-
let v: {
|
|
14
|
-
readonly $: Record<string, number>,
|
|
15
|
-
readonly [_: `$.${string}`]: number,
|
|
16
|
-
}
|
|
17
|
-
it('equals expected type', function () {
|
|
18
|
-
expectTypeOf(v).toEqualTypeOf<V>()
|
|
19
|
-
})
|
|
20
|
-
})
|
|
21
|
-
})
|
package/types/value_type_of.ts
DELETED
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
type IsFieldReadonly,
|
|
3
|
-
} from '@strictly/base'
|
|
4
|
-
import {
|
|
5
|
-
type ListTypeDef,
|
|
6
|
-
type LiteralTypeDef,
|
|
7
|
-
type ObjectTypeDef,
|
|
8
|
-
type RecordTypeDef,
|
|
9
|
-
type Type,
|
|
10
|
-
type TypeDef,
|
|
11
|
-
type UnionTypeDef,
|
|
12
|
-
} from './definitions'
|
|
13
|
-
|
|
14
|
-
export type ValueTypeOf<
|
|
15
|
-
T,
|
|
16
|
-
Extra = {},
|
|
17
|
-
> = T extends Type ? InternalValueTypeOf<T['definition'], Extra> : never
|
|
18
|
-
|
|
19
|
-
export type InternalValueTypeOf<
|
|
20
|
-
F extends TypeDef,
|
|
21
|
-
Extra,
|
|
22
|
-
> = F extends LiteralTypeDef ? InternalValueTypeOfLiteral<F>
|
|
23
|
-
: F extends ListTypeDef ? InternalValueTypeOfList<F, Extra>
|
|
24
|
-
: F extends RecordTypeDef ? InternalValueTypeOfRecord<F, Extra>
|
|
25
|
-
: F extends ObjectTypeDef ? InternalValueTypeOfObject<F, Extra>
|
|
26
|
-
: F extends UnionTypeDef ? InternalValueTypeOfUnion<F, Extra>
|
|
27
|
-
: never
|
|
28
|
-
|
|
29
|
-
type InternalValueTypeOfLiteral<F extends LiteralTypeDef> = F['valuePrototype'][number]
|
|
30
|
-
|
|
31
|
-
type InternalValueTypeOfList<F extends ListTypeDef, Extra> = IsFieldReadonly<F, 'elements'> extends true
|
|
32
|
-
? readonly InternalValueTypeOf<
|
|
33
|
-
F['elements'],
|
|
34
|
-
Extra
|
|
35
|
-
>[] & Extra
|
|
36
|
-
: InternalValueTypeOf<
|
|
37
|
-
F['elements'],
|
|
38
|
-
Extra
|
|
39
|
-
>[] & Extra
|
|
40
|
-
|
|
41
|
-
type InternalValueTypeOfRecord<
|
|
42
|
-
F extends RecordTypeDef,
|
|
43
|
-
Extra,
|
|
44
|
-
> = undefined extends F['valueTypeDef']
|
|
45
|
-
// partial
|
|
46
|
-
? IsFieldReadonly<F, 'valueTypeDef'> extends true
|
|
47
|
-
// readonly
|
|
48
|
-
? {
|
|
49
|
-
readonly [k in F['keyPrototype']]?: InternalValueTypeOf<F['valueTypeDef'], Extra>
|
|
50
|
-
}
|
|
51
|
-
: {
|
|
52
|
-
[k in F['keyPrototype']]?: InternalValueTypeOf<F['valueTypeDef'], Extra>
|
|
53
|
-
}
|
|
54
|
-
// complete
|
|
55
|
-
: IsFieldReadonly<F, 'valueTypeDef'> extends true
|
|
56
|
-
// readonly
|
|
57
|
-
? {
|
|
58
|
-
readonly [k in F['keyPrototype']]: InternalValueTypeOf<F['valueTypeDef'], Extra>
|
|
59
|
-
}
|
|
60
|
-
: {
|
|
61
|
-
[k in F['keyPrototype']]: InternalValueTypeOf<F['valueTypeDef'], Extra>
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
type InternalValueTypeOfObject<
|
|
65
|
-
F extends ObjectTypeDef,
|
|
66
|
-
Extra,
|
|
67
|
-
> = F extends ObjectTypeDef<infer Fields> ? {
|
|
68
|
-
[K in keyof Fields]: InternalValueTypeOf<
|
|
69
|
-
Fields[K],
|
|
70
|
-
Extra
|
|
71
|
-
>
|
|
72
|
-
} & Extra
|
|
73
|
-
: never
|
|
74
|
-
|
|
75
|
-
type InternalValueTypeOfUnion<
|
|
76
|
-
F extends UnionTypeDef,
|
|
77
|
-
Extra,
|
|
78
|
-
> = F extends UnionTypeDef<infer D, infer U> ? D extends string ? {
|
|
79
|
-
[K in keyof U]: InternalValueTypeOf<U[K], Extra> & Readonly<Record<D, K>>
|
|
80
|
-
}[keyof U]
|
|
81
|
-
: {
|
|
82
|
-
[K in keyof U]: InternalValueTypeOf<U[K], Extra>
|
|
83
|
-
}[keyof U]
|
|
84
|
-
: never
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/.out/types/specs/{json_paths_of.tests.d.ts → flattened_accessors_of_type.tests.d.ts}
RENAMED
|
File without changes
|
/package/.out/types/specs/{partial_type_def_of.tests.d.ts → flattened_types_of_type.tests.d.ts}
RENAMED
|
File without changes
|
|
File without changes
|
/package/.out/types/specs/{value_to_type_paths_of.tests.d.ts → flattened_values_of_type.tests.d.ts}
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|