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>(
        this: CreatableModule<T>,
        params: T["params"],
    ): Promise<T>;
    factory<T extends AttachableModuleInstance>(
        this: CreatableModule<T>,
        params: T["params"],
    ): CreatableModuleFactory<T>;
}

Type Parameters

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