import { type ModuleCallbacks } from "../types"; import { ModuleLifecycle } from "./module-lifecycle"; import type { ModuleManifest } from "./module-manifest"; export type ModuleLoader = (mainPath: string) => Promise; export declare class Module { readonly manifest: ModuleManifest; private loader; readonly id: string; version: string; private callbacks?; private lifecycle; constructor(manifest: ModuleManifest, loader?: ModuleLoader); get state(): ModuleLifecycle["state"]; reload(): Promise; construct(config: unknown): Promise; start(): void; stop(): Promise; destroy(): Promise; }