1 | import {
|
2 | AlternativesSchema,
|
3 | AnySchema,
|
4 | ArraySchema,
|
5 | BinarySchema,
|
6 | BooleanSchema,
|
7 | DateSchema,
|
8 | FunctionSchema,
|
9 | NumberSchema,
|
10 | ObjectSchema,
|
11 | StringSchema,
|
12 | } from 'joi'
|
13 |
|
14 |
|
15 |
|
16 | export type SchemaTyped<IN, OUT = IN> =
|
17 | | AnySchemaTyped<IN, OUT>
|
18 | | ArraySchemaTyped<IN>
|
19 | | AlternativesSchemaTyped<IN>
|
20 | | BinarySchemaTyped
|
21 | | BooleanSchemaTyped
|
22 | | DateSchemaTyped<IN>
|
23 | | FunctionSchemaTyped<IN>
|
24 | | NumberSchemaTyped
|
25 | | ObjectSchemaTyped<IN, OUT>
|
26 | | StringSchemaTyped
|
27 |
|
28 |
|
29 |
|
30 |
|
31 |
|
32 | export interface AnySchemaTyped<IN, OUT = IN> extends AnySchema {}
|
33 |
|
34 | export interface ArraySchemaTyped<T> extends ArraySchema, AnySchemaTyped<T[]> {}
|
35 | export interface AlternativesSchemaTyped<T> extends AlternativesSchema {}
|
36 | export interface BinarySchemaTyped extends BinarySchema, AnySchemaTyped<Buffer> {}
|
37 | export interface BooleanSchemaTyped extends BooleanSchema, AnySchemaTyped<boolean> {}
|
38 | export interface DateSchemaTyped<T> extends DateSchema {}
|
39 | export interface FunctionSchemaTyped<T> extends FunctionSchema {}
|
40 | export interface NumberSchemaTyped extends NumberSchema, AnySchemaTyped<number> {}
|
41 | export interface ObjectSchemaTyped<IN, OUT = IN> extends ObjectSchema, AnySchemaTyped<IN, OUT> {}
|
42 | export interface StringSchemaTyped extends StringSchema, AnySchemaTyped<string> {}
|