UNPKG

create-sekiban-app

Version:

Create a new Sekiban application with Dapr

34 lines (30 loc) 882 B
import { z } from 'zod'; import { defineEvent } from '@sekiban/core'; // User Created Event export const UserCreated = defineEvent({ type: 'UserCreated', schema: z.object({ userId: z.string().uuid(), name: z.string().min(1), email: z.string().email() }) }); // User Name Changed Event export const UserNameChanged = defineEvent({ type: 'UserNameChanged', schema: z.object({ userId: z.string().uuid(), newName: z.string().min(1) }) }); // User Email Changed Event export const UserEmailChanged = defineEvent({ type: 'UserEmailChanged', schema: z.object({ userId: z.string().uuid(), newEmail: z.string().email() }) }); export type UserCreatedType = z.infer<typeof UserCreated.schema>; export type UserNameChangedType = z.infer<typeof UserNameChanged.schema>; export type UserEmailChangedType = z.infer<typeof UserEmailChanged.schema>;