import type { Permission, TeamRole } from './types'; /** * Hook to check a single permission in the current team * * @param permission - Permission ID to check (e.g., "customers.create") * @returns true if the current user has the permission in the current team * * @example * ```tsx * const canCreate = usePermission('customers.create') * * return canCreate ? : null * ``` */ export declare function usePermission(permission: Permission): boolean; /** * Hook to check multiple permissions * * @param permissions - Object mapping keys to permission IDs * @returns Object with same keys, values are boolean (has permission or not) * * @example * ```tsx * const { canCreate, canDelete } = usePermissions({ * canCreate: 'customers.create', * canDelete: 'customers.delete', * }) * * return ( * <> * {canCreate && } * {canDelete && } * * ) * ``` */ export declare function usePermissions>(permissions: T): Record; /** * Hook to get all permissions of the current user in the current team * * @returns Array of permission IDs the user has * * @example * ```tsx * const permissions = useAllPermissions() * console.log('User has', permissions.length, 'permissions') * ``` */ export declare function useAllPermissions(): Permission[]; /** * Hook to get the current user's team role * * @returns Team role (owner, admin, member, viewer) or null if no team * * @example * ```tsx * const role = useTeamRole() * return {role} * ``` */ export declare function useTeamRole(): TeamRole | null; //# sourceMappingURL=hooks.d.ts.map