UNPKG

userdo

Version:

A Durable Object base class for building applications on Cloudflare Workers.

47 lines (46 loc) 1.22 kB
import { z } from 'zod'; // Request/Response schemas for typed endpoints export const SignupRequestSchema = z.object({ email: z.string().email(), password: z.string().min(8), }); export const LoginRequestSchema = z.object({ email: z.string().email(), password: z.string().min(8), }); export const PasswordResetRequestSchema = z.object({ email: z.string().email(), }); export const PasswordResetConfirmSchema = z.object({ resetToken: z.string(), newPassword: z.string().min(8), }); export const SetDataRequestSchema = z.object({ key: z.string(), value: z.unknown(), }); // Response schemas export const AuthResponseSchema = z.object({ user: z.object({ id: z.string(), email: z.string(), createdAt: z.string(), }), token: z.string(), refreshToken: z.string(), }); export const ErrorResponseSchema = z.object({ error: z.string(), }); export const SuccessResponseSchema = z.object({ ok: z.literal(true), }); export const DataResponseSchema = z.object({ ok: z.literal(true), data: z.unknown(), }); export const EventsResponseSchema = z.array(z.object({ event: z.string(), data: z.unknown(), timestamp: z.number(), }));