import * as z from "zod"

export const roleFormSchema = z.object({
  name: z
    .string()
    .min(2, { message: "Role name must be at least 2 characters" })
    .max(50, { message: "Role name must be less than 50 characters" }),

  description: z
    .string()
    .min(5, { message: "Description must be at least 5 characters" })
    .max(200, { message: "Description must be less than 200 characters" }),

  parentRole: z.string().nullable().optional(),

  // Internal state for UI control
  selectedAction: z.string().optional(),
  selectedId: z.string().nullable().optional(),
  actionDialogOpen: z.boolean().optional(),

  searchQuery: z.string().optional(),
})
