@@ -35,20 +35,20 @@ interface ObjectSchema<Properties extends Record<string, AnySchema>, Required ex
35
35
required : Required [ ]
36
36
}
37
37
38
- interface ExtractedSchemaArray < Schema > extends Array < ExtractSchemaType < Schema > > { }
38
+ interface ArrayFromSchema < Schema > extends Array < TypeFromSchema < Schema > > { }
39
39
40
- declare type ExtractedSchemaObject < Properties , Required > = {
41
- [ Key in keyof Properties ] : ( Key extends Required ? ExtractSchemaType < Properties [ Key ] > : ExtractSchemaType < Properties [ Key ] > | undefined )
40
+ declare type ObjectFromSchema < Properties , Required > = {
41
+ [ Key in keyof Properties ] : ( Key extends Required ? TypeFromSchema < Properties [ Key ] > : TypeFromSchema < Properties [ Key ] > | undefined )
42
42
}
43
43
44
- declare type ExtractSchemaType < Schema > = (
44
+ declare type TypeFromSchema < Schema > = (
45
45
Schema extends EnumSchema < infer Enum > ? Enum
46
46
: Schema extends NullSchema ? null
47
47
: Schema extends BooleanSchema ? boolean
48
48
: Schema extends NumberSchema ? number
49
49
: Schema extends StringSchema ? string
50
- : Schema extends ArraySchema < infer ItemSchema > ? ExtractedSchemaArray < ItemSchema >
51
- : Schema extends ObjectSchema < infer Properties , infer Required > ? ExtractedSchemaObject < Properties , Required >
50
+ : Schema extends ArraySchema < infer ItemSchema > ? ArrayFromSchema < ItemSchema >
51
+ : Schema extends ObjectSchema < infer Properties , infer Required > ? ObjectFromSchema < Properties , Required >
52
52
: never
53
53
)
54
54
@@ -61,7 +61,7 @@ declare namespace factory {
61
61
}
62
62
}
63
63
64
- declare interface Validator < Schema , Output = ExtractSchemaType < Schema > > {
64
+ declare interface Validator < Schema , Output = TypeFromSchema < Schema > > {
65
65
( input : unknown , options ?: any ) : input is Output
66
66
errors : factory . ValidationError [ ]
67
67
toJSON ( ) : Schema
@@ -75,8 +75,8 @@ declare interface Factory {
75
75
< Properties extends Record < string , AnySchema > , Required extends keyof Properties > ( schema : ObjectSchema < Properties , Required > , options ?: any ) : Validator < ObjectSchema < Properties , Required > >
76
76
< Schema extends AnySchema > ( schema : Schema , options ?: any ) : Validator < Schema >
77
77
78
- createFilter < Properties extends Record < string , AnySchema > , Required extends keyof Properties > ( schema : ObjectSchema < Properties , Required > , options ?: any ) : Filter < ExtractedSchemaObject < Properties , Required > >
79
- createFilter < Schema extends AnySchema > ( schema : Schema , options ?: any ) : Filter < ExtractSchemaType < Schema > >
78
+ createFilter < Properties extends Record < string , AnySchema > , Required extends keyof Properties > ( schema : ObjectSchema < Properties , Required > , options ?: any ) : Filter < ObjectFromSchema < Properties , Required > >
79
+ createFilter < Schema extends AnySchema > ( schema : Schema , options ?: any ) : Filter < TypeFromSchema < Schema > >
80
80
}
81
81
82
82
declare const factory : Factory
0 commit comments