@xyo-network/module-abstract 2.111.2 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (194) hide show
  1. package/dist/neutral/index.d.ts +221 -6
  2. package/dist/neutral/index.mjs.map +1 -1
  3. package/package.json +32 -51
  4. package/src/determineAccount.ts +0 -1
  5. package/xy.config.ts +12 -0
  6. package/dist/browser/AbstractModule.d.cts +0 -104
  7. package/dist/browser/AbstractModule.d.cts.map +0 -1
  8. package/dist/browser/AbstractModule.d.mts +0 -104
  9. package/dist/browser/AbstractModule.d.mts.map +0 -1
  10. package/dist/browser/AbstractModule.d.ts +0 -104
  11. package/dist/browser/AbstractModule.d.ts.map +0 -1
  12. package/dist/browser/AbstractModuleInstance.d.cts +0 -54
  13. package/dist/browser/AbstractModuleInstance.d.cts.map +0 -1
  14. package/dist/browser/AbstractModuleInstance.d.mts +0 -54
  15. package/dist/browser/AbstractModuleInstance.d.mts.map +0 -1
  16. package/dist/browser/AbstractModuleInstance.d.ts +0 -54
  17. package/dist/browser/AbstractModuleInstance.d.ts.map +0 -1
  18. package/dist/browser/BaseEmitter.d.cts +0 -17
  19. package/dist/browser/BaseEmitter.d.cts.map +0 -1
  20. package/dist/browser/BaseEmitter.d.mts +0 -17
  21. package/dist/browser/BaseEmitter.d.mts.map +0 -1
  22. package/dist/browser/BaseEmitter.d.ts +0 -17
  23. package/dist/browser/BaseEmitter.d.ts.map +0 -1
  24. package/dist/browser/Error.d.cts +0 -19
  25. package/dist/browser/Error.d.cts.map +0 -1
  26. package/dist/browser/Error.d.mts +0 -19
  27. package/dist/browser/Error.d.mts.map +0 -1
  28. package/dist/browser/Error.d.ts +0 -19
  29. package/dist/browser/Error.d.ts.map +0 -1
  30. package/dist/browser/QueryValidator/ModuleConfigQueryValidator.d.cts +0 -17
  31. package/dist/browser/QueryValidator/ModuleConfigQueryValidator.d.cts.map +0 -1
  32. package/dist/browser/QueryValidator/ModuleConfigQueryValidator.d.mts +0 -17
  33. package/dist/browser/QueryValidator/ModuleConfigQueryValidator.d.mts.map +0 -1
  34. package/dist/browser/QueryValidator/ModuleConfigQueryValidator.d.ts +0 -17
  35. package/dist/browser/QueryValidator/ModuleConfigQueryValidator.d.ts.map +0 -1
  36. package/dist/browser/QueryValidator/QueryValidator.d.cts +0 -8
  37. package/dist/browser/QueryValidator/QueryValidator.d.cts.map +0 -1
  38. package/dist/browser/QueryValidator/QueryValidator.d.mts +0 -8
  39. package/dist/browser/QueryValidator/QueryValidator.d.mts.map +0 -1
  40. package/dist/browser/QueryValidator/QueryValidator.d.ts +0 -8
  41. package/dist/browser/QueryValidator/QueryValidator.d.ts.map +0 -1
  42. package/dist/browser/QueryValidator/SupportedQueryValidator.d.cts +0 -18
  43. package/dist/browser/QueryValidator/SupportedQueryValidator.d.cts.map +0 -1
  44. package/dist/browser/QueryValidator/SupportedQueryValidator.d.mts +0 -18
  45. package/dist/browser/QueryValidator/SupportedQueryValidator.d.mts.map +0 -1
  46. package/dist/browser/QueryValidator/SupportedQueryValidator.d.ts +0 -18
  47. package/dist/browser/QueryValidator/SupportedQueryValidator.d.ts.map +0 -1
  48. package/dist/browser/QueryValidator/index.d.cts +0 -4
  49. package/dist/browser/QueryValidator/index.d.cts.map +0 -1
  50. package/dist/browser/QueryValidator/index.d.mts +0 -4
  51. package/dist/browser/QueryValidator/index.d.mts.map +0 -1
  52. package/dist/browser/QueryValidator/index.d.ts +0 -4
  53. package/dist/browser/QueryValidator/index.d.ts.map +0 -1
  54. package/dist/browser/determineAccount.d.cts +0 -14
  55. package/dist/browser/determineAccount.d.cts.map +0 -1
  56. package/dist/browser/determineAccount.d.mts +0 -14
  57. package/dist/browser/determineAccount.d.mts.map +0 -1
  58. package/dist/browser/determineAccount.d.ts +0 -14
  59. package/dist/browser/determineAccount.d.ts.map +0 -1
  60. package/dist/browser/index.cjs +0 -1069
  61. package/dist/browser/index.cjs.map +0 -1
  62. package/dist/browser/index.d.cts +0 -6
  63. package/dist/browser/index.d.cts.map +0 -1
  64. package/dist/browser/index.d.mts +0 -6
  65. package/dist/browser/index.d.mts.map +0 -1
  66. package/dist/browser/index.d.ts +0 -6
  67. package/dist/browser/index.d.ts.map +0 -1
  68. package/dist/browser/index.mjs +0 -1048
  69. package/dist/browser/index.mjs.map +0 -1
  70. package/dist/neutral/AbstractModule.d.cts +0 -104
  71. package/dist/neutral/AbstractModule.d.cts.map +0 -1
  72. package/dist/neutral/AbstractModule.d.mts +0 -104
  73. package/dist/neutral/AbstractModule.d.mts.map +0 -1
  74. package/dist/neutral/AbstractModule.d.ts +0 -104
  75. package/dist/neutral/AbstractModule.d.ts.map +0 -1
  76. package/dist/neutral/AbstractModuleInstance.d.cts +0 -54
  77. package/dist/neutral/AbstractModuleInstance.d.cts.map +0 -1
  78. package/dist/neutral/AbstractModuleInstance.d.mts +0 -54
  79. package/dist/neutral/AbstractModuleInstance.d.mts.map +0 -1
  80. package/dist/neutral/AbstractModuleInstance.d.ts +0 -54
  81. package/dist/neutral/AbstractModuleInstance.d.ts.map +0 -1
  82. package/dist/neutral/BaseEmitter.d.cts +0 -17
  83. package/dist/neutral/BaseEmitter.d.cts.map +0 -1
  84. package/dist/neutral/BaseEmitter.d.mts +0 -17
  85. package/dist/neutral/BaseEmitter.d.mts.map +0 -1
  86. package/dist/neutral/BaseEmitter.d.ts +0 -17
  87. package/dist/neutral/BaseEmitter.d.ts.map +0 -1
  88. package/dist/neutral/Error.d.cts +0 -19
  89. package/dist/neutral/Error.d.cts.map +0 -1
  90. package/dist/neutral/Error.d.mts +0 -19
  91. package/dist/neutral/Error.d.mts.map +0 -1
  92. package/dist/neutral/Error.d.ts +0 -19
  93. package/dist/neutral/Error.d.ts.map +0 -1
  94. package/dist/neutral/QueryValidator/ModuleConfigQueryValidator.d.cts +0 -17
  95. package/dist/neutral/QueryValidator/ModuleConfigQueryValidator.d.cts.map +0 -1
  96. package/dist/neutral/QueryValidator/ModuleConfigQueryValidator.d.mts +0 -17
  97. package/dist/neutral/QueryValidator/ModuleConfigQueryValidator.d.mts.map +0 -1
  98. package/dist/neutral/QueryValidator/ModuleConfigQueryValidator.d.ts +0 -17
  99. package/dist/neutral/QueryValidator/ModuleConfigQueryValidator.d.ts.map +0 -1
  100. package/dist/neutral/QueryValidator/QueryValidator.d.cts +0 -8
  101. package/dist/neutral/QueryValidator/QueryValidator.d.cts.map +0 -1
  102. package/dist/neutral/QueryValidator/QueryValidator.d.mts +0 -8
  103. package/dist/neutral/QueryValidator/QueryValidator.d.mts.map +0 -1
  104. package/dist/neutral/QueryValidator/QueryValidator.d.ts +0 -8
  105. package/dist/neutral/QueryValidator/QueryValidator.d.ts.map +0 -1
  106. package/dist/neutral/QueryValidator/SupportedQueryValidator.d.cts +0 -18
  107. package/dist/neutral/QueryValidator/SupportedQueryValidator.d.cts.map +0 -1
  108. package/dist/neutral/QueryValidator/SupportedQueryValidator.d.mts +0 -18
  109. package/dist/neutral/QueryValidator/SupportedQueryValidator.d.mts.map +0 -1
  110. package/dist/neutral/QueryValidator/SupportedQueryValidator.d.ts +0 -18
  111. package/dist/neutral/QueryValidator/SupportedQueryValidator.d.ts.map +0 -1
  112. package/dist/neutral/QueryValidator/index.d.cts +0 -4
  113. package/dist/neutral/QueryValidator/index.d.cts.map +0 -1
  114. package/dist/neutral/QueryValidator/index.d.mts +0 -4
  115. package/dist/neutral/QueryValidator/index.d.mts.map +0 -1
  116. package/dist/neutral/QueryValidator/index.d.ts +0 -4
  117. package/dist/neutral/QueryValidator/index.d.ts.map +0 -1
  118. package/dist/neutral/determineAccount.d.cts +0 -14
  119. package/dist/neutral/determineAccount.d.cts.map +0 -1
  120. package/dist/neutral/determineAccount.d.mts +0 -14
  121. package/dist/neutral/determineAccount.d.mts.map +0 -1
  122. package/dist/neutral/determineAccount.d.ts +0 -14
  123. package/dist/neutral/determineAccount.d.ts.map +0 -1
  124. package/dist/neutral/index.cjs +0 -1069
  125. package/dist/neutral/index.cjs.map +0 -1
  126. package/dist/neutral/index.d.cts +0 -6
  127. package/dist/neutral/index.d.cts.map +0 -1
  128. package/dist/neutral/index.d.mts +0 -6
  129. package/dist/neutral/index.d.mts.map +0 -1
  130. package/dist/neutral/index.d.ts.map +0 -1
  131. package/dist/node/AbstractModule.d.cts +0 -104
  132. package/dist/node/AbstractModule.d.cts.map +0 -1
  133. package/dist/node/AbstractModule.d.mts +0 -104
  134. package/dist/node/AbstractModule.d.mts.map +0 -1
  135. package/dist/node/AbstractModule.d.ts +0 -104
  136. package/dist/node/AbstractModule.d.ts.map +0 -1
  137. package/dist/node/AbstractModuleInstance.d.cts +0 -54
  138. package/dist/node/AbstractModuleInstance.d.cts.map +0 -1
  139. package/dist/node/AbstractModuleInstance.d.mts +0 -54
  140. package/dist/node/AbstractModuleInstance.d.mts.map +0 -1
  141. package/dist/node/AbstractModuleInstance.d.ts +0 -54
  142. package/dist/node/AbstractModuleInstance.d.ts.map +0 -1
  143. package/dist/node/BaseEmitter.d.cts +0 -17
  144. package/dist/node/BaseEmitter.d.cts.map +0 -1
  145. package/dist/node/BaseEmitter.d.mts +0 -17
  146. package/dist/node/BaseEmitter.d.mts.map +0 -1
  147. package/dist/node/BaseEmitter.d.ts +0 -17
  148. package/dist/node/BaseEmitter.d.ts.map +0 -1
  149. package/dist/node/Error.d.cts +0 -19
  150. package/dist/node/Error.d.cts.map +0 -1
  151. package/dist/node/Error.d.mts +0 -19
  152. package/dist/node/Error.d.mts.map +0 -1
  153. package/dist/node/Error.d.ts +0 -19
  154. package/dist/node/Error.d.ts.map +0 -1
  155. package/dist/node/QueryValidator/ModuleConfigQueryValidator.d.cts +0 -17
  156. package/dist/node/QueryValidator/ModuleConfigQueryValidator.d.cts.map +0 -1
  157. package/dist/node/QueryValidator/ModuleConfigQueryValidator.d.mts +0 -17
  158. package/dist/node/QueryValidator/ModuleConfigQueryValidator.d.mts.map +0 -1
  159. package/dist/node/QueryValidator/ModuleConfigQueryValidator.d.ts +0 -17
  160. package/dist/node/QueryValidator/ModuleConfigQueryValidator.d.ts.map +0 -1
  161. package/dist/node/QueryValidator/QueryValidator.d.cts +0 -8
  162. package/dist/node/QueryValidator/QueryValidator.d.cts.map +0 -1
  163. package/dist/node/QueryValidator/QueryValidator.d.mts +0 -8
  164. package/dist/node/QueryValidator/QueryValidator.d.mts.map +0 -1
  165. package/dist/node/QueryValidator/QueryValidator.d.ts +0 -8
  166. package/dist/node/QueryValidator/QueryValidator.d.ts.map +0 -1
  167. package/dist/node/QueryValidator/SupportedQueryValidator.d.cts +0 -18
  168. package/dist/node/QueryValidator/SupportedQueryValidator.d.cts.map +0 -1
  169. package/dist/node/QueryValidator/SupportedQueryValidator.d.mts +0 -18
  170. package/dist/node/QueryValidator/SupportedQueryValidator.d.mts.map +0 -1
  171. package/dist/node/QueryValidator/SupportedQueryValidator.d.ts +0 -18
  172. package/dist/node/QueryValidator/SupportedQueryValidator.d.ts.map +0 -1
  173. package/dist/node/QueryValidator/index.d.cts +0 -4
  174. package/dist/node/QueryValidator/index.d.cts.map +0 -1
  175. package/dist/node/QueryValidator/index.d.mts +0 -4
  176. package/dist/node/QueryValidator/index.d.mts.map +0 -1
  177. package/dist/node/QueryValidator/index.d.ts +0 -4
  178. package/dist/node/QueryValidator/index.d.ts.map +0 -1
  179. package/dist/node/determineAccount.d.cts +0 -14
  180. package/dist/node/determineAccount.d.cts.map +0 -1
  181. package/dist/node/determineAccount.d.mts +0 -14
  182. package/dist/node/determineAccount.d.mts.map +0 -1
  183. package/dist/node/determineAccount.d.ts +0 -14
  184. package/dist/node/determineAccount.d.ts.map +0 -1
  185. package/dist/node/index.cjs +0 -1099
  186. package/dist/node/index.cjs.map +0 -1
  187. package/dist/node/index.d.cts +0 -6
  188. package/dist/node/index.d.cts.map +0 -1
  189. package/dist/node/index.d.mts +0 -6
  190. package/dist/node/index.d.mts.map +0 -1
  191. package/dist/node/index.d.ts +0 -6
  192. package/dist/node/index.d.ts.map +0 -1
  193. package/dist/node/index.mjs +0 -1068
  194. package/dist/node/index.mjs.map +0 -1
@@ -1,6 +1,221 @@
1
- export * from './AbstractModule.ts';
2
- export * from './AbstractModuleInstance.ts';
3
- export * from './BaseEmitter.ts';
4
- export * from './Error.ts';
5
- export * from './QueryValidator/index.ts';
6
- //# sourceMappingURL=index.d.ts.map
1
+ import * as _xyo_network_manifest_model from '@xyo-network/manifest-model';
2
+ import { ModuleManifestPayload } from '@xyo-network/manifest-model';
3
+ import * as _xyo_network_payload_model from '@xyo-network/payload-model';
4
+ import { Payload, Schema, Query, WithMeta, ModuleError } from '@xyo-network/payload-model';
5
+ import * as _xylabs_hex from '@xylabs/hex';
6
+ import { Address, Hash } from '@xylabs/hex';
7
+ import { Logger } from '@xylabs/logger';
8
+ import { Promisable, PromiseEx } from '@xylabs/promise';
9
+ import { AccountInstance } from '@xyo-network/account-model';
10
+ import { ArchivistInstance } from '@xyo-network/archivist-model';
11
+ import * as _xyo_network_boundwitness_model from '@xyo-network/boundwitness-model';
12
+ import { QueryBoundWitness, BoundWitness } from '@xyo-network/boundwitness-model';
13
+ import * as _xyo_network_module_model from '@xyo-network/module-model';
14
+ import { AnyConfigSchema, ModuleConfig, Module, ModuleParams, ModuleEventData, Labels, ModuleDetailsError, ArchivingModuleConfig, ObjectResolverPriority, ModuleStatus, ModuleResolverInstance, AttachableModuleInstance, CreatableModule, CreatableModuleFactory, ModuleQueryResult, ModuleDescriptionPayload, AddressPreviousHashPayload, AddressPayload, ModuleQueryHandlerResult, ModuleNameResolver, ModuleInstance, ModuleFilterOptions, ModuleFilter, ModuleIdentifier, ObjectFilterOptions } from '@xyo-network/module-model';
15
+ import { WalletInstance } from '@xyo-network/wallet-model';
16
+ import { LRUCache } from 'lru-cache';
17
+ import { BaseParams, Base, JsonValue } from '@xylabs/object';
18
+ import { EventData, EventFunctions, EventListener, EventAnyListener } from '@xyo-network/module-events';
19
+ import * as _xyo_network_module_resolver from '@xyo-network/module-resolver';
20
+ import { CompositeModuleResolver } from '@xyo-network/module-resolver';
21
+ import { NodeInstance } from '@xyo-network/node-model';
22
+ import { PayloadBuilder } from '@xyo-network/payload-builder';
23
+
24
+ declare class BaseEmitter<TParams extends BaseParams = BaseParams, TEventData extends EventData = EventData> extends Base<TParams> implements EventFunctions<TEventData> {
25
+ eventData: TEventData;
26
+ private events;
27
+ constructor(params: TParams);
28
+ clearListeners(eventNames: keyof TEventData | (keyof TEventData)[]): void;
29
+ emit<TEventName extends keyof TEventData = keyof TEventData, TEventArgs extends TEventData[TEventName] = TEventData[TEventName]>(eventName: TEventName, eventArgs: TEventArgs): Promise<void>;
30
+ emitSerial<TEventName extends keyof TEventData = keyof TEventData, TEventArgs extends TEventData[TEventName] = TEventData[TEventName]>(eventName: TEventName, eventArgs: TEventArgs): Promise<void>;
31
+ listenerCount(eventNames: keyof TEventData | (keyof TEventData)[]): number;
32
+ off<TEventName extends keyof TEventData>(eventNames: TEventName | TEventName[], listener: EventListener<TEventData[TEventName]>): void;
33
+ offAny(listener: EventAnyListener): void;
34
+ on<TEventName extends keyof TEventData>(eventNames: TEventName | TEventName[], listener: EventListener<TEventData[TEventName]>): () => void;
35
+ onAny(listener: EventAnyListener): () => void;
36
+ once<TEventName extends keyof TEventData>(eventName: TEventName, listener: EventListener<TEventData[TEventName]>): () => void;
37
+ }
38
+
39
+ type Queryable<T extends QueryBoundWitness = QueryBoundWitness> = (query: T, payloads?: Payload[]) => Promisable<boolean>;
40
+ interface QueryValidator<T extends QueryBoundWitness = QueryBoundWitness> {
41
+ queryable: Queryable<T>;
42
+ }
43
+
44
+ type SortedPipedAddressesString = string;
45
+ declare class ModuleConfigQueryValidator<TConfig extends AnyConfigSchema<ModuleConfig>> implements QueryValidator {
46
+ protected allowed: Record<Schema, SortedPipedAddressesString[]>;
47
+ protected disallowed: Record<Schema, SortedPipedAddressesString[]>;
48
+ protected readonly hasAllowedRules: boolean;
49
+ protected readonly hasDisallowedRules: boolean;
50
+ protected readonly hasRules: boolean;
51
+ constructor(config?: TConfig);
52
+ queryable: Queryable;
53
+ protected queryAllowed: (schema: Schema, addresses: Address[]) => boolean;
54
+ protected queryDisallowed: (schema: Schema, addresses: string[]) => boolean;
55
+ }
56
+
57
+ declare const isQuerySupportedByModule: <T extends QueryBoundWitness = _xyo_network_payload_model.SchemaFields & _xyo_network_payload_model.PayloadFields & Omit<_xyo_network_boundwitness_model.BoundWitnessFields & {
58
+ additional?: _xylabs_hex.Hash[];
59
+ query: _xylabs_hex.Hash;
60
+ resultSet?: string;
61
+ schema: _xyo_network_boundwitness_model.QueryBoundWitnessSchema;
62
+ }, "schema"> & {
63
+ schema: "network.xyo.boundwitness";
64
+ }>(mod: Module, query: T, payloads?: Payload[]) => Promise<boolean>;
65
+ declare class SupportedQueryValidator implements QueryValidator {
66
+ protected readonly mod: Module;
67
+ constructor(mod: Module);
68
+ queryable: Queryable;
69
+ }
70
+
71
+ declare abstract class AbstractModule<TParams extends ModuleParams = ModuleParams, TEventData extends ModuleEventData = ModuleEventData> extends BaseEmitter<TParams, TEventData> implements Module<TParams, TEventData> {
72
+ static readonly allowRandomAccount: boolean;
73
+ static readonly configSchemas: Schema[];
74
+ static readonly defaultConfigSchema: Schema;
75
+ static defaultLogger: Logger;
76
+ static enableLazyLoad: boolean;
77
+ static readonly labels: Labels;
78
+ static readonly uniqueName: string;
79
+ protected static privateConstructorKey: string;
80
+ protected _account: AccountInstance;
81
+ protected _cachedManifests: LRUCache<number, (_xyo_network_payload_model.SchemaFields & _xyo_network_payload_model.PayloadFields & _xyo_network_manifest_model.ModuleManifest & {
82
+ schema: "network.xyo.module.manifest";
83
+ }) | (_xyo_network_payload_model.SchemaFields & _xyo_network_payload_model.PayloadFields & _xyo_network_manifest_model.ModuleManifest & {
84
+ schema: "network.xyo.node.manifest";
85
+ }), unknown>;
86
+ protected _lastError?: ModuleDetailsError;
87
+ protected _startPromise: Promisable<boolean> | undefined;
88
+ protected _started: Promisable<boolean> | undefined;
89
+ protected readonly moduleConfigQueryValidator: Queryable;
90
+ protected readonly supportedQueryValidator: Queryable;
91
+ private _busyCount;
92
+ private _logger;
93
+ private _status;
94
+ constructor(privateConstructorKey: string, params: TParams, account: AccountInstance);
95
+ get account(): AccountInstance;
96
+ get additionalSigners(): AccountInstance[];
97
+ get address(): Lowercase<string>;
98
+ get allowAnonymous(): boolean;
99
+ get allowNameResolution(): boolean;
100
+ get archiving(): ArchivingModuleConfig['archiving'] | undefined;
101
+ get archivist(): string | undefined;
102
+ get config(): TParams['config'];
103
+ get dead(): boolean;
104
+ get ephemeralQueryAccountEnabled(): boolean;
105
+ get id(): string;
106
+ get logger(): Logger;
107
+ get modName(): string | undefined;
108
+ get priority(): ObjectResolverPriority;
109
+ get queries(): Schema[];
110
+ get status(): ModuleStatus;
111
+ get timestamp(): boolean;
112
+ protected set status(value: ModuleStatus);
113
+ abstract get downResolver(): ModuleResolverInstance;
114
+ abstract get upResolver(): ModuleResolverInstance;
115
+ static _getRootFunction(funcName: string): any;
116
+ static _noOverride(functionName: string): void;
117
+ static create<TModule extends AttachableModuleInstance>(this: CreatableModule<TModule>, params?: Omit<TModule['params'], 'config'> & {
118
+ config?: TModule['params']['config'];
119
+ }): Promise<TModule>;
120
+ static determineAccount(params: {
121
+ account?: AccountInstance | 'random';
122
+ accountPath?: string;
123
+ wallet?: WalletInstance;
124
+ }): Promise<AccountInstance>;
125
+ static factory<TModule extends AttachableModuleInstance>(this: CreatableModule<TModule>, params?: Omit<TModule['params'], 'config'> & {
126
+ config?: TModule['params']['config'];
127
+ }): CreatableModuleFactory<TModule>;
128
+ _getRootFunction(funcName: string): any;
129
+ busy<R>(closure: () => Promise<R>): Promise<R>;
130
+ emit<TEventName extends keyof TEventData = keyof TEventData, TEventArgs extends TEventData[TEventName] = TEventData[TEventName]>(eventName: TEventName, eventArgs: TEventArgs): Promise<void>;
131
+ previousHash(): Promisable<string | undefined>;
132
+ query<T extends QueryBoundWitness = QueryBoundWitness, TConfig extends ModuleConfig = ModuleConfig>(query: T, payloads?: Payload[], queryConfig?: TConfig): Promise<ModuleQueryResult>;
133
+ queryable<T extends QueryBoundWitness = QueryBoundWitness, TConfig extends ModuleConfig = ModuleConfig>(query: T, payloads?: Payload[], queryConfig?: TConfig): Promise<boolean>;
134
+ start(_timeout?: number): Promisable<boolean>;
135
+ started(notStartedAction?: 'error' | 'throw' | 'warn' | 'log' | 'none', tryStart?: boolean): Promise<boolean>;
136
+ stop(_timeout?: number): Promise<boolean>;
137
+ protected _checkDead(): void;
138
+ protected _noOverride(functionName: string): void;
139
+ protected archivistInstance(): Promise<ArchivistInstance | undefined>;
140
+ protected archivistInstance(required: true): Promise<ArchivistInstance>;
141
+ protected bindHashes(hashes: Hash[], schema: Schema[], account?: AccountInstance): PromiseEx<unknown, AccountInstance>;
142
+ protected bindHashesInternal(hashes: Hash[], schema: Schema[], account?: AccountInstance): Promise<BoundWitness>;
143
+ protected bindQuery<T extends Query>(query: T, payloads?: Payload[], account?: AccountInstance, additionalSigners?: AccountInstance[]): PromiseEx<[WithMeta<QueryBoundWitness>, WithMeta<Payload>[], WithMeta<Payload>[]], AccountInstance>;
144
+ protected bindQueryInternal<T extends Query>(query: T, payloads?: Payload[], account?: AccountInstance, additionalSigners?: AccountInstance[]): Promise<[WithMeta<QueryBoundWitness>, WithMeta<Payload>[], WithMeta<Payload>[]]>;
145
+ protected bindQueryResult<T extends Query>(query: WithMeta<T>, payloads: Payload[], additionalWitnesses?: AccountInstance[], errors?: ModuleError[]): Promise<ModuleQueryResult>;
146
+ protected generateConfigAndAddress(_maxDepth?: number): Promise<Payload[]>;
147
+ protected generateDescribe(): Promise<ModuleDescriptionPayload>;
148
+ protected getArchivist(): Promise<ArchivistInstance | undefined>;
149
+ protected isAllowedArchivingQuery(schema: Schema): boolean;
150
+ protected manifestHandler(_maxDepth?: number, _ignoreAddresses?: Address[]): Promisable<ModuleManifestPayload>;
151
+ protected moduleAddressHandler(): Promisable<(AddressPreviousHashPayload | AddressPayload)[]>;
152
+ protected queryHandler<T extends QueryBoundWitness = QueryBoundWitness, TConfig extends ModuleConfig = ModuleConfig>(query: T, payloads?: Payload[], queryConfig?: TConfig): Promise<ModuleQueryHandlerResult>;
153
+ protected startHandler(): Promise<boolean>;
154
+ protected stateHandler(): Promise<Payload[]>;
155
+ protected stopHandler(_timeout?: number): Promisable<boolean>;
156
+ protected subscribeHandler(): void;
157
+ protected validateConfig(config?: unknown, parents?: string[]): boolean;
158
+ protected abstract certifyParents(): Promise<WithMeta<Payload>[]>;
159
+ protected abstract storeToArchivists(payloads: Payload[]): Promise<Payload[]>;
160
+ }
161
+
162
+ declare abstract class AbstractModuleInstance<TParams extends ModuleParams = ModuleParams, TEventData extends ModuleEventData = ModuleEventData> extends AbstractModule<TParams, TEventData> implements AttachableModuleInstance<TParams, TEventData>, ModuleNameResolver {
163
+ static readonly uniqueName: string;
164
+ static readonly useNewResolver = false;
165
+ private _downResolver?;
166
+ private _parents;
167
+ private _privateResolver?;
168
+ private _upResolver?;
169
+ constructor(privateConstructorKey: string, params: TParams, account: AccountInstance);
170
+ get downResolver(): CompositeModuleResolver<_xyo_network_module_resolver.CompositeModuleResolverParams>;
171
+ get modName(): string | undefined;
172
+ get moduleIdentifierTransformers(): _xyo_network_module_model.ModuleIdentifierTransformer[];
173
+ get privateResolver(): CompositeModuleResolver<_xyo_network_module_resolver.CompositeModuleResolverParams>;
174
+ get root(): this;
175
+ get upResolver(): CompositeModuleResolver<_xyo_network_module_resolver.CompositeModuleResolverParams>;
176
+ addParent(mod: ModuleInstance): void;
177
+ certifyParents(): Promise<WithMeta<Payload>[]>;
178
+ manifest(maxDepth?: number): Promise<ModuleManifestPayload>;
179
+ manifestQuery(account: AccountInstance, maxDepth?: number): Promise<ModuleQueryResult<ModuleManifestPayload>>;
180
+ moduleAddress(): Promise<(AddressPayload | AddressPreviousHashPayload)[]>;
181
+ parents(): Promisable<NodeInstance[]>;
182
+ privateChildren(): Promisable<ModuleInstance[]>;
183
+ publicChildren(): Promisable<ModuleInstance[]>;
184
+ removeParent(address: Address): void;
185
+ resolve(): Promise<ModuleInstance[]>;
186
+ resolve<T extends ModuleInstance = ModuleInstance>(all: '*', options?: ModuleFilterOptions<T>): Promise<T[]>;
187
+ resolve<T extends ModuleInstance = ModuleInstance>(filter: ModuleFilter, options?: ModuleFilterOptions<T>): Promise<T[]>;
188
+ resolve<T extends ModuleInstance = ModuleInstance>(id: ModuleIdentifier, options?: ModuleFilterOptions<T>): Promise<T | undefined>;
189
+ resolve<T extends ModuleInstance = ModuleInstance>(filter?: ModuleFilter, options?: ModuleFilterOptions<T>): Promise<T[]>;
190
+ resolveIdentifier(id: ModuleIdentifier, options?: ObjectFilterOptions): Promise<Address | undefined>;
191
+ resolvePrivate<T extends ModuleInstance = ModuleInstance>(all: '*', options?: ModuleFilterOptions<T>): Promise<T[]>;
192
+ resolvePrivate<T extends ModuleInstance = ModuleInstance>(id: ModuleIdentifier, options?: ModuleFilterOptions<T>): Promise<T | undefined>;
193
+ siblings(): Promise<ModuleInstance[]>;
194
+ state(): Promise<({
195
+ schema: string;
196
+ } & _xyo_network_payload_model.PayloadFields)[]>;
197
+ stateQuery(account: AccountInstance): Promise<ModuleQueryResult>;
198
+ subscribe(_queryAccount?: AccountInstance): void;
199
+ protected manifestHandler(maxDepth?: number, _ignoreAddresses?: Address[]): Promise<ModuleManifestPayload>;
200
+ protected resolveArchivingArchivists(): Promise<ArchivistInstance[]>;
201
+ protected sendQuery<T extends Query, P extends Payload = Payload, R extends Payload = Payload>(queryPayload: T, payloads?: P[], account?: AccountInstance): Promise<WithMeta<R>[]>;
202
+ protected sendQueryRaw<T extends Query, P extends Payload = Payload, R extends Payload = Payload>(queryPayload: T, payloads?: P[], account?: AccountInstance): Promise<ModuleQueryResult<R>>;
203
+ protected storeToArchivists(payloads: Payload[]): Promise<Payload[]>;
204
+ }
205
+
206
+ declare class ModuleErrorBuilder extends PayloadBuilder<ModuleError> {
207
+ _details?: JsonValue;
208
+ _message?: string;
209
+ _name?: string;
210
+ _query?: Hash;
211
+ _sources?: Hash[];
212
+ constructor();
213
+ build(): Promise<WithMeta<ModuleError>>;
214
+ details(details?: JsonValue): this;
215
+ message(message: string): this;
216
+ name(name: string): this;
217
+ query(query: Hash): this;
218
+ sources(sources: Hash[]): this;
219
+ }
220
+
221
+ export { AbstractModule, AbstractModuleInstance, BaseEmitter, ModuleConfigQueryValidator, ModuleErrorBuilder, type QueryValidator, type Queryable, type SortedPipedAddressesString, SupportedQueryValidator, isQuerySupportedByModule };