import type { ComponentControl } from '../../core'; import type { Subtree } from '../../index.js'; import type { SchemaType } from '../schema-types/schema-type'; import type { Option, Placeholder } from '../types'; import type { AppEntry, AppId, AppRegistration, AppType, HookAppRegistration, Manifest, Primitive, RegistrationBundle, SectionData } from './types'; declare type TopLevelContent = { contentTypeId: string; displayName: string; placeholders: Placeholder[]; }; export declare class Registry { private appEntries; private contentEntries; private controlEntries; private topLevelContents; private copyElements; private primitives; private sectionEntries; registerSection(sectionData: SectionData): void; unregisterSection(sectionName: string): void; getRegisteredSections(): Map; private getRegisteredSection; getRegisteredSectionOrThrow(sectionName: string): Subtree[]; static optionToPlaceholder(contentTypeId: string, option: Option): Placeholder; registerContent(bundle: RegistrationBundle): RegistrationBundle; unregisterContent(contentTypeId: string): void; registerAppEntries(app: Manifest, bundle: AppEntry): void; unregisterAppEntry(appId: string, tree?: Subtree): Promise; unregisterContentTypeOrThrow(contentTypeId: string, tree: Subtree): Subtree; registerBundle(bundle: AppEntry): void; validateControl(control: ComponentControl): void; registerControl(control: ComponentControl): void; getControlOverwrite(controlIdToOverwrite: string): ComponentControl | undefined; getComponentControls(contentTypeId: string): ComponentControl[]; unregisterControl(controlId: string): void; unregisterAllControls(): void; hasControl(controlId: string): boolean; has(contentTypeId: string): boolean; getAllAppsContentEntries(): { [key: string]: string; }; getAppEntry(appId: AppId): AppRegistration> | undefined; getAllAppsContentOfType(type: AppType): AppRegistration>[]; getAppHook(appId: AppId): HookAppRegistration; getAllHeadScripts(): RegistrationBundle, {}>[]; getAllControls(): string[]; getAllContentTypes(): string[]; getAllTopLevelContentTypes(): string[]; getSectionTemplateByContentType(contentTypeId: string): import("../../core").ContainerTemplate>; getAllSectionOptions(contentTypeId: string): TopLevelContent; getSectionOption(contentTypeId: string, optionId: string): Placeholder; getContentType(contentTypeId: string): RegistrationBundle, {}>; getContentTypeOrThrow(contentTypeId: string): RegistrationBundle, {}>; getControl(controlId: string): ComponentControl; getAllSectionPlaceholders(): TopLevelContent[]; getAllCopyElements(): string[]; getAllPrimitives(): Primitive[]; } export {};