UNPKG

tsoa-zod-validator

Version:
64 lines (63 loc) 1.97 kB
/** * This file contains sample validators that can be used with the tsoa-zod-validator library. * These are provided as examples and are not part of the core library. */ import { z } from 'zod'; /** * Example user schema for validation */ export declare const UserSchema: z.ZodObject<{ name: z.ZodString; email: z.ZodString; age: z.ZodOptional<z.ZodNumber>; role: z.ZodDefault<z.ZodEnum<{ user: "user"; admin: "admin"; guest: "guest"; }>>; }, z.core.$strip>; /** * Example pagination schema for query parameters */ export declare const PaginationSchema: z.ZodObject<{ page: z.ZodDefault<z.ZodCoercedNumber<unknown>>; limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>; sort: z.ZodOptional<z.ZodString>; }, z.core.$strip>; /** * Example schema for authentication headers */ export declare const AuthHeadersSchema: z.ZodObject<{ authorization: z.ZodString; }, z.core.$strip>; /** * Example schema for file upload configurations */ export declare const FileUploadSchema: z.ZodObject<{ maxSize: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>; allowedTypes: z.ZodOptional<z.ZodArray<z.ZodString>>; maxFiles: z.ZodOptional<z.ZodNumber>; required: z.ZodOptional<z.ZodBoolean>; minFiles: z.ZodOptional<z.ZodNumber>; }, z.core.$strip>; /** * Example of schema composition */ export declare const BaseProductSchema: z.ZodObject<{ name: z.ZodString; description: z.ZodString; price: z.ZodNumber; }, z.core.$strip>; export declare const CreateProductSchema: z.ZodObject<{ name: z.ZodString; description: z.ZodString; price: z.ZodNumber; categoryId: z.ZodString; tags: z.ZodOptional<z.ZodArray<z.ZodString>>; }, z.core.$strip>; export declare const UpdateProductSchema: z.ZodObject<{ name: z.ZodOptional<z.ZodString>; description: z.ZodOptional<z.ZodString>; price: z.ZodOptional<z.ZodNumber>; id: z.ZodString; }, z.core.$strip>;