export type NormalizedAgentPermissions = Record & { canCreateAgents: boolean; }; export function defaultPermissionsForRole(role: string): NormalizedAgentPermissions { return { canCreateAgents: role === "ceo", }; } export function normalizeAgentPermissions( permissions: unknown, role: string, ): NormalizedAgentPermissions { const defaults = defaultPermissionsForRole(role); if (typeof permissions !== "object" || permissions === null || Array.isArray(permissions)) { return defaults; } const record = permissions as Record; return { canCreateAgents: typeof record.canCreateAgents === "boolean" ? record.canCreateAgents : defaults.canCreateAgents, }; }