export interface ContributionKey { readonly id: string; readonly __brand?: T; } export interface ContributionEntry { readonly key: ContributionKey; readonly items: T[]; } export declare function defineContribution(id: string): ContributionKey; export declare function contribute( key: ContributionKey, ...items: T[] ): ContributionEntry; export interface SettingsSectionContribution { id: string; label: string; icon?: string; fields?: unknown[]; component?: unknown; } export declare const settingsSections: ContributionKey; export interface RootTakeoverContribution { id: string; component: unknown; } export declare const rootTakeover: ContributionKey;