import { type CanFn } from './permissions-context'; /** Minimal structural shape of a sidebar leaf (matches `@asteby/metacore-ui` NavLinkItem). */ export interface NavLeafLike { url: string; requires?: string; } /** Model key of a `/m/` url, or undefined for any other route. */ export declare function modelFromNavUrl(url: string | undefined): string | undefined; /** Capability a leaf needs, or undefined when it is not gated by the SDK. */ export declare function capabilityForNavItem(item: NavLeafLike): string | undefined; /** Pure visibility predicate for a leaf given a capability checker. */ export declare function isNavItemAllowed(item: NavLeafLike, can: CanFn): boolean; /** * Hook for the host's sidebar: returns a predicate for `` / `filterNavGroups`, or `undefined` when permission gating * is not active (nothing to filter). */ export declare function useNavItemVisible(): ((item: NavLeafLike) => boolean) | undefined; //# sourceMappingURL=nav-permissions.d.ts.map