import { Observable } from "rxjs"; import { IModStatus } from "../appstate/modstate"; export interface IModSpec { id: string; initFn: () => Promise; dependencies: string[]; } export declare class ModAPI { protected modInitFns: Map Promise>; protected loadedModsMap: Map; protected modDependencies: Map; getModData(id: string): Observable; addModInitFn(modSpec: IModSpec): void; addRequiredMod(modId: string): void; setModLoadingComplete(modId: string): void; checkDependencies(modId: string): boolean; getDepenciesfor(modId: string): string[]; isRequiredLoadingComplete(): boolean; }