XYO Platform SDK - v3.10.6
    Preparing search index...

    Interface AttachableDivinerInstance<TParams, TIn, TOut, TEventData>

    interface AttachableDivinerInstance<
        TParams extends DivinerParams = DivinerParams,
        TIn extends Payload = Payload,
        TOut extends Payload = Payload,
        TEventData extends DivinerModuleEventData = DivinerModuleEventData,
    > {
        account?: AccountInstance;
        addParent: (mod: ModuleInstance) => void;
        address: Lowercase<string>;
        addressCache?: (
            direction: Direction,
            includePrivate: boolean,
        ) => undefined | AddressToWeakInstanceCache;
        config: TParams["config"];
        divine: (
            payloads?: TIn[],
            retry?: RetryConfig,
        ) => Promise<DeepOmitStartsWith<TOut, "__">[]>;
        divineQuery: (
            payloads?: TIn[],
            account?: AccountInstance,
            retry?: RetryConfig,
        ) => Promise<ModuleQueryResult<TOut>>;
        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>>;
        modName?: string;
        moduleAddress: () => Promisable<
            (AddressPreviousHashPayload | AddressPayload)[],
        >;
        params: TParams;
        parents: () => Promisable<
            ModuleInstance<
                BaseParamsFields & {
                    account?: AccountInstance
                    | "random";
                    additionalSigners?: AccountInstance[];
                    addToResolvers?: boolean;
                    allowNameResolution?: boolean;
                    config: AnyConfigSchema<ModuleConfig>;
                    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>;
                    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>;
                    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 = ModuleConfig,
        >(
            query: T,
            payloads?: Payload[],
            queryConfig?: TConf,
        ) => Promisable<ModuleQueryResult>;
        queryable: <
            T extends UnsignedQueryBoundWitness = UnsignedQueryBoundWitness,
            TConf extends ModuleConfig = ModuleConfig,
        >(
            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>;
                    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>;
        status: ModuleStatus;
        stop?: () => Promisable<boolean>;
        upResolver: ModuleResolverInstance;
        clearListeners(eventNames: keyof TEventData | (keyof TEventData)[]): void;
        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>;
        listenerCount(eventNames: keyof TEventData | (keyof TEventData)[]): number;
        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>;
                        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>;
                    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>;
                        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>;
                    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>;
                        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>;
                    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>;
                        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>;
                    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>;
                        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>;
                    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>;
                        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>;
                    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>;
                        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>;
                    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[]>;
    }

    Type Parameters

    Hierarchy (View Summary)

    Index

    Properties

    account?: AccountInstance
    addParent: (mod: ModuleInstance) => void
    address: Lowercase<string>
    addressCache?: (
        direction: Direction,
        includePrivate: boolean,
    ) => undefined | AddressToWeakInstanceCache
    config: TParams["config"]
    divine: (
        payloads?: TIn[],
        retry?: RetryConfig,
    ) => Promise<DeepOmitStartsWith<TOut, "__">[]>
    divineQuery: (
        payloads?: TIn[],
        account?: AccountInstance,
        retry?: RetryConfig,
    ) => Promise<ModuleQueryResult<TOut>>
    eventData: TEventData
    id: string

    The name (if specified) or address of the module

    manifest: (
        maxDepth?: number,
        ignoreAddresses?: Lowercase<string>[],
    ) => Promisable<ModuleManifestPayload>
    manifestQuery: (
        account: AccountInstance,
        maxDepth?: number,
        ignoreAddresses?: Lowercase<string>[],
    ) => Promisable<ModuleQueryResult<ModuleManifestPayload>>
    modName?: string
    moduleAddress: () => Promisable<(AddressPreviousHashPayload | AddressPayload)[]>
    params: TParams
    parents: () => Promisable<
        ModuleInstance<
            BaseParamsFields & {
                account?: AccountInstance
                | "random";
                additionalSigners?: AccountInstance[];
                addToResolvers?: boolean;
                allowNameResolution?: boolean;
                config: AnyConfigSchema<ModuleConfig>;
                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>
    privateChildren: () => Promisable<
        ModuleInstance<
            BaseParamsFields & {
                account?: AccountInstance
                | "random";
                additionalSigners?: AccountInstance[];
                addToResolvers?: boolean;
                allowNameResolution?: boolean;
                config: AnyConfigSchema<ModuleConfig>;
                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>;
                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 = ModuleConfig,
    >(
        query: T,
        payloads?: Payload[],
        queryConfig?: TConf,
    ) => Promisable<ModuleQueryResult>
    queryable: <
        T extends UnsignedQueryBoundWitness = UnsignedQueryBoundWitness,
        TConf extends ModuleConfig = ModuleConfig,
    >(
        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>;
                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>
    status: ModuleStatus
    stop?: () => Promisable<boolean>

    Methods

    • Type Parameters

      • T extends ModuleInstance<
            BaseParamsFields & {
                account?: AccountInstance
                | "random";
                additionalSigners?: AccountInstance[];
                addToResolvers?: boolean;
                allowNameResolution?: boolean;
                config: AnyConfigSchema<ModuleConfig>;
                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>;
                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>,
        >

      Returns Promisable<undefined | T>

      do not pass undefined. If trying to get all, pass '*'

    • Type Parameters

      • T extends ModuleInstance<
            BaseParamsFields & {
                account?: AccountInstance
                | "random";
                additionalSigners?: AccountInstance[];
                addToResolvers?: boolean;
                allowNameResolution?: boolean;
                config: AnyConfigSchema<ModuleConfig>;
                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>;
                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>,
        >

      Parameters

      Returns Promisable<T[]>

    • Type Parameters

      • T extends ModuleInstance<
            BaseParamsFields & {
                account?: AccountInstance
                | "random";
                additionalSigners?: AccountInstance[];
                addToResolvers?: boolean;
                allowNameResolution?: boolean;
                config: AnyConfigSchema<ModuleConfig>;
                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>;
                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>,
        >

      Parameters

      Returns Promisable<undefined | T>

    • Type Parameters

      • T extends ModuleInstance<
            BaseParamsFields & {
                account?: AccountInstance
                | "random";
                additionalSigners?: AccountInstance[];
                addToResolvers?: boolean;
                allowNameResolution?: boolean;
                config: AnyConfigSchema<ModuleConfig>;
                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>;
                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>,
        >

      Parameters

      Returns Promisable<undefined | T | T[]>

    • Type Parameters

      • T extends ModuleInstance<
            BaseParamsFields & {
                account?: AccountInstance
                | "random";
                additionalSigners?: AccountInstance[];
                addToResolvers?: boolean;
                allowNameResolution?: boolean;
                config: AnyConfigSchema<ModuleConfig>;
                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>;
                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>,
        >

      Parameters

      Returns Promise<T[]>

    • Type Parameters

      • T extends ModuleInstance<
            BaseParamsFields & {
                account?: AccountInstance
                | "random";
                additionalSigners?: AccountInstance[];
                addToResolvers?: boolean;
                allowNameResolution?: boolean;
                config: AnyConfigSchema<ModuleConfig>;
                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>;
                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>,
        >

      Parameters

      Returns Promise<undefined | T>

    • Type Parameters

      • T extends ModuleInstance<
            BaseParamsFields & {
                account?: AccountInstance
                | "random";
                additionalSigners?: AccountInstance[];
                addToResolvers?: boolean;
                allowNameResolution?: boolean;
                config: AnyConfigSchema<ModuleConfig>;
                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>;
                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>,
        >

      Parameters

      Returns Promise<undefined | T | T[]>