import { ApiResponse, RelationObject, DerivedRoleObject } from '../../utils/openapiUtils.js'; import { components } from '../../lib/api/v1.js'; type ResourceRoleRead = components['schemas']['ResourceRoleRead']; type RelationRead = components['schemas']['RelationRead']; type PaginatedResult = { data?: T[]; total_count?: number; page_count?: number; }; type PaginatedRelationRead = PaginatedResult; type DerivedRoleResponse = DerivedRoleObject; /** * Hook for relation and role derivation API operations */ export declare const usePermitRelationApi: () => { getRelationByKey: (subjectResourceKey: string, relationKey: string) => Promise>; getResourceRelations: (resourceKey: string) => Promise>; createRelation: (relationInput: Partial) => Promise>; createResourceSpecificRole: (resourceKey: string, roleKey: string) => Promise>; createDerivedRole: (derivedRoleInput: Partial) => Promise>; checkResourceRoleExists: (resourceKey: string, roleKey: string) => Promise<{ exists: boolean; data?: ResourceRoleRead; }>; }; export {};