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

    Interface CreatableModule<T>

    interface CreatableModule<
        T extends AttachableModuleInstance = AttachableModuleInstance,
    > {
        new CreatableModule(
            privateConstructorKey: string,
            params: T["params"],
            account: AccountInstance,
            address: Lowercase<string>,
        ): T;
        configSchemas: string[];
        defaultConfigSchema: string;
        defaultLogger?: Logger;
        _noOverride(functionName: string): void;
        create<
            T extends
                AttachableModuleInstance<
                    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<object>,
                        >[];
                        publicChildren?: ModuleInstance<
                            (
                                BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }
                            ),
                            ModuleEventData<object>,
                        >[];
                    },
                    ModuleEventData<object>,
                >,
        >(
            this: CreatableModule<T>,
            params: T["params"],
        ): Promise<T>;
        factory<
            T extends
                AttachableModuleInstance<
                    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<object>,
                        >[];
                        publicChildren?: ModuleInstance<
                            (
                                BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }
                            ),
                            ModuleEventData<object>,
                        >[];
                    },
                    ModuleEventData<object>,
                >,
        >(
            this: CreatableModule<T>,
            params: T["params"],
        ): CreatableModuleFactory<T>;
    }

    Type Parameters

    Index

    Constructors

    • Parameters

      • privateConstructorKey: string
      • params: T["params"]
      • account: AccountInstance
      • address: Lowercase<string>

      Returns T

    Properties

    configSchemas: string[]
    defaultConfigSchema: string
    defaultLogger?: Logger

    Methods

    • Parameters

      • functionName: string

      Returns void

    • Type Parameters

      • T extends AttachableModuleInstance<
            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<object>,
                >[];
                publicChildren?: ModuleInstance<
                    (
                        BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }
                    ),
                    ModuleEventData<object>,
                >[];
            },
            ModuleEventData<object>,
        >

      Parameters

      Returns Promise<T>

    • Type Parameters

      • T extends AttachableModuleInstance<
            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<object>,
                >[];
                publicChildren?: ModuleInstance<
                    (
                        BaseParamsFields & { account?: AccountInstance | "random" | undefined; addToResolvers?: boolean | undefined; additionalSigners?: AccountInstance[] | undefined; ... 5 more ...; publicChildren?: ModuleInstance<...>[] | undefined; }
                    ),
                    ModuleEventData<object>,
                >[];
            },
            ModuleEventData<object>,
        >

      Parameters

      Returns CreatableModuleFactory<T>