This commit is contained in:
39
src/shapes/ZodSchemaClass.ts
Normal file
39
src/shapes/ZodSchemaClass.ts
Normal file
@@ -0,0 +1,39 @@
|
||||
import { AbstractClass, Class } from "type-fest"
|
||||
import { z } from "zod"
|
||||
|
||||
|
||||
export type ZodSchemaClass<
|
||||
SchemaT extends z.ZodRawShape,
|
||||
SchemaUnknownKeys extends z.UnknownKeysParam,
|
||||
SchemaCatchall extends z.ZodTypeAny,
|
||||
|
||||
Values extends {},
|
||||
DefaultValues extends Partial<Values>,
|
||||
> = (
|
||||
Class<Values, [values: Values]> &
|
||||
ZodSchemaClassStatic<SchemaT, SchemaUnknownKeys, SchemaCatchall, Values, DefaultValues>
|
||||
)
|
||||
|
||||
export type ZodSchemaAbstractClass<
|
||||
SchemaT extends z.ZodRawShape,
|
||||
SchemaUnknownKeys extends z.UnknownKeysParam,
|
||||
SchemaCatchall extends z.ZodTypeAny,
|
||||
|
||||
Values extends {},
|
||||
DefaultValues extends Partial<Values>,
|
||||
> = (
|
||||
AbstractClass<Values, [values: Values]> &
|
||||
ZodSchemaClassStatic<SchemaT, SchemaUnknownKeys, SchemaCatchall, Values, DefaultValues>
|
||||
)
|
||||
|
||||
export type ZodSchemaClassStatic<
|
||||
SchemaT extends z.ZodRawShape,
|
||||
SchemaUnknownKeys extends z.UnknownKeysParam,
|
||||
SchemaCatchall extends z.ZodTypeAny,
|
||||
|
||||
Values extends {},
|
||||
DefaultValues extends Partial<Values>,
|
||||
> = {
|
||||
readonly schema: z.ZodObject<SchemaT, SchemaUnknownKeys, SchemaCatchall, Values, Values>
|
||||
readonly defaultValues: DefaultValues
|
||||
}
|
||||
Reference in New Issue
Block a user