Skip to main content

ModuleConfig

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

Module configuration options.

Properties

PropertyTypeDescriptionDefined in
dependencies?string[]Module dependencies (names of other modules that must start first).src/lib/module/index.ts:161
huds?HudDefinition[]HUD features for persistent overlay elements (e.g., health bar, minimap). Example huds: [ { panel: () => import("@modules/core/needs/huds/status/Panel").then(m => m.default), hudPosition: "bottom-left", hudPriority: -10, }, ]src/lib/module/index.ts:194
namestringModule name, used for RPC context generation and logging.src/lib/module/index.ts:156
onStart?(module: ModuleHandle) => void | Promise<void>Called when the module starts, after all services are registered. Receives the module handle for accessing services. Can be async.src/lib/module/index.ts:201
onStop?(module: ModuleHandle) => void | Promise<void>Called when the module stops, before services are unregistered. Receives the module handle for accessing services. Can be async.src/lib/module/index.ts:208
pages?Record<string, PageDefinition>Page features for full-screen UI routes (e.g., ATM interface, inventory). Keys are route names, values are page definitions. Example pages: { "atm-interface": { panel: () => import("@modules/features/atm/pages/atm-interface/Page").then(m => m.default), }, }src/lib/module/index.ts:180
services?ServiceClass<unknown>[]Service classes to instantiate and register. Services with RPC decorators will have their handlers registered automatically.src/lib/module/index.ts:167