import type { IModuleRegistry, ModuleRegistration, ModuleType, WireManifest, SchemaDefinition, RepositoryFactory, PermissionDefinition, CategoryDefinition, RoleDefinition, MenuContribution, ThemeContribution, SeedFactory, RouteHandler, ResolvedPage, SocleConfig } from '../types.js'; export declare class ModuleRegistry implements IModuleRegistry { private modules; private config; private _booted; private activeTheme; constructor(config: SocleConfig); register(registration: ModuleRegistration): void; getSchemas(): SchemaDefinition[]; getRepository(name: string): RepositoryFactory | undefined; getAllRepositories(): Record; getAllPermissions(): Record; getAllPermissionDefinitions(): PermissionDefinition[]; getAllCategoryDefinitions(): CategoryDefinition[]; /** * Get all roles from all modules + the auto-built ADMIN role. */ getAllRoles(): RoleDefinition[]; /** * ADMIN role = union of ALL permissions from ALL modules. * Not declared by any module — built automatically. */ getAdminRole(): RoleDefinition; getAllMenuContributions(): MenuContribution[]; getI18n(locale: string): Record; getThemes(): ThemeContribution[]; getActiveThemeName(): string | null; setActiveThemeName(name: string): void; getActiveThemeCss(): string | null; getAllSeedFactories(): Array<{ module: string; factory: SeedFactory; }>; getRouteHandler(path: string[], method: string): RouteHandler | null; /** * Resolve a route handler with its permission requirement. */ resolveRoute(path: string[], method: string): { handler: RouteHandler; permission?: string; params: Record; } | null; getPageComponent(path: string[]): ResolvedPage | null; getConfig(): SocleConfig; getInstalledModules(): WireManifest[]; getModulesByType(type: ModuleType): WireManifest[]; isModuleInstalled(name: string): boolean; canUninstall(name: string): { ok: boolean; blockers?: string[]; }; markBooted(): void; isBooted(): boolean; } //# sourceMappingURL=registry.d.ts.map