import type { RoleManagementPageProps, DeleteDialogState, Role, RoleStats } from "./RoleManagementPage.types"; declare const useRoleManagementPage: (props: RoleManagementPageProps) => { data: { roles: { id: string; name: string; terreiroId: string; isDefault: boolean; description?: string | null | undefined; createdAt?: string | undefined; updatedAt?: string | undefined; permissions?: { id: string; code: string; name: string; description: string; category: "ACTIVITIES" | "EVENTS" | "FINANCIAL" | "MONTHLY_FEES" | "MEMBERS" | "INVENTORY" | "RITUAL_BATHS" | "TERREIRO" | "SETTINGS" | "REPORTS" | "REQUESTS" | "ADMINISTRATION"; createdAt?: string | undefined; updatedAt?: string | undefined; }[] | undefined; permissionCount?: number | undefined; }[]; customRoles: { id: string; name: string; terreiroId: string; isDefault: boolean; description?: string | null | undefined; createdAt?: string | undefined; updatedAt?: string | undefined; permissions?: { id: string; code: string; name: string; description: string; category: "ACTIVITIES" | "EVENTS" | "FINANCIAL" | "MONTHLY_FEES" | "MEMBERS" | "INVENTORY" | "RITUAL_BATHS" | "TERREIRO" | "SETTINGS" | "REPORTS" | "REQUESTS" | "ADMINISTRATION"; createdAt?: string | undefined; updatedAt?: string | undefined; }[] | undefined; permissionCount?: number | undefined; }[]; defaultRoles: { id: string; name: string; terreiroId: string; isDefault: boolean; description?: string | null | undefined; createdAt?: string | undefined; updatedAt?: string | undefined; permissions?: { id: string; code: string; name: string; description: string; category: "ACTIVITIES" | "EVENTS" | "FINANCIAL" | "MONTHLY_FEES" | "MEMBERS" | "INVENTORY" | "RITUAL_BATHS" | "TERREIRO" | "SETTINGS" | "REPORTS" | "REQUESTS" | "ADMINISTRATION"; createdAt?: string | undefined; updatedAt?: string | undefined; }[] | undefined; permissionCount?: number | undefined; }[]; filteredCustomRoles: { id: string; name: string; terreiroId: string; isDefault: boolean; description?: string | null | undefined; createdAt?: string | undefined; updatedAt?: string | undefined; permissions?: { id: string; code: string; name: string; description: string; category: "ACTIVITIES" | "EVENTS" | "FINANCIAL" | "MONTHLY_FEES" | "MEMBERS" | "INVENTORY" | "RITUAL_BATHS" | "TERREIRO" | "SETTINGS" | "REPORTS" | "REQUESTS" | "ADMINISTRATION"; createdAt?: string | undefined; updatedAt?: string | undefined; }[] | undefined; permissionCount?: number | undefined; }[]; searchQuery: string; deleteDialog: DeleteDialogState; selectedRole: { id: string; name: string; terreiroId: string; isDefault: boolean; description?: string | null | undefined; createdAt?: string | undefined; updatedAt?: string | undefined; permissions?: { id: string; code: string; name: string; description: string; category: "ACTIVITIES" | "EVENTS" | "FINANCIAL" | "MONTHLY_FEES" | "MEMBERS" | "INVENTORY" | "RITUAL_BATHS" | "TERREIRO" | "SETTINGS" | "REPORTS" | "REQUESTS" | "ADMINISTRATION"; createdAt?: string | undefined; updatedAt?: string | undefined; }[] | undefined; permissionCount?: number | undefined; } | undefined; isLoading: boolean; error: string | null | undefined; isSubmitting: boolean; stats: RoleStats; hasResults: boolean; showEmptyState: boolean; showNoResults: boolean; }; fns: { setSearchQuery: import("react").Dispatch>; handleClearSearch: () => void; handleCreateRole: () => void; handleEditRole: (roleId: string) => void; handleOpenDeleteDialog: (roleId: string) => void; handleCloseDeleteDialog: () => void; handleDeleteRole: () => Promise; getRoleById: (roleId: string) => Role | undefined; }; }; export default useRoleManagementPage;