Skip to main content

registerModule()

function registerModule(config: ModuleConfig): Module;

Defined in: src/lib/module/index.ts:291

Register a module with its services and lifecycle hooks.

Returns a Module object that should be the default export of the module file. The runtime imports these modules and manages their lifecycle.

Parameters​

ParameterTypeDescription
configModuleConfigModule configuration including services and lifecycle hooks.

Returns​

Module

Module handle to export from the module file.

Example​

// modules/my-feature/module.ts
import { registerModule } from "@core/module";
import { MyService } from "@modules/my-feature/my.service";
 
export default registerModule({
    name: "my-feature",
    dependencies: ["characters"],
    services: [MyService],
    huds: [
        {
            panel: () => import("@modules/my-feature/huds/my-hud/Panel").then(m => m.default),
            hudPosition: "bottom-left",
        },
    ],
    onStart: () => console.log("Started"),
    onStop: () => console.log("Stopped"),
});