Files
Bahla-Frontend/src/models/organizer_members.ts
2026-09-01 17:18:28 +02:00

21 lines
623 B
TypeScript

import { z } from 'zod';
import { timestampSchema, uuidSchema } from './_shared';
export const organizerMemberRoleSchema = z.enum(['ADMIN', 'EDITOR']);
export const organizerMemberStatusSchema = z.enum(['ACTIVE', 'PENDING']);
export const organizerMemberSchema = z.object({
id: uuidSchema,
organizer_id: uuidSchema,
user_id: uuidSchema.nullable(),
email: z.string().trim().email().max(255),
role: organizerMemberRoleSchema,
status: organizerMemberStatusSchema,
invited_at: timestampSchema,
joined_at: timestampSchema.nullable(),
});
export type OrganizerMember = z.infer<typeof organizerMemberSchema>;