interface AttachableArchivistInstance< TParams extends ArchivistParams = ArchivistParams, TEventData extends ArchivistModuleEventData = ArchivistModuleEventData, TPayload extends Payload = Payload,> { account?: AccountInstance; addParent: (mod: ModuleInstance) => void; address: Lowercase<string>; addressCache?: ( direction: Direction, includePrivate: boolean, ) => undefined | AddressToWeakInstanceCache; config: TParams["config"]; downResolver: ModuleResolverInstance; eventData: TEventData; id: string; manifest: ( maxDepth?: number, ignoreAddresses?: Lowercase<string>[], ) => Promisable<ModuleManifestPayload>; manifestQuery: ( account: AccountInstance, maxDepth?: number, ignoreAddresses?: Lowercase<string>[], ) => Promisable< ModuleQueryResult<ModuleManifestPayload, ModuleError, BoundWitness>, >; modName?: string; moduleAddress: () => Promisable< (
AddressPreviousHashPayload | AddressPayload)
[], >; params: TParams; parents: () => Promisable< ModuleInstance< BaseParamsFields & { account?: AccountInstance | "random"; additionalSigners?: AccountInstance[]; addToResolvers?: boolean; allowNameResolution?: boolean; config: AnyConfigSchema<ModuleConfig<void, void>>; ephemeralQueryAccountEnabled?: boolean; moduleIdentifierTransformers?: ModuleIdentifierTransformer[]; privateChildren?: ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>[]
; publicChildren?: ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>[]
; }, ModuleEventData<object>, >[], >; pipeline?: "one-to-one" | "one-to-many" | "many-to-one" | "many-to-many"; previousHash: () => Promisable<undefined | string>; priority: ObjectResolverPriority; privateChildren: () => Promisable< ModuleInstance< BaseParamsFields & { account?: AccountInstance | "random"; additionalSigners?: AccountInstance[]; addToResolvers?: boolean; allowNameResolution?: boolean; config: AnyConfigSchema<ModuleConfig<void, void>>; ephemeralQueryAccountEnabled?: boolean; moduleIdentifierTransformers?: ModuleIdentifierTransformer[]; privateChildren?: ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>[]
; publicChildren?: ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>[]
; }, ModuleEventData<object>, >[], >; privateResolver: ModuleResolverInstance; publicChildren: () => Promisable< ModuleInstance< BaseParamsFields & { account?: AccountInstance | "random"; additionalSigners?: AccountInstance[]; addToResolvers?: boolean; allowNameResolution?: boolean; config: AnyConfigSchema<ModuleConfig<void, void>>; ephemeralQueryAccountEnabled?: boolean; moduleIdentifierTransformers?: ModuleIdentifierTransformer[]; privateChildren?: ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>[]
; publicChildren?: ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>[]
; }, ModuleEventData<object>, >[], >; queries: string[]; query: < T extends UnsignedQueryBoundWitness = UnsignedQueryBoundWitness, TConf extends ModuleConfig<void, void> = ModuleConfig<void, void>, >( query: T, payloads?: Payload[], queryConfig?: TConf, ) => Promisable<ModuleQueryResult<Payload, ModuleError, BoundWitness>>; queryable: < T extends UnsignedQueryBoundWitness = UnsignedQueryBoundWitness, TConf extends ModuleConfig<void, void> = ModuleConfig<void, void>, >( query: T, payloads?: Payload[], queryConfig?: TConf, ) => Promisable<boolean>; removeParent: (address: Lowercase<string>) => void; siblings: () => Promisable< ModuleInstance< BaseParamsFields & { account?: AccountInstance | "random"; additionalSigners?: AccountInstance[]; addToResolvers?: boolean; allowNameResolution?: boolean; config: AnyConfigSchema<ModuleConfig<void, void>>; ephemeralQueryAccountEnabled?: boolean; moduleIdentifierTransformers?: ModuleIdentifierTransformer[]; privateChildren?: ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>[]
; publicChildren?: ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>[]
; }, ModuleEventData<object>, >[], >; start?: () => Promisable<boolean>; state: () => Promisable<Payload[]>; stateQuery: ( account: AccountInstance, ) => Promisable<ModuleQueryResult<Payload, ModuleError, BoundWitness>>; status: ModuleStatus; stop?: () => Promisable<boolean>; upResolver: ModuleResolverInstance; all(): PromisableArray<WithStorageMeta<WithStorageMeta<TPayload>>>; allQuery(account?: AccountInstance): Promisable<ModuleQueryResult>; clear(): Promisable<void>; clearListeners(eventNames: keyof TEventData | (
keyof TEventData)
[]): void; clearQuery(account?: AccountInstance): Promisable<ModuleQueryResult>; commit(): PromisableArray<TPayload>; commitQuery(account?: AccountInstance): Promisable<ModuleQueryResult>; delete(ids: Lowercase<string>[]): PromisableArray<Lowercase<string>>; deleteQuery( hashes: Lowercase<string>[], account?: AccountInstance, ): Promisable<ModuleQueryResult>; emit<TEventName extends string | number | symbol>( eventName: TEventName, eventArgs: TEventData[TEventName], ): Promise<void>; emitSerial<TEventName extends string | number | symbol>( eventName: TEventName, eventArgs: TEventData[TEventName], ): Promise<void>; get( ids: Lowercase<string>[], ): PromisableArray<WithStorageMeta<WithStorageMeta<TPayload>>>; getQuery( hashes: Lowercase<string>[], account?: AccountInstance, ): Promisable<ModuleQueryResult>; insert( item: (
TPayload & DeepRestrictToStringKeys< SchemaFields & PayloadFields & { schema: string }, > & Partial<PayloadMetaFields> )
[], ): PromisableArray<WithStorageMeta<TPayload>>; insertQuery( payloads: Payload[], account?: AccountInstance, ): Promisable<ModuleQueryResult>; listenerCount(eventNames: keyof TEventData | (
keyof TEventData)
[]): number; next( options?: NextOptions<Lowercase<string>>, ): PromisableArray<WithStorageMeta<WithStorageMeta<TPayload>>>; nextQuery( options?: ArchivistNextOptions, account?: AccountInstance, ): Promisable<ModuleQueryResult>; off<TEventName extends string | number | symbol>( eventNames: TEventName | TEventName[], listener: EventListener<TEventData[TEventName]>, ): void; offAny(listener: Promise<void> | EventAnyListener<EventArgs>): void; on<TEventName extends string | number | symbol>( eventNames: TEventName | TEventName[], listener: EventListener<TEventData[TEventName]>, ): EventUnsubscribeFunction; onAny(listener: EventAnyListener): EventUnsubscribeFunction; once<TEventName extends string | number | symbol>( eventName: TEventName, listener: EventListener<TEventData[TEventName]>, ): EventUnsubscribeFunction; resolve< T extends ModuleInstance< BaseParamsFields & { account?: AccountInstance | "random"; additionalSigners?: AccountInstance[]; addToResolvers?: boolean; allowNameResolution?: boolean; config: AnyConfigSchema<ModuleConfig<void, void>>; ephemeralQueryAccountEnabled?: boolean; moduleIdentifierTransformers?: ModuleIdentifierTransformer[]; privateChildren?: (
ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>
)
[]; publicChildren?: (
ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>
)
[]; }, ModuleEventData<object>, > = ModuleInstance< BaseParamsFields & { account?: AccountInstance | "random"; additionalSigners?: AccountInstance[]; addToResolvers?: boolean; allowNameResolution?: boolean; config: AnyConfigSchema<ModuleConfig<void, void>>; ephemeralQueryAccountEnabled?: boolean; moduleIdentifierTransformers?: ModuleIdentifierTransformer[]; privateChildren?: (
ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>
)
[]; publicChildren?: (
ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>
)
[]; }, ModuleEventData<object>, >, >(): Promisable<undefined | T>; resolve< T extends ModuleInstance< BaseParamsFields & { account?: AccountInstance | "random"; additionalSigners?: AccountInstance[]; addToResolvers?: boolean; allowNameResolution?: boolean; config: AnyConfigSchema<ModuleConfig<void, void>>; ephemeralQueryAccountEnabled?: boolean; moduleIdentifierTransformers?: ModuleIdentifierTransformer[]; privateChildren?: (
ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>
)
[]; publicChildren?: (
ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>
)
[]; }, ModuleEventData<object>, > = ModuleInstance< BaseParamsFields & { account?: AccountInstance | "random"; additionalSigners?: AccountInstance[]; addToResolvers?: boolean; allowNameResolution?: boolean; config: AnyConfigSchema<ModuleConfig<void, void>>; ephemeralQueryAccountEnabled?: boolean; moduleIdentifierTransformers?: ModuleIdentifierTransformer[]; privateChildren?: (
ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>
)
[]; publicChildren?: (
ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>
)
[]; }, ModuleEventData<object>, >, >( all: "*", options?: ObjectFilterOptions<T>, ): Promisable<T[]>; resolve< T extends ModuleInstance< BaseParamsFields & { account?: AccountInstance | "random"; additionalSigners?: AccountInstance[]; addToResolvers?: boolean; allowNameResolution?: boolean; config: AnyConfigSchema<ModuleConfig<void, void>>; ephemeralQueryAccountEnabled?: boolean; moduleIdentifierTransformers?: ModuleIdentifierTransformer[]; privateChildren?: (
ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>
)
[]; publicChildren?: (
ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>
)
[]; }, ModuleEventData<object>, > = ModuleInstance< BaseParamsFields & { account?: AccountInstance | "random"; additionalSigners?: AccountInstance[]; addToResolvers?: boolean; allowNameResolution?: boolean; config: AnyConfigSchema<ModuleConfig<void, void>>; ephemeralQueryAccountEnabled?: boolean; moduleIdentifierTransformers?: ModuleIdentifierTransformer[]; privateChildren?: (
ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>
)
[]; publicChildren?: (
ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>
)
[]; }, ModuleEventData<object>, >, >( id: string, options?: ObjectFilterOptions<T>, ): Promisable<undefined | T>; resolve< T extends ModuleInstance< BaseParamsFields & { account?: AccountInstance | "random"; additionalSigners?: AccountInstance[]; addToResolvers?: boolean; allowNameResolution?: boolean; config: AnyConfigSchema<ModuleConfig<void, void>>; ephemeralQueryAccountEnabled?: boolean; moduleIdentifierTransformers?: ModuleIdentifierTransformer[]; privateChildren?: (
ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>
)
[]; publicChildren?: (
ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>
)
[]; }, ModuleEventData<object>, > = ModuleInstance< BaseParamsFields & { account?: AccountInstance | "random"; additionalSigners?: AccountInstance[]; addToResolvers?: boolean; allowNameResolution?: boolean; config: AnyConfigSchema<ModuleConfig<void, void>>; ephemeralQueryAccountEnabled?: boolean; moduleIdentifierTransformers?: ModuleIdentifierTransformer[]; privateChildren?: (
ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>
)
[]; publicChildren?: (
ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>
)
[]; }, ModuleEventData<object>, >, >( id?: string, options?: ObjectFilterOptions<T>, ): Promisable<undefined | T | T[]>; resolvePrivate< T extends ModuleInstance< BaseParamsFields & { account?: AccountInstance | "random"; additionalSigners?: AccountInstance[]; addToResolvers?: boolean; allowNameResolution?: boolean; config: AnyConfigSchema<ModuleConfig<void, void>>; ephemeralQueryAccountEnabled?: boolean; moduleIdentifierTransformers?: ModuleIdentifierTransformer[]; privateChildren?: (
ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>
)
[]; publicChildren?: (
ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>
)
[]; }, ModuleEventData<object>, > = ModuleInstance< BaseParamsFields & { account?: AccountInstance | "random"; additionalSigners?: AccountInstance[]; addToResolvers?: boolean; allowNameResolution?: boolean; config: AnyConfigSchema<ModuleConfig<void, void>>; ephemeralQueryAccountEnabled?: boolean; moduleIdentifierTransformers?: ModuleIdentifierTransformer[]; privateChildren?: (
ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>
)
[]; publicChildren?: (
ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>
)
[]; }, ModuleEventData<object>, >, >( all: "*", options?: ObjectFilterOptions<T>, ): Promise<T[]>; resolvePrivate< T extends ModuleInstance< BaseParamsFields & { account?: AccountInstance | "random"; additionalSigners?: AccountInstance[]; addToResolvers?: boolean; allowNameResolution?: boolean; config: AnyConfigSchema<ModuleConfig<void, void>>; ephemeralQueryAccountEnabled?: boolean; moduleIdentifierTransformers?: ModuleIdentifierTransformer[]; privateChildren?: (
ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>
)
[]; publicChildren?: (
ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>
)
[]; }, ModuleEventData<object>, > = ModuleInstance< BaseParamsFields & { account?: AccountInstance | "random"; additionalSigners?: AccountInstance[]; addToResolvers?: boolean; allowNameResolution?: boolean; config: AnyConfigSchema<ModuleConfig<void, void>>; ephemeralQueryAccountEnabled?: boolean; moduleIdentifierTransformers?: ModuleIdentifierTransformer[]; privateChildren?: (
ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>
)
[]; publicChildren?: (
ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>
)
[]; }, ModuleEventData<object>, >, >( id: string, options?: ObjectFilterOptions<T>, ): Promise<undefined | T>; resolvePrivate< T extends ModuleInstance< BaseParamsFields & { account?: AccountInstance | "random"; additionalSigners?: AccountInstance[]; addToResolvers?: boolean; allowNameResolution?: boolean; config: AnyConfigSchema<ModuleConfig<void, void>>; ephemeralQueryAccountEnabled?: boolean; moduleIdentifierTransformers?: ModuleIdentifierTransformer[]; privateChildren?: (
ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>
)
[]; publicChildren?: (
ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>
)
[]; }, ModuleEventData<object>, > = ModuleInstance< BaseParamsFields & { account?: AccountInstance | "random"; additionalSigners?: AccountInstance[]; addToResolvers?: boolean; allowNameResolution?: boolean; config: AnyConfigSchema<ModuleConfig<void, void>>; ephemeralQueryAccountEnabled?: boolean; moduleIdentifierTransformers?: ModuleIdentifierTransformer[]; privateChildren?: (
ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>
)
[]; publicChildren?: (
ModuleInstance<BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }, ModuleEventData<...>>
)
[]; }, ModuleEventData<object>, >, >( id: string, options?: ObjectFilterOptions<T>, ): Promise<undefined | T | T[]>;}