import type { Promisable } from '@ariestools/sdk'; import type { XyoAddress, XyoQuantAddress } from '@xyo-network/sdk-protocol'; import { type AnyConfigSchema, type AttachableModuleInstance, type ModuleIdentifier, type ModuleInstance } from '../module-model/index.js'; import { AbstractNode } from '../node-abstract/index.js'; import type { ChildCertificationFields, NodeConfig, NodeInstanceParams, NodeModuleEventData } from '../node-model/index.js'; export type MemoryNodeParams = NodeInstanceParams>; export declare class MemoryNode extends AbstractNode { protected registeredModuleMap: Partial>; private _attachMutex; private _attachedPrivateModules; private _attachedPublicModules; attachHandler(id: ModuleIdentifier, external?: boolean): Promise<(Lowercase & { readonly __hex: true; } & { readonly __address: true; }) | XyoQuantAddress>; certifyHandler(id: ModuleIdentifier): Promise; detachHandler(id: ModuleIdentifier): Promise<(Lowercase & { readonly __hex: true; } & { readonly __address: true; }) | XyoQuantAddress | undefined>; privateChildren(): Promise; publicChildren(): Promise; register(mod: AttachableModuleInstance): Promise; registeredHandler(): Promisable; registeredModules(): AttachableModuleInstance[]; unregister(mod: ModuleInstance): Promise; protected attachUsingAddress(address: XyoAddress, external?: boolean): Promise<(Lowercase & { readonly __hex: true; } & { readonly __address: true; }) | XyoQuantAddress>; protected detachUsingAddress(address: XyoAddress): Promise<(Lowercase & { readonly __hex: true; } & { readonly __address: true; }) | XyoQuantAddress>; protected startHandler(): Promise; private attachUsingName; private detachUsingName; private getModulesToNotifyAbout; private notifyOfExistingModulesAttached; private notifyOfExistingModulesDetached; private registeredModuleAddressFromName; } //# sourceMappingURL=MemoryNode.d.ts.map