import { z } from 'zod';

export const listNotificationsSchema = z.object({
  page: z.coerce.number().int().positive().default(1),
  limit: z.coerce.number().int().positive().max(100).default(20),
  unreadOnly: z.coerce.boolean().optional().default(false),
});

export const updatePreferencesSchema = z.object({
  preferences: z.array(
    z.object({
      notificationType: z.string(),
      inApp: z.boolean(),
      email: z.boolean(),
    }),
  ),
});

export type ListNotificationsInput = z.infer<typeof listNotificationsSchema>;
export type UpdatePreferencesInput = z.infer<typeof updatePreferencesSchema>;
