import { ComponentType } from 'react';

type SystemSidebarComponent = ComponentType;
type SystemIconComponent = ComponentType<{
    size?: number;
    stroke?: number;
}>;
type SystemSidebarWidthResolver = number | ((context: {
    currentPath: string;
}) => number);
interface SystemModule {
    /** Unique stable identifier for this UI system module. */
    key: string;
    /** Organization Model system id this module presents. Omit for navigation-only app surfaces. */
    systemId?: string;
    /** Route prefixes owned by navigation-only app surfaces. */
    routePrefixes?: string[];
    /** Capability identifiers contributed by this system module. */
    capabilityIds?: string[];
    /** Icon used when this system node appears in shell navigation. */
    icon?: SystemIconComponent;
    /** Sidebar component rendered when this system's subtree route is active. */
    sidebar?: SystemSidebarComponent;
    /** Optional shell sidebar width override. Defaults to 250px. */
    sidebarWidth?: SystemSidebarWidthResolver;
    /** Operations-only bridge connecting this system to the organization graph node. */
    organizationGraph?: OrganizationGraphSystemBridge;
}
interface OrganizationGraphSystemBridge {
    systemId?: string;
}

declare const knowledgeManifest: SystemModule;

export { knowledgeManifest };
