import { type FrontendAppDefinition, type FrontendPermissionContext, type FrontendAppSectionDefinition, type FrontendSidebarNavigationDefinition } from './app-contract'; export interface FrontendSidebarMenuItem { key: string; appId: string; label: string; path: string; group?: string; iconKey?: FrontendSidebarNavigationDefinition['iconKey']; description?: string; matchPaths?: string[]; order: number; } export interface FrontendSidebarMenuGroup { groupLabel: string; items: FrontendSidebarMenuItem[]; } export interface FrontendAppSectionNavItem { key: string; label: string; path: string; /** 所属菜单组 */ group?: string; iconKey?: FrontendSidebarNavigationDefinition['iconKey']; description?: string; end?: boolean; matchPaths?: string[]; order: number; } export declare function filterFrontendAppDefinitions(appDefinitions: FrontendAppDefinition[], permissionContext: FrontendPermissionContext): FrontendAppDefinition[]; export declare function buildFrontendSidebarMenuGroups(appDefinitions: FrontendAppDefinition[]): FrontendSidebarMenuGroup[]; export declare function buildFrontendAppSectionNavItems(sections: FrontendAppSectionDefinition[] | undefined): FrontendAppSectionNavItem[]; /** * 从所有 app 的 sections 构建侧边栏菜单组。 * * 规则: * - 每个 section 可以指定 group,没有指定则使用 app 的 displayName 作为默认组 * - 默认组(displayName)优先级更高,排在菜单最前面 * - 同一组内按 order 排序 */ export declare function buildFrontendSidebarMenuGroupsFromSections(appDefinitions: FrontendAppDefinition[]): FrontendSidebarMenuGroup[]; //# sourceMappingURL=navigation.d.ts.map