import { GunDataProvider } from '../data/GunDataProvider'; import { ComponentMetadata, ComponentPackage, AccessControlList } from '../Types'; import { EventEmitter } from '../utils/EventEmitter'; export declare class ComponentRegistry extends EventEmitter { private gun; private componentIndex; private indexedComponents; constructor(gun: GunDataProvider); getComponent(address: string, userPair: any): Promise; getComponentSchema(address: string, userPair: any): Promise; private initializeSearchIndex; private fetchAllPublicComponents; searchComponents(query: string, limit?: number): Promise; publishComponent(component: ComponentPackage, currentUserPair: any): Promise; private updateSearchIndex; private setupUpdateListeners; updateComponentAccess(componentId: string, newAcl: AccessControlList, currentUserPair: any): Promise; private notifyComponentUpdate; private getComponentPath; private parseAddress; private encryptComponent; private decryptComponent; private verifyComponentSignature; }