import { apiFetch } from "@/lib/auth/api-client"; import { CreateRoleInput, PermissionCatalogEntry, RoleSummary, UpdateRoleInput, } from "./types"; export function fetchRoles(): Promise { return apiFetch("/roles"); } export function fetchPermissionCatalog(): Promise { return apiFetch("/roles/permission-catalog"); } export function createRole(input: CreateRoleInput): Promise { return apiFetch("/roles", { method: "POST", body: JSON.stringify(input), }); } export function updateRole(id: string, input: UpdateRoleInput): Promise { return apiFetch(`/roles/${id}`, { method: "PATCH", body: JSON.stringify(input), }); } export function deactivateRole(id: string): Promise { return apiFetch(`/roles/${id}/deactivate`, { method: "POST" }); } export function reactivateRole(id: string): Promise { return apiFetch(`/roles/${id}/reactivate`, { method: "POST" }); }