import type { Promisable } from '@ariestools/sdk'; import type { AccountInstance, ModuleManifestPayload, Payload, QueryBoundWitness, Schema, XyoAddress } from '@xyo-network/sdk-protocol'; import { AbstractModuleInstance } from '../module-abstract/index.js'; import type { AddressPayload, ModuleConfig, ModuleIdentifier, ModuleInstance, ModuleQueryHandlerResult, ModuleQueryResult, QueryableModule } from '../module-model/index.js'; import type { AttachableNodeInstance, ChildCertification, ChildCertificationFields, NodeInstance, NodeModule, NodeModuleEventData, NodeParams } from '../node-model/index.js'; export declare abstract class AbstractNode extends AbstractModuleInstance implements AttachableNodeInstance, QueryableModule, NodeInstance, ModuleInstance, NodeModule { static readonly configSchemas: Schema[]; static readonly defaultConfigSchema: Schema; private readonly isNode; get queries(): Schema[]; static isNode(mod: unknown): boolean; attach(id: ModuleIdentifier, external?: boolean): Promise; attachQuery(id: ModuleIdentifier, external?: boolean, account?: AccountInstance): Promise>; attached(): Promise; attachedHandler(): Promise; attachedQuery(account?: AccountInstance): Promise>; certify(id: ModuleIdentifier): Promise; certifyQuery(id: ModuleIdentifier, account?: AccountInstance): Promise>; detach(id: ModuleIdentifier): Promise; detachQuery(id: ModuleIdentifier, account?: AccountInstance): Promise>; manifest(maxDepth?: number, ignoreAddresses?: XyoAddress[]): Promise; privateChildren(): Promise; publicChildren(): Promise; registered(): Promise; registeredQuery(account?: AccountInstance): Promise>; protected attachedPrivateModules(maxDepth?: number): Promise; protected attachedPublicModules(maxDepth?: number): Promise; protected generateConfigAndAddress(maxDepth?: number): Promise; protected manifestHandler(maxDepth?: number, ignoreAddresses?: XyoAddress[]): Promise; protected queryHandler(query: T, payloads?: Payload[], queryConfig?: TConfig): Promise; abstract attachHandler(id: ModuleIdentifier, external?: boolean): Promisable; abstract certifyHandler(id: ModuleIdentifier): Promisable; abstract detachHandler(id: ModuleIdentifier): Promisable; abstract registeredHandler(): Promisable; } //# sourceMappingURL=AbstractNode.d.ts.map