Update types

This commit is contained in:
Dev 2024-03-25 13:13:03 +00:00
parent 89a199bc91
commit b742b2d228
216 changed files with 624 additions and 816 deletions

View File

@ -1,18 +1,13 @@
import { BundleLoader } from "@spt-aki/loaders/BundleLoader"; import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { IHttpConfig } from "@spt-aki/models/spt/config/IHttpConfig"; import { IHttpConfig } from "@spt-aki/models/spt/config/IHttpConfig";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { ConfigServer } from "@spt-aki/servers/ConfigServer"; import { ConfigServer } from "@spt-aki/servers/ConfigServer";
import { HttpFileUtil } from "@spt-aki/utils/HttpFileUtil";
import { HttpResponseUtil } from "@spt-aki/utils/HttpResponseUtil"; import { HttpResponseUtil } from "@spt-aki/utils/HttpResponseUtil";
export declare class BundleCallbacks { export declare class BundleCallbacks {
protected logger: ILogger;
protected httpResponse: HttpResponseUtil; protected httpResponse: HttpResponseUtil;
protected httpFileUtil: HttpFileUtil;
protected bundleLoader: BundleLoader; protected bundleLoader: BundleLoader;
protected configServer: ConfigServer; protected configServer: ConfigServer;
protected httpConfig: IHttpConfig; protected httpConfig: IHttpConfig;
constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpFileUtil: HttpFileUtil, bundleLoader: BundleLoader, configServer: ConfigServer); constructor(httpResponse: HttpResponseUtil, bundleLoader: BundleLoader, configServer: ConfigServer);
sendBundle(sessionID: string, req: any, resp: any, body: any): void;
/** /**
* Handle singleplayer/bundles * Handle singleplayer/bundles
*/ */

View File

@ -158,8 +158,9 @@ export declare class InraidController {
* Update profile with scav karma values based on in-raid actions * Update profile with scav karma values based on in-raid actions
* @param pmcData Pmc profile * @param pmcData Pmc profile
* @param offraidData Post-raid save request * @param offraidData Post-raid save request
* @param scavData Scav profile
*/ */
protected handlePostRaidPlayerScavKarmaChanges(pmcData: IPmcData, offraidData: ISaveProgressRequestData): void; protected handlePostRaidPlayerScavKarmaChanges(pmcData: IPmcData, offraidData: ISaveProgressRequestData, scavData: IPmcData): void;
/** /**
* Get the inraid config from configs/inraid.json * Get the inraid config from configs/inraid.json
* @returns InRaid Config * @returns InRaid Config

View File

@ -69,12 +69,6 @@ export declare class QuestController {
* @returns true = show to player * @returns true = show to player
*/ */
protected showEventQuestToPlayer(questId: string): boolean; protected showEventQuestToPlayer(questId: string): boolean;
/**
* Is the quest for the opposite side the player is on
* @param playerSide Player side (usec/bear)
* @param questId QuestId to check
*/
protected questIsForOtherSide(playerSide: string, questId: string): boolean;
/** /**
* Handle QuestAccept event * Handle QuestAccept event
* Handle the client accepting a quest and starting it * Handle the client accepting a quest and starting it

View File

@ -128,6 +128,12 @@ export declare class QuestHelper {
* @returns Quests accessible to player incuding newly unlocked quests now quest (startedQuestId) was started * @returns Quests accessible to player incuding newly unlocked quests now quest (startedQuestId) was started
*/ */
getNewlyAccessibleQuestsWhenStartingQuest(startedQuestId: string, sessionID: string): IQuest[]; getNewlyAccessibleQuestsWhenStartingQuest(startedQuestId: string, sessionID: string): IQuest[];
/**
* Is the quest for the opposite side the player is on
* @param playerSide Player side (usec/bear)
* @param questId QuestId to check
*/
questIsForOtherSide(playerSide: string, questId: string): boolean;
/** /**
* Get quests that can be shown to player after failing a quest * Get quests that can be shown to player after failing a quest
* @param failedQuestId Id of the quest failed by player * @param failedQuestId Id of the quest failed by player

View File

@ -59,7 +59,7 @@ export declare class TraderHelper {
/** /**
* Reset a profiles trader data back to its initial state as seen by a level 1 player * Reset a profiles trader data back to its initial state as seen by a level 1 player
* Does NOT take into account different profile levels * Does NOT take into account different profile levels
* @param sessionID session id * @param sessionID session id of player
* @param traderID trader id to reset * @param traderID trader id to reset
*/ */
resetTrader(sessionID: string, traderID: string): void; resetTrader(sessionID: string, traderID: string): void;
@ -74,13 +74,13 @@ export declare class TraderHelper {
* Alter a traders unlocked status * Alter a traders unlocked status
* @param traderId Trader to alter * @param traderId Trader to alter
* @param status New status to use * @param status New status to use
* @param sessionId Session id * @param sessionId Session id of player
*/ */
setTraderUnlockedState(traderId: string, status: boolean, sessionId: string): void; setTraderUnlockedState(traderId: string, status: boolean, sessionId: string): void;
/** /**
* Add standing to a trader and level them up if exp goes over level threshold * Add standing to a trader and level them up if exp goes over level threshold
* @param sessionId Session id * @param sessionId Session id of player
* @param traderId Traders id * @param traderId Traders id to add standing to
* @param standingToAdd Standing value to add to trader * @param standingToAdd Standing value to add to trader
*/ */
addStandingToTrader(sessionId: string, traderId: string, standingToAdd: number): void; addStandingToTrader(sessionId: string, traderId: string, standingToAdd: number): void;

View File

@ -1,7 +1,7 @@
import { HttpServerHelper } from "@spt-aki/helpers/HttpServerHelper"; import { HttpServerHelper } from "@spt-aki/helpers/HttpServerHelper";
import { JsonUtil } from "@spt-aki/utils/JsonUtil"; import { JsonUtil } from "@spt-aki/utils/JsonUtil";
import { VFS } from "@spt-aki/utils/VFS"; import { VFS } from "@spt-aki/utils/VFS";
declare class BundleInfo { export declare class BundleInfo {
modPath: string; modPath: string;
key: string; key: string;
path: string; path: string;
@ -30,4 +30,3 @@ export interface BundleManifestEntry {
key: string; key: string;
path: string; path: string;
} }
export {};

View File

@ -1,21 +1,17 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader"; import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader";
import { IModLoader } from "@spt-aki/models/spt/mod/IModLoader"; import { IModLoader } from "@spt-aki/models/spt/mod/IModLoader";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { LocalisationService } from "@spt-aki/services/LocalisationService"; import { LocalisationService } from "@spt-aki/services/LocalisationService";
import { VFS } from "@spt-aki/utils/VFS";
export declare class PostAkiModLoader implements IModLoader { export declare class PostAkiModLoader implements IModLoader {
protected logger: ILogger; protected logger: ILogger;
protected bundleLoader: BundleLoader;
protected vfs: VFS;
protected preAkiModLoader: PreAkiModLoader; protected preAkiModLoader: PreAkiModLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
constructor(logger: ILogger, bundleLoader: BundleLoader, vfs: VFS, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck); protected container: DependencyContainer;
constructor(logger: ILogger, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck);
getModPath(mod: string): string; getModPath(mod: string): string;
load(): Promise<void>; load(): Promise<void>;
protected executeMods(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
protected addBundles(): void;
} }

View File

@ -1,17 +1,21 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { OnLoad } from "@spt-aki/di/OnLoad"; import { OnLoad } from "@spt-aki/di/OnLoad";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader"; import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { LocalisationService } from "@spt-aki/services/LocalisationService"; import { LocalisationService } from "@spt-aki/services/LocalisationService";
export declare class PostDBModLoader implements OnLoad { export declare class PostDBModLoader implements OnLoad {
protected logger: ILogger; protected logger: ILogger;
protected bundleLoader: BundleLoader;
protected preAkiModLoader: PreAkiModLoader; protected preAkiModLoader: PreAkiModLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
constructor(logger: ILogger, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck); protected container: DependencyContainer;
constructor(logger: ILogger, bundleLoader: BundleLoader, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck);
onLoad(): Promise<void>; onLoad(): Promise<void>;
getRoute(): string; getRoute(): string;
getModPath(mod: string): string; getModPath(mod: string): string;
protected executeMods(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
protected addBundles(): void;
} }

View File

@ -1,5 +1,4 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModLoadOrder } from "@spt-aki/loaders/ModLoadOrder"; import { ModLoadOrder } from "@spt-aki/loaders/ModLoadOrder";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { ModDetails } from "@spt-aki/models/eft/profile/IAkiProfile"; import { ModDetails } from "@spt-aki/models/eft/profile/IAkiProfile";
@ -17,12 +16,11 @@ export declare class PreAkiModLoader implements IModLoader {
protected vfs: VFS; protected vfs: VFS;
protected jsonUtil: JsonUtil; protected jsonUtil: JsonUtil;
protected modCompilerService: ModCompilerService; protected modCompilerService: ModCompilerService;
protected bundleLoader: BundleLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected configServer: ConfigServer; protected configServer: ConfigServer;
protected modLoadOrder: ModLoadOrder; protected modLoadOrder: ModLoadOrder;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
protected static container: DependencyContainer; protected container: DependencyContainer;
protected readonly basepath = "user/mods/"; protected readonly basepath = "user/mods/";
protected readonly modOrderPath = "user/mods/order.json"; protected readonly modOrderPath = "user/mods/order.json";
protected order: Record<string, number>; protected order: Record<string, number>;
@ -30,7 +28,7 @@ export declare class PreAkiModLoader implements IModLoader {
protected akiConfig: ICoreConfig; protected akiConfig: ICoreConfig;
protected serverDependencies: Record<string, string>; protected serverDependencies: Record<string, string>;
protected skippedMods: Set<string>; protected skippedMods: Set<string>;
constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, localisationService: LocalisationService, configServer: ConfigServer, modLoadOrder: ModLoadOrder, modTypeCheck: ModTypeCheck); constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, localisationService: LocalisationService, configServer: ConfigServer, modLoadOrder: ModLoadOrder, modTypeCheck: ModTypeCheck);
load(container: DependencyContainer): Promise<void>; load(container: DependencyContainer): Promise<void>;
/** /**
* Returns a list of mods with preserved load order * Returns a list of mods with preserved load order
@ -68,10 +66,9 @@ export declare class PreAkiModLoader implements IModLoader {
protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; protected isModCombatibleWithAki(mod: IPackageJsonData): boolean;
/** /**
* Execute each mod found in this.imported * Execute each mod found in this.imported
* @param container Dependence container to give to mod when it runs
* @returns void promise * @returns void promise
*/ */
protected executeModsAsync(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
/** /**
* Read loadorder.json (create if doesnt exist) and return sorted list of mods * Read loadorder.json (create if doesnt exist) and return sorted list of mods
* @returns string array of sorted mod names * @returns string array of sorted mod names

View File

@ -1,18 +1,13 @@
import { BundleLoader } from "@spt-aki/loaders/BundleLoader"; import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { IHttpConfig } from "@spt-aki/models/spt/config/IHttpConfig"; import { IHttpConfig } from "@spt-aki/models/spt/config/IHttpConfig";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { ConfigServer } from "@spt-aki/servers/ConfigServer"; import { ConfigServer } from "@spt-aki/servers/ConfigServer";
import { HttpFileUtil } from "@spt-aki/utils/HttpFileUtil";
import { HttpResponseUtil } from "@spt-aki/utils/HttpResponseUtil"; import { HttpResponseUtil } from "@spt-aki/utils/HttpResponseUtil";
export declare class BundleCallbacks { export declare class BundleCallbacks {
protected logger: ILogger;
protected httpResponse: HttpResponseUtil; protected httpResponse: HttpResponseUtil;
protected httpFileUtil: HttpFileUtil;
protected bundleLoader: BundleLoader; protected bundleLoader: BundleLoader;
protected configServer: ConfigServer; protected configServer: ConfigServer;
protected httpConfig: IHttpConfig; protected httpConfig: IHttpConfig;
constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpFileUtil: HttpFileUtil, bundleLoader: BundleLoader, configServer: ConfigServer); constructor(httpResponse: HttpResponseUtil, bundleLoader: BundleLoader, configServer: ConfigServer);
sendBundle(sessionID: string, req: any, resp: any, body: any): void;
/** /**
* Handle singleplayer/bundles * Handle singleplayer/bundles
*/ */

View File

@ -158,8 +158,9 @@ export declare class InraidController {
* Update profile with scav karma values based on in-raid actions * Update profile with scav karma values based on in-raid actions
* @param pmcData Pmc profile * @param pmcData Pmc profile
* @param offraidData Post-raid save request * @param offraidData Post-raid save request
* @param scavData Scav profile
*/ */
protected handlePostRaidPlayerScavKarmaChanges(pmcData: IPmcData, offraidData: ISaveProgressRequestData): void; protected handlePostRaidPlayerScavKarmaChanges(pmcData: IPmcData, offraidData: ISaveProgressRequestData, scavData: IPmcData): void;
/** /**
* Get the inraid config from configs/inraid.json * Get the inraid config from configs/inraid.json
* @returns InRaid Config * @returns InRaid Config

View File

@ -69,12 +69,6 @@ export declare class QuestController {
* @returns true = show to player * @returns true = show to player
*/ */
protected showEventQuestToPlayer(questId: string): boolean; protected showEventQuestToPlayer(questId: string): boolean;
/**
* Is the quest for the opposite side the player is on
* @param playerSide Player side (usec/bear)
* @param questId QuestId to check
*/
protected questIsForOtherSide(playerSide: string, questId: string): boolean;
/** /**
* Handle QuestAccept event * Handle QuestAccept event
* Handle the client accepting a quest and starting it * Handle the client accepting a quest and starting it

View File

@ -128,6 +128,12 @@ export declare class QuestHelper {
* @returns Quests accessible to player incuding newly unlocked quests now quest (startedQuestId) was started * @returns Quests accessible to player incuding newly unlocked quests now quest (startedQuestId) was started
*/ */
getNewlyAccessibleQuestsWhenStartingQuest(startedQuestId: string, sessionID: string): IQuest[]; getNewlyAccessibleQuestsWhenStartingQuest(startedQuestId: string, sessionID: string): IQuest[];
/**
* Is the quest for the opposite side the player is on
* @param playerSide Player side (usec/bear)
* @param questId QuestId to check
*/
questIsForOtherSide(playerSide: string, questId: string): boolean;
/** /**
* Get quests that can be shown to player after failing a quest * Get quests that can be shown to player after failing a quest
* @param failedQuestId Id of the quest failed by player * @param failedQuestId Id of the quest failed by player

View File

@ -59,7 +59,7 @@ export declare class TraderHelper {
/** /**
* Reset a profiles trader data back to its initial state as seen by a level 1 player * Reset a profiles trader data back to its initial state as seen by a level 1 player
* Does NOT take into account different profile levels * Does NOT take into account different profile levels
* @param sessionID session id * @param sessionID session id of player
* @param traderID trader id to reset * @param traderID trader id to reset
*/ */
resetTrader(sessionID: string, traderID: string): void; resetTrader(sessionID: string, traderID: string): void;
@ -74,13 +74,13 @@ export declare class TraderHelper {
* Alter a traders unlocked status * Alter a traders unlocked status
* @param traderId Trader to alter * @param traderId Trader to alter
* @param status New status to use * @param status New status to use
* @param sessionId Session id * @param sessionId Session id of player
*/ */
setTraderUnlockedState(traderId: string, status: boolean, sessionId: string): void; setTraderUnlockedState(traderId: string, status: boolean, sessionId: string): void;
/** /**
* Add standing to a trader and level them up if exp goes over level threshold * Add standing to a trader and level them up if exp goes over level threshold
* @param sessionId Session id * @param sessionId Session id of player
* @param traderId Traders id * @param traderId Traders id to add standing to
* @param standingToAdd Standing value to add to trader * @param standingToAdd Standing value to add to trader
*/ */
addStandingToTrader(sessionId: string, traderId: string, standingToAdd: number): void; addStandingToTrader(sessionId: string, traderId: string, standingToAdd: number): void;

View File

@ -1,7 +1,7 @@
import { HttpServerHelper } from "@spt-aki/helpers/HttpServerHelper"; import { HttpServerHelper } from "@spt-aki/helpers/HttpServerHelper";
import { JsonUtil } from "@spt-aki/utils/JsonUtil"; import { JsonUtil } from "@spt-aki/utils/JsonUtil";
import { VFS } from "@spt-aki/utils/VFS"; import { VFS } from "@spt-aki/utils/VFS";
declare class BundleInfo { export declare class BundleInfo {
modPath: string; modPath: string;
key: string; key: string;
path: string; path: string;
@ -30,4 +30,3 @@ export interface BundleManifestEntry {
key: string; key: string;
path: string; path: string;
} }
export {};

View File

@ -1,21 +1,17 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader"; import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader";
import { IModLoader } from "@spt-aki/models/spt/mod/IModLoader"; import { IModLoader } from "@spt-aki/models/spt/mod/IModLoader";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { LocalisationService } from "@spt-aki/services/LocalisationService"; import { LocalisationService } from "@spt-aki/services/LocalisationService";
import { VFS } from "@spt-aki/utils/VFS";
export declare class PostAkiModLoader implements IModLoader { export declare class PostAkiModLoader implements IModLoader {
protected logger: ILogger; protected logger: ILogger;
protected bundleLoader: BundleLoader;
protected vfs: VFS;
protected preAkiModLoader: PreAkiModLoader; protected preAkiModLoader: PreAkiModLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
constructor(logger: ILogger, bundleLoader: BundleLoader, vfs: VFS, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck); protected container: DependencyContainer;
constructor(logger: ILogger, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck);
getModPath(mod: string): string; getModPath(mod: string): string;
load(): Promise<void>; load(): Promise<void>;
protected executeMods(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
protected addBundles(): void;
} }

View File

@ -1,17 +1,21 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { OnLoad } from "@spt-aki/di/OnLoad"; import { OnLoad } from "@spt-aki/di/OnLoad";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader"; import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { LocalisationService } from "@spt-aki/services/LocalisationService"; import { LocalisationService } from "@spt-aki/services/LocalisationService";
export declare class PostDBModLoader implements OnLoad { export declare class PostDBModLoader implements OnLoad {
protected logger: ILogger; protected logger: ILogger;
protected bundleLoader: BundleLoader;
protected preAkiModLoader: PreAkiModLoader; protected preAkiModLoader: PreAkiModLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
constructor(logger: ILogger, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck); protected container: DependencyContainer;
constructor(logger: ILogger, bundleLoader: BundleLoader, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck);
onLoad(): Promise<void>; onLoad(): Promise<void>;
getRoute(): string; getRoute(): string;
getModPath(mod: string): string; getModPath(mod: string): string;
protected executeMods(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
protected addBundles(): void;
} }

View File

@ -1,5 +1,4 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModLoadOrder } from "@spt-aki/loaders/ModLoadOrder"; import { ModLoadOrder } from "@spt-aki/loaders/ModLoadOrder";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { ModDetails } from "@spt-aki/models/eft/profile/IAkiProfile"; import { ModDetails } from "@spt-aki/models/eft/profile/IAkiProfile";
@ -17,12 +16,11 @@ export declare class PreAkiModLoader implements IModLoader {
protected vfs: VFS; protected vfs: VFS;
protected jsonUtil: JsonUtil; protected jsonUtil: JsonUtil;
protected modCompilerService: ModCompilerService; protected modCompilerService: ModCompilerService;
protected bundleLoader: BundleLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected configServer: ConfigServer; protected configServer: ConfigServer;
protected modLoadOrder: ModLoadOrder; protected modLoadOrder: ModLoadOrder;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
protected static container: DependencyContainer; protected container: DependencyContainer;
protected readonly basepath = "user/mods/"; protected readonly basepath = "user/mods/";
protected readonly modOrderPath = "user/mods/order.json"; protected readonly modOrderPath = "user/mods/order.json";
protected order: Record<string, number>; protected order: Record<string, number>;
@ -30,7 +28,7 @@ export declare class PreAkiModLoader implements IModLoader {
protected akiConfig: ICoreConfig; protected akiConfig: ICoreConfig;
protected serverDependencies: Record<string, string>; protected serverDependencies: Record<string, string>;
protected skippedMods: Set<string>; protected skippedMods: Set<string>;
constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, localisationService: LocalisationService, configServer: ConfigServer, modLoadOrder: ModLoadOrder, modTypeCheck: ModTypeCheck); constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, localisationService: LocalisationService, configServer: ConfigServer, modLoadOrder: ModLoadOrder, modTypeCheck: ModTypeCheck);
load(container: DependencyContainer): Promise<void>; load(container: DependencyContainer): Promise<void>;
/** /**
* Returns a list of mods with preserved load order * Returns a list of mods with preserved load order
@ -68,10 +66,9 @@ export declare class PreAkiModLoader implements IModLoader {
protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; protected isModCombatibleWithAki(mod: IPackageJsonData): boolean;
/** /**
* Execute each mod found in this.imported * Execute each mod found in this.imported
* @param container Dependence container to give to mod when it runs
* @returns void promise * @returns void promise
*/ */
protected executeModsAsync(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
/** /**
* Read loadorder.json (create if doesnt exist) and return sorted list of mods * Read loadorder.json (create if doesnt exist) and return sorted list of mods
* @returns string array of sorted mod names * @returns string array of sorted mod names

View File

@ -1,18 +1,13 @@
import { BundleLoader } from "@spt-aki/loaders/BundleLoader"; import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { IHttpConfig } from "@spt-aki/models/spt/config/IHttpConfig"; import { IHttpConfig } from "@spt-aki/models/spt/config/IHttpConfig";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { ConfigServer } from "@spt-aki/servers/ConfigServer"; import { ConfigServer } from "@spt-aki/servers/ConfigServer";
import { HttpFileUtil } from "@spt-aki/utils/HttpFileUtil";
import { HttpResponseUtil } from "@spt-aki/utils/HttpResponseUtil"; import { HttpResponseUtil } from "@spt-aki/utils/HttpResponseUtil";
export declare class BundleCallbacks { export declare class BundleCallbacks {
protected logger: ILogger;
protected httpResponse: HttpResponseUtil; protected httpResponse: HttpResponseUtil;
protected httpFileUtil: HttpFileUtil;
protected bundleLoader: BundleLoader; protected bundleLoader: BundleLoader;
protected configServer: ConfigServer; protected configServer: ConfigServer;
protected httpConfig: IHttpConfig; protected httpConfig: IHttpConfig;
constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpFileUtil: HttpFileUtil, bundleLoader: BundleLoader, configServer: ConfigServer); constructor(httpResponse: HttpResponseUtil, bundleLoader: BundleLoader, configServer: ConfigServer);
sendBundle(sessionID: string, req: any, resp: any, body: any): void;
/** /**
* Handle singleplayer/bundles * Handle singleplayer/bundles
*/ */

View File

@ -158,8 +158,9 @@ export declare class InraidController {
* Update profile with scav karma values based on in-raid actions * Update profile with scav karma values based on in-raid actions
* @param pmcData Pmc profile * @param pmcData Pmc profile
* @param offraidData Post-raid save request * @param offraidData Post-raid save request
* @param scavData Scav profile
*/ */
protected handlePostRaidPlayerScavKarmaChanges(pmcData: IPmcData, offraidData: ISaveProgressRequestData): void; protected handlePostRaidPlayerScavKarmaChanges(pmcData: IPmcData, offraidData: ISaveProgressRequestData, scavData: IPmcData): void;
/** /**
* Get the inraid config from configs/inraid.json * Get the inraid config from configs/inraid.json
* @returns InRaid Config * @returns InRaid Config

View File

@ -69,12 +69,6 @@ export declare class QuestController {
* @returns true = show to player * @returns true = show to player
*/ */
protected showEventQuestToPlayer(questId: string): boolean; protected showEventQuestToPlayer(questId: string): boolean;
/**
* Is the quest for the opposite side the player is on
* @param playerSide Player side (usec/bear)
* @param questId QuestId to check
*/
protected questIsForOtherSide(playerSide: string, questId: string): boolean;
/** /**
* Handle QuestAccept event * Handle QuestAccept event
* Handle the client accepting a quest and starting it * Handle the client accepting a quest and starting it

View File

@ -128,6 +128,12 @@ export declare class QuestHelper {
* @returns Quests accessible to player incuding newly unlocked quests now quest (startedQuestId) was started * @returns Quests accessible to player incuding newly unlocked quests now quest (startedQuestId) was started
*/ */
getNewlyAccessibleQuestsWhenStartingQuest(startedQuestId: string, sessionID: string): IQuest[]; getNewlyAccessibleQuestsWhenStartingQuest(startedQuestId: string, sessionID: string): IQuest[];
/**
* Is the quest for the opposite side the player is on
* @param playerSide Player side (usec/bear)
* @param questId QuestId to check
*/
questIsForOtherSide(playerSide: string, questId: string): boolean;
/** /**
* Get quests that can be shown to player after failing a quest * Get quests that can be shown to player after failing a quest
* @param failedQuestId Id of the quest failed by player * @param failedQuestId Id of the quest failed by player

View File

@ -59,7 +59,7 @@ export declare class TraderHelper {
/** /**
* Reset a profiles trader data back to its initial state as seen by a level 1 player * Reset a profiles trader data back to its initial state as seen by a level 1 player
* Does NOT take into account different profile levels * Does NOT take into account different profile levels
* @param sessionID session id * @param sessionID session id of player
* @param traderID trader id to reset * @param traderID trader id to reset
*/ */
resetTrader(sessionID: string, traderID: string): void; resetTrader(sessionID: string, traderID: string): void;
@ -74,13 +74,13 @@ export declare class TraderHelper {
* Alter a traders unlocked status * Alter a traders unlocked status
* @param traderId Trader to alter * @param traderId Trader to alter
* @param status New status to use * @param status New status to use
* @param sessionId Session id * @param sessionId Session id of player
*/ */
setTraderUnlockedState(traderId: string, status: boolean, sessionId: string): void; setTraderUnlockedState(traderId: string, status: boolean, sessionId: string): void;
/** /**
* Add standing to a trader and level them up if exp goes over level threshold * Add standing to a trader and level them up if exp goes over level threshold
* @param sessionId Session id * @param sessionId Session id of player
* @param traderId Traders id * @param traderId Traders id to add standing to
* @param standingToAdd Standing value to add to trader * @param standingToAdd Standing value to add to trader
*/ */
addStandingToTrader(sessionId: string, traderId: string, standingToAdd: number): void; addStandingToTrader(sessionId: string, traderId: string, standingToAdd: number): void;

View File

@ -1,7 +1,7 @@
import { HttpServerHelper } from "@spt-aki/helpers/HttpServerHelper"; import { HttpServerHelper } from "@spt-aki/helpers/HttpServerHelper";
import { JsonUtil } from "@spt-aki/utils/JsonUtil"; import { JsonUtil } from "@spt-aki/utils/JsonUtil";
import { VFS } from "@spt-aki/utils/VFS"; import { VFS } from "@spt-aki/utils/VFS";
declare class BundleInfo { export declare class BundleInfo {
modPath: string; modPath: string;
key: string; key: string;
path: string; path: string;
@ -30,4 +30,3 @@ export interface BundleManifestEntry {
key: string; key: string;
path: string; path: string;
} }
export {};

View File

@ -1,21 +1,17 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader"; import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader";
import { IModLoader } from "@spt-aki/models/spt/mod/IModLoader"; import { IModLoader } from "@spt-aki/models/spt/mod/IModLoader";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { LocalisationService } from "@spt-aki/services/LocalisationService"; import { LocalisationService } from "@spt-aki/services/LocalisationService";
import { VFS } from "@spt-aki/utils/VFS";
export declare class PostAkiModLoader implements IModLoader { export declare class PostAkiModLoader implements IModLoader {
protected logger: ILogger; protected logger: ILogger;
protected bundleLoader: BundleLoader;
protected vfs: VFS;
protected preAkiModLoader: PreAkiModLoader; protected preAkiModLoader: PreAkiModLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
constructor(logger: ILogger, bundleLoader: BundleLoader, vfs: VFS, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck); protected container: DependencyContainer;
constructor(logger: ILogger, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck);
getModPath(mod: string): string; getModPath(mod: string): string;
load(): Promise<void>; load(): Promise<void>;
protected executeMods(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
protected addBundles(): void;
} }

View File

@ -1,17 +1,21 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { OnLoad } from "@spt-aki/di/OnLoad"; import { OnLoad } from "@spt-aki/di/OnLoad";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader"; import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { LocalisationService } from "@spt-aki/services/LocalisationService"; import { LocalisationService } from "@spt-aki/services/LocalisationService";
export declare class PostDBModLoader implements OnLoad { export declare class PostDBModLoader implements OnLoad {
protected logger: ILogger; protected logger: ILogger;
protected bundleLoader: BundleLoader;
protected preAkiModLoader: PreAkiModLoader; protected preAkiModLoader: PreAkiModLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
constructor(logger: ILogger, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck); protected container: DependencyContainer;
constructor(logger: ILogger, bundleLoader: BundleLoader, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck);
onLoad(): Promise<void>; onLoad(): Promise<void>;
getRoute(): string; getRoute(): string;
getModPath(mod: string): string; getModPath(mod: string): string;
protected executeMods(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
protected addBundles(): void;
} }

View File

@ -1,5 +1,4 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModLoadOrder } from "@spt-aki/loaders/ModLoadOrder"; import { ModLoadOrder } from "@spt-aki/loaders/ModLoadOrder";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { ModDetails } from "@spt-aki/models/eft/profile/IAkiProfile"; import { ModDetails } from "@spt-aki/models/eft/profile/IAkiProfile";
@ -17,12 +16,11 @@ export declare class PreAkiModLoader implements IModLoader {
protected vfs: VFS; protected vfs: VFS;
protected jsonUtil: JsonUtil; protected jsonUtil: JsonUtil;
protected modCompilerService: ModCompilerService; protected modCompilerService: ModCompilerService;
protected bundleLoader: BundleLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected configServer: ConfigServer; protected configServer: ConfigServer;
protected modLoadOrder: ModLoadOrder; protected modLoadOrder: ModLoadOrder;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
protected static container: DependencyContainer; protected container: DependencyContainer;
protected readonly basepath = "user/mods/"; protected readonly basepath = "user/mods/";
protected readonly modOrderPath = "user/mods/order.json"; protected readonly modOrderPath = "user/mods/order.json";
protected order: Record<string, number>; protected order: Record<string, number>;
@ -30,7 +28,7 @@ export declare class PreAkiModLoader implements IModLoader {
protected akiConfig: ICoreConfig; protected akiConfig: ICoreConfig;
protected serverDependencies: Record<string, string>; protected serverDependencies: Record<string, string>;
protected skippedMods: Set<string>; protected skippedMods: Set<string>;
constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, localisationService: LocalisationService, configServer: ConfigServer, modLoadOrder: ModLoadOrder, modTypeCheck: ModTypeCheck); constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, localisationService: LocalisationService, configServer: ConfigServer, modLoadOrder: ModLoadOrder, modTypeCheck: ModTypeCheck);
load(container: DependencyContainer): Promise<void>; load(container: DependencyContainer): Promise<void>;
/** /**
* Returns a list of mods with preserved load order * Returns a list of mods with preserved load order
@ -68,10 +66,9 @@ export declare class PreAkiModLoader implements IModLoader {
protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; protected isModCombatibleWithAki(mod: IPackageJsonData): boolean;
/** /**
* Execute each mod found in this.imported * Execute each mod found in this.imported
* @param container Dependence container to give to mod when it runs
* @returns void promise * @returns void promise
*/ */
protected executeModsAsync(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
/** /**
* Read loadorder.json (create if doesnt exist) and return sorted list of mods * Read loadorder.json (create if doesnt exist) and return sorted list of mods
* @returns string array of sorted mod names * @returns string array of sorted mod names

View File

@ -1,18 +1,13 @@
import { BundleLoader } from "@spt-aki/loaders/BundleLoader"; import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { IHttpConfig } from "@spt-aki/models/spt/config/IHttpConfig"; import { IHttpConfig } from "@spt-aki/models/spt/config/IHttpConfig";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { ConfigServer } from "@spt-aki/servers/ConfigServer"; import { ConfigServer } from "@spt-aki/servers/ConfigServer";
import { HttpFileUtil } from "@spt-aki/utils/HttpFileUtil";
import { HttpResponseUtil } from "@spt-aki/utils/HttpResponseUtil"; import { HttpResponseUtil } from "@spt-aki/utils/HttpResponseUtil";
export declare class BundleCallbacks { export declare class BundleCallbacks {
protected logger: ILogger;
protected httpResponse: HttpResponseUtil; protected httpResponse: HttpResponseUtil;
protected httpFileUtil: HttpFileUtil;
protected bundleLoader: BundleLoader; protected bundleLoader: BundleLoader;
protected configServer: ConfigServer; protected configServer: ConfigServer;
protected httpConfig: IHttpConfig; protected httpConfig: IHttpConfig;
constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpFileUtil: HttpFileUtil, bundleLoader: BundleLoader, configServer: ConfigServer); constructor(httpResponse: HttpResponseUtil, bundleLoader: BundleLoader, configServer: ConfigServer);
sendBundle(sessionID: string, req: any, resp: any, body: any): void;
/** /**
* Handle singleplayer/bundles * Handle singleplayer/bundles
*/ */

View File

@ -158,8 +158,9 @@ export declare class InraidController {
* Update profile with scav karma values based on in-raid actions * Update profile with scav karma values based on in-raid actions
* @param pmcData Pmc profile * @param pmcData Pmc profile
* @param offraidData Post-raid save request * @param offraidData Post-raid save request
* @param scavData Scav profile
*/ */
protected handlePostRaidPlayerScavKarmaChanges(pmcData: IPmcData, offraidData: ISaveProgressRequestData): void; protected handlePostRaidPlayerScavKarmaChanges(pmcData: IPmcData, offraidData: ISaveProgressRequestData, scavData: IPmcData): void;
/** /**
* Get the inraid config from configs/inraid.json * Get the inraid config from configs/inraid.json
* @returns InRaid Config * @returns InRaid Config

View File

@ -69,12 +69,6 @@ export declare class QuestController {
* @returns true = show to player * @returns true = show to player
*/ */
protected showEventQuestToPlayer(questId: string): boolean; protected showEventQuestToPlayer(questId: string): boolean;
/**
* Is the quest for the opposite side the player is on
* @param playerSide Player side (usec/bear)
* @param questId QuestId to check
*/
protected questIsForOtherSide(playerSide: string, questId: string): boolean;
/** /**
* Handle QuestAccept event * Handle QuestAccept event
* Handle the client accepting a quest and starting it * Handle the client accepting a quest and starting it

View File

@ -128,6 +128,12 @@ export declare class QuestHelper {
* @returns Quests accessible to player incuding newly unlocked quests now quest (startedQuestId) was started * @returns Quests accessible to player incuding newly unlocked quests now quest (startedQuestId) was started
*/ */
getNewlyAccessibleQuestsWhenStartingQuest(startedQuestId: string, sessionID: string): IQuest[]; getNewlyAccessibleQuestsWhenStartingQuest(startedQuestId: string, sessionID: string): IQuest[];
/**
* Is the quest for the opposite side the player is on
* @param playerSide Player side (usec/bear)
* @param questId QuestId to check
*/
questIsForOtherSide(playerSide: string, questId: string): boolean;
/** /**
* Get quests that can be shown to player after failing a quest * Get quests that can be shown to player after failing a quest
* @param failedQuestId Id of the quest failed by player * @param failedQuestId Id of the quest failed by player

View File

@ -59,7 +59,7 @@ export declare class TraderHelper {
/** /**
* Reset a profiles trader data back to its initial state as seen by a level 1 player * Reset a profiles trader data back to its initial state as seen by a level 1 player
* Does NOT take into account different profile levels * Does NOT take into account different profile levels
* @param sessionID session id * @param sessionID session id of player
* @param traderID trader id to reset * @param traderID trader id to reset
*/ */
resetTrader(sessionID: string, traderID: string): void; resetTrader(sessionID: string, traderID: string): void;
@ -74,13 +74,13 @@ export declare class TraderHelper {
* Alter a traders unlocked status * Alter a traders unlocked status
* @param traderId Trader to alter * @param traderId Trader to alter
* @param status New status to use * @param status New status to use
* @param sessionId Session id * @param sessionId Session id of player
*/ */
setTraderUnlockedState(traderId: string, status: boolean, sessionId: string): void; setTraderUnlockedState(traderId: string, status: boolean, sessionId: string): void;
/** /**
* Add standing to a trader and level them up if exp goes over level threshold * Add standing to a trader and level them up if exp goes over level threshold
* @param sessionId Session id * @param sessionId Session id of player
* @param traderId Traders id * @param traderId Traders id to add standing to
* @param standingToAdd Standing value to add to trader * @param standingToAdd Standing value to add to trader
*/ */
addStandingToTrader(sessionId: string, traderId: string, standingToAdd: number): void; addStandingToTrader(sessionId: string, traderId: string, standingToAdd: number): void;

View File

@ -1,7 +1,7 @@
import { HttpServerHelper } from "@spt-aki/helpers/HttpServerHelper"; import { HttpServerHelper } from "@spt-aki/helpers/HttpServerHelper";
import { JsonUtil } from "@spt-aki/utils/JsonUtil"; import { JsonUtil } from "@spt-aki/utils/JsonUtil";
import { VFS } from "@spt-aki/utils/VFS"; import { VFS } from "@spt-aki/utils/VFS";
declare class BundleInfo { export declare class BundleInfo {
modPath: string; modPath: string;
key: string; key: string;
path: string; path: string;
@ -30,4 +30,3 @@ export interface BundleManifestEntry {
key: string; key: string;
path: string; path: string;
} }
export {};

View File

@ -1,21 +1,17 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader"; import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader";
import { IModLoader } from "@spt-aki/models/spt/mod/IModLoader"; import { IModLoader } from "@spt-aki/models/spt/mod/IModLoader";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { LocalisationService } from "@spt-aki/services/LocalisationService"; import { LocalisationService } from "@spt-aki/services/LocalisationService";
import { VFS } from "@spt-aki/utils/VFS";
export declare class PostAkiModLoader implements IModLoader { export declare class PostAkiModLoader implements IModLoader {
protected logger: ILogger; protected logger: ILogger;
protected bundleLoader: BundleLoader;
protected vfs: VFS;
protected preAkiModLoader: PreAkiModLoader; protected preAkiModLoader: PreAkiModLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
constructor(logger: ILogger, bundleLoader: BundleLoader, vfs: VFS, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck); protected container: DependencyContainer;
constructor(logger: ILogger, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck);
getModPath(mod: string): string; getModPath(mod: string): string;
load(): Promise<void>; load(): Promise<void>;
protected executeMods(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
protected addBundles(): void;
} }

View File

@ -1,17 +1,21 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { OnLoad } from "@spt-aki/di/OnLoad"; import { OnLoad } from "@spt-aki/di/OnLoad";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader"; import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { LocalisationService } from "@spt-aki/services/LocalisationService"; import { LocalisationService } from "@spt-aki/services/LocalisationService";
export declare class PostDBModLoader implements OnLoad { export declare class PostDBModLoader implements OnLoad {
protected logger: ILogger; protected logger: ILogger;
protected bundleLoader: BundleLoader;
protected preAkiModLoader: PreAkiModLoader; protected preAkiModLoader: PreAkiModLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
constructor(logger: ILogger, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck); protected container: DependencyContainer;
constructor(logger: ILogger, bundleLoader: BundleLoader, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck);
onLoad(): Promise<void>; onLoad(): Promise<void>;
getRoute(): string; getRoute(): string;
getModPath(mod: string): string; getModPath(mod: string): string;
protected executeMods(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
protected addBundles(): void;
} }

View File

@ -1,5 +1,4 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModLoadOrder } from "@spt-aki/loaders/ModLoadOrder"; import { ModLoadOrder } from "@spt-aki/loaders/ModLoadOrder";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { ModDetails } from "@spt-aki/models/eft/profile/IAkiProfile"; import { ModDetails } from "@spt-aki/models/eft/profile/IAkiProfile";
@ -17,12 +16,11 @@ export declare class PreAkiModLoader implements IModLoader {
protected vfs: VFS; protected vfs: VFS;
protected jsonUtil: JsonUtil; protected jsonUtil: JsonUtil;
protected modCompilerService: ModCompilerService; protected modCompilerService: ModCompilerService;
protected bundleLoader: BundleLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected configServer: ConfigServer; protected configServer: ConfigServer;
protected modLoadOrder: ModLoadOrder; protected modLoadOrder: ModLoadOrder;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
protected static container: DependencyContainer; protected container: DependencyContainer;
protected readonly basepath = "user/mods/"; protected readonly basepath = "user/mods/";
protected readonly modOrderPath = "user/mods/order.json"; protected readonly modOrderPath = "user/mods/order.json";
protected order: Record<string, number>; protected order: Record<string, number>;
@ -30,7 +28,7 @@ export declare class PreAkiModLoader implements IModLoader {
protected akiConfig: ICoreConfig; protected akiConfig: ICoreConfig;
protected serverDependencies: Record<string, string>; protected serverDependencies: Record<string, string>;
protected skippedMods: Set<string>; protected skippedMods: Set<string>;
constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, localisationService: LocalisationService, configServer: ConfigServer, modLoadOrder: ModLoadOrder, modTypeCheck: ModTypeCheck); constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, localisationService: LocalisationService, configServer: ConfigServer, modLoadOrder: ModLoadOrder, modTypeCheck: ModTypeCheck);
load(container: DependencyContainer): Promise<void>; load(container: DependencyContainer): Promise<void>;
/** /**
* Returns a list of mods with preserved load order * Returns a list of mods with preserved load order
@ -68,10 +66,9 @@ export declare class PreAkiModLoader implements IModLoader {
protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; protected isModCombatibleWithAki(mod: IPackageJsonData): boolean;
/** /**
* Execute each mod found in this.imported * Execute each mod found in this.imported
* @param container Dependence container to give to mod when it runs
* @returns void promise * @returns void promise
*/ */
protected executeModsAsync(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
/** /**
* Read loadorder.json (create if doesnt exist) and return sorted list of mods * Read loadorder.json (create if doesnt exist) and return sorted list of mods
* @returns string array of sorted mod names * @returns string array of sorted mod names

View File

@ -1,18 +1,13 @@
import { BundleLoader } from "@spt-aki/loaders/BundleLoader"; import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { IHttpConfig } from "@spt-aki/models/spt/config/IHttpConfig"; import { IHttpConfig } from "@spt-aki/models/spt/config/IHttpConfig";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { ConfigServer } from "@spt-aki/servers/ConfigServer"; import { ConfigServer } from "@spt-aki/servers/ConfigServer";
import { HttpFileUtil } from "@spt-aki/utils/HttpFileUtil";
import { HttpResponseUtil } from "@spt-aki/utils/HttpResponseUtil"; import { HttpResponseUtil } from "@spt-aki/utils/HttpResponseUtil";
export declare class BundleCallbacks { export declare class BundleCallbacks {
protected logger: ILogger;
protected httpResponse: HttpResponseUtil; protected httpResponse: HttpResponseUtil;
protected httpFileUtil: HttpFileUtil;
protected bundleLoader: BundleLoader; protected bundleLoader: BundleLoader;
protected configServer: ConfigServer; protected configServer: ConfigServer;
protected httpConfig: IHttpConfig; protected httpConfig: IHttpConfig;
constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpFileUtil: HttpFileUtil, bundleLoader: BundleLoader, configServer: ConfigServer); constructor(httpResponse: HttpResponseUtil, bundleLoader: BundleLoader, configServer: ConfigServer);
sendBundle(sessionID: string, req: any, resp: any, body: any): void;
/** /**
* Handle singleplayer/bundles * Handle singleplayer/bundles
*/ */

View File

@ -158,8 +158,9 @@ export declare class InraidController {
* Update profile with scav karma values based on in-raid actions * Update profile with scav karma values based on in-raid actions
* @param pmcData Pmc profile * @param pmcData Pmc profile
* @param offraidData Post-raid save request * @param offraidData Post-raid save request
* @param scavData Scav profile
*/ */
protected handlePostRaidPlayerScavKarmaChanges(pmcData: IPmcData, offraidData: ISaveProgressRequestData): void; protected handlePostRaidPlayerScavKarmaChanges(pmcData: IPmcData, offraidData: ISaveProgressRequestData, scavData: IPmcData): void;
/** /**
* Get the inraid config from configs/inraid.json * Get the inraid config from configs/inraid.json
* @returns InRaid Config * @returns InRaid Config

View File

@ -69,12 +69,6 @@ export declare class QuestController {
* @returns true = show to player * @returns true = show to player
*/ */
protected showEventQuestToPlayer(questId: string): boolean; protected showEventQuestToPlayer(questId: string): boolean;
/**
* Is the quest for the opposite side the player is on
* @param playerSide Player side (usec/bear)
* @param questId QuestId to check
*/
protected questIsForOtherSide(playerSide: string, questId: string): boolean;
/** /**
* Handle QuestAccept event * Handle QuestAccept event
* Handle the client accepting a quest and starting it * Handle the client accepting a quest and starting it

View File

@ -128,6 +128,12 @@ export declare class QuestHelper {
* @returns Quests accessible to player incuding newly unlocked quests now quest (startedQuestId) was started * @returns Quests accessible to player incuding newly unlocked quests now quest (startedQuestId) was started
*/ */
getNewlyAccessibleQuestsWhenStartingQuest(startedQuestId: string, sessionID: string): IQuest[]; getNewlyAccessibleQuestsWhenStartingQuest(startedQuestId: string, sessionID: string): IQuest[];
/**
* Is the quest for the opposite side the player is on
* @param playerSide Player side (usec/bear)
* @param questId QuestId to check
*/
questIsForOtherSide(playerSide: string, questId: string): boolean;
/** /**
* Get quests that can be shown to player after failing a quest * Get quests that can be shown to player after failing a quest
* @param failedQuestId Id of the quest failed by player * @param failedQuestId Id of the quest failed by player

View File

@ -59,7 +59,7 @@ export declare class TraderHelper {
/** /**
* Reset a profiles trader data back to its initial state as seen by a level 1 player * Reset a profiles trader data back to its initial state as seen by a level 1 player
* Does NOT take into account different profile levels * Does NOT take into account different profile levels
* @param sessionID session id * @param sessionID session id of player
* @param traderID trader id to reset * @param traderID trader id to reset
*/ */
resetTrader(sessionID: string, traderID: string): void; resetTrader(sessionID: string, traderID: string): void;
@ -74,13 +74,13 @@ export declare class TraderHelper {
* Alter a traders unlocked status * Alter a traders unlocked status
* @param traderId Trader to alter * @param traderId Trader to alter
* @param status New status to use * @param status New status to use
* @param sessionId Session id * @param sessionId Session id of player
*/ */
setTraderUnlockedState(traderId: string, status: boolean, sessionId: string): void; setTraderUnlockedState(traderId: string, status: boolean, sessionId: string): void;
/** /**
* Add standing to a trader and level them up if exp goes over level threshold * Add standing to a trader and level them up if exp goes over level threshold
* @param sessionId Session id * @param sessionId Session id of player
* @param traderId Traders id * @param traderId Traders id to add standing to
* @param standingToAdd Standing value to add to trader * @param standingToAdd Standing value to add to trader
*/ */
addStandingToTrader(sessionId: string, traderId: string, standingToAdd: number): void; addStandingToTrader(sessionId: string, traderId: string, standingToAdd: number): void;

View File

@ -1,7 +1,7 @@
import { HttpServerHelper } from "@spt-aki/helpers/HttpServerHelper"; import { HttpServerHelper } from "@spt-aki/helpers/HttpServerHelper";
import { JsonUtil } from "@spt-aki/utils/JsonUtil"; import { JsonUtil } from "@spt-aki/utils/JsonUtil";
import { VFS } from "@spt-aki/utils/VFS"; import { VFS } from "@spt-aki/utils/VFS";
declare class BundleInfo { export declare class BundleInfo {
modPath: string; modPath: string;
key: string; key: string;
path: string; path: string;
@ -30,4 +30,3 @@ export interface BundleManifestEntry {
key: string; key: string;
path: string; path: string;
} }
export {};

View File

@ -1,21 +1,17 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader"; import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader";
import { IModLoader } from "@spt-aki/models/spt/mod/IModLoader"; import { IModLoader } from "@spt-aki/models/spt/mod/IModLoader";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { LocalisationService } from "@spt-aki/services/LocalisationService"; import { LocalisationService } from "@spt-aki/services/LocalisationService";
import { VFS } from "@spt-aki/utils/VFS";
export declare class PostAkiModLoader implements IModLoader { export declare class PostAkiModLoader implements IModLoader {
protected logger: ILogger; protected logger: ILogger;
protected bundleLoader: BundleLoader;
protected vfs: VFS;
protected preAkiModLoader: PreAkiModLoader; protected preAkiModLoader: PreAkiModLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
constructor(logger: ILogger, bundleLoader: BundleLoader, vfs: VFS, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck); protected container: DependencyContainer;
constructor(logger: ILogger, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck);
getModPath(mod: string): string; getModPath(mod: string): string;
load(): Promise<void>; load(): Promise<void>;
protected executeMods(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
protected addBundles(): void;
} }

View File

@ -1,17 +1,21 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { OnLoad } from "@spt-aki/di/OnLoad"; import { OnLoad } from "@spt-aki/di/OnLoad";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader"; import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { LocalisationService } from "@spt-aki/services/LocalisationService"; import { LocalisationService } from "@spt-aki/services/LocalisationService";
export declare class PostDBModLoader implements OnLoad { export declare class PostDBModLoader implements OnLoad {
protected logger: ILogger; protected logger: ILogger;
protected bundleLoader: BundleLoader;
protected preAkiModLoader: PreAkiModLoader; protected preAkiModLoader: PreAkiModLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
constructor(logger: ILogger, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck); protected container: DependencyContainer;
constructor(logger: ILogger, bundleLoader: BundleLoader, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck);
onLoad(): Promise<void>; onLoad(): Promise<void>;
getRoute(): string; getRoute(): string;
getModPath(mod: string): string; getModPath(mod: string): string;
protected executeMods(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
protected addBundles(): void;
} }

View File

@ -1,5 +1,4 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModLoadOrder } from "@spt-aki/loaders/ModLoadOrder"; import { ModLoadOrder } from "@spt-aki/loaders/ModLoadOrder";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { ModDetails } from "@spt-aki/models/eft/profile/IAkiProfile"; import { ModDetails } from "@spt-aki/models/eft/profile/IAkiProfile";
@ -17,12 +16,11 @@ export declare class PreAkiModLoader implements IModLoader {
protected vfs: VFS; protected vfs: VFS;
protected jsonUtil: JsonUtil; protected jsonUtil: JsonUtil;
protected modCompilerService: ModCompilerService; protected modCompilerService: ModCompilerService;
protected bundleLoader: BundleLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected configServer: ConfigServer; protected configServer: ConfigServer;
protected modLoadOrder: ModLoadOrder; protected modLoadOrder: ModLoadOrder;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
protected static container: DependencyContainer; protected container: DependencyContainer;
protected readonly basepath = "user/mods/"; protected readonly basepath = "user/mods/";
protected readonly modOrderPath = "user/mods/order.json"; protected readonly modOrderPath = "user/mods/order.json";
protected order: Record<string, number>; protected order: Record<string, number>;
@ -30,7 +28,7 @@ export declare class PreAkiModLoader implements IModLoader {
protected akiConfig: ICoreConfig; protected akiConfig: ICoreConfig;
protected serverDependencies: Record<string, string>; protected serverDependencies: Record<string, string>;
protected skippedMods: Set<string>; protected skippedMods: Set<string>;
constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, localisationService: LocalisationService, configServer: ConfigServer, modLoadOrder: ModLoadOrder, modTypeCheck: ModTypeCheck); constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, localisationService: LocalisationService, configServer: ConfigServer, modLoadOrder: ModLoadOrder, modTypeCheck: ModTypeCheck);
load(container: DependencyContainer): Promise<void>; load(container: DependencyContainer): Promise<void>;
/** /**
* Returns a list of mods with preserved load order * Returns a list of mods with preserved load order
@ -68,10 +66,9 @@ export declare class PreAkiModLoader implements IModLoader {
protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; protected isModCombatibleWithAki(mod: IPackageJsonData): boolean;
/** /**
* Execute each mod found in this.imported * Execute each mod found in this.imported
* @param container Dependence container to give to mod when it runs
* @returns void promise * @returns void promise
*/ */
protected executeModsAsync(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
/** /**
* Read loadorder.json (create if doesnt exist) and return sorted list of mods * Read loadorder.json (create if doesnt exist) and return sorted list of mods
* @returns string array of sorted mod names * @returns string array of sorted mod names

View File

@ -1,18 +1,13 @@
import { BundleLoader } from "@spt-aki/loaders/BundleLoader"; import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { IHttpConfig } from "@spt-aki/models/spt/config/IHttpConfig"; import { IHttpConfig } from "@spt-aki/models/spt/config/IHttpConfig";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { ConfigServer } from "@spt-aki/servers/ConfigServer"; import { ConfigServer } from "@spt-aki/servers/ConfigServer";
import { HttpFileUtil } from "@spt-aki/utils/HttpFileUtil";
import { HttpResponseUtil } from "@spt-aki/utils/HttpResponseUtil"; import { HttpResponseUtil } from "@spt-aki/utils/HttpResponseUtil";
export declare class BundleCallbacks { export declare class BundleCallbacks {
protected logger: ILogger;
protected httpResponse: HttpResponseUtil; protected httpResponse: HttpResponseUtil;
protected httpFileUtil: HttpFileUtil;
protected bundleLoader: BundleLoader; protected bundleLoader: BundleLoader;
protected configServer: ConfigServer; protected configServer: ConfigServer;
protected httpConfig: IHttpConfig; protected httpConfig: IHttpConfig;
constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpFileUtil: HttpFileUtil, bundleLoader: BundleLoader, configServer: ConfigServer); constructor(httpResponse: HttpResponseUtil, bundleLoader: BundleLoader, configServer: ConfigServer);
sendBundle(sessionID: string, req: any, resp: any, body: any): void;
/** /**
* Handle singleplayer/bundles * Handle singleplayer/bundles
*/ */

View File

@ -158,8 +158,9 @@ export declare class InraidController {
* Update profile with scav karma values based on in-raid actions * Update profile with scav karma values based on in-raid actions
* @param pmcData Pmc profile * @param pmcData Pmc profile
* @param offraidData Post-raid save request * @param offraidData Post-raid save request
* @param scavData Scav profile
*/ */
protected handlePostRaidPlayerScavKarmaChanges(pmcData: IPmcData, offraidData: ISaveProgressRequestData): void; protected handlePostRaidPlayerScavKarmaChanges(pmcData: IPmcData, offraidData: ISaveProgressRequestData, scavData: IPmcData): void;
/** /**
* Get the inraid config from configs/inraid.json * Get the inraid config from configs/inraid.json
* @returns InRaid Config * @returns InRaid Config

View File

@ -69,12 +69,6 @@ export declare class QuestController {
* @returns true = show to player * @returns true = show to player
*/ */
protected showEventQuestToPlayer(questId: string): boolean; protected showEventQuestToPlayer(questId: string): boolean;
/**
* Is the quest for the opposite side the player is on
* @param playerSide Player side (usec/bear)
* @param questId QuestId to check
*/
protected questIsForOtherSide(playerSide: string, questId: string): boolean;
/** /**
* Handle QuestAccept event * Handle QuestAccept event
* Handle the client accepting a quest and starting it * Handle the client accepting a quest and starting it

View File

@ -128,6 +128,12 @@ export declare class QuestHelper {
* @returns Quests accessible to player incuding newly unlocked quests now quest (startedQuestId) was started * @returns Quests accessible to player incuding newly unlocked quests now quest (startedQuestId) was started
*/ */
getNewlyAccessibleQuestsWhenStartingQuest(startedQuestId: string, sessionID: string): IQuest[]; getNewlyAccessibleQuestsWhenStartingQuest(startedQuestId: string, sessionID: string): IQuest[];
/**
* Is the quest for the opposite side the player is on
* @param playerSide Player side (usec/bear)
* @param questId QuestId to check
*/
questIsForOtherSide(playerSide: string, questId: string): boolean;
/** /**
* Get quests that can be shown to player after failing a quest * Get quests that can be shown to player after failing a quest
* @param failedQuestId Id of the quest failed by player * @param failedQuestId Id of the quest failed by player

View File

@ -59,7 +59,7 @@ export declare class TraderHelper {
/** /**
* Reset a profiles trader data back to its initial state as seen by a level 1 player * Reset a profiles trader data back to its initial state as seen by a level 1 player
* Does NOT take into account different profile levels * Does NOT take into account different profile levels
* @param sessionID session id * @param sessionID session id of player
* @param traderID trader id to reset * @param traderID trader id to reset
*/ */
resetTrader(sessionID: string, traderID: string): void; resetTrader(sessionID: string, traderID: string): void;
@ -74,13 +74,13 @@ export declare class TraderHelper {
* Alter a traders unlocked status * Alter a traders unlocked status
* @param traderId Trader to alter * @param traderId Trader to alter
* @param status New status to use * @param status New status to use
* @param sessionId Session id * @param sessionId Session id of player
*/ */
setTraderUnlockedState(traderId: string, status: boolean, sessionId: string): void; setTraderUnlockedState(traderId: string, status: boolean, sessionId: string): void;
/** /**
* Add standing to a trader and level them up if exp goes over level threshold * Add standing to a trader and level them up if exp goes over level threshold
* @param sessionId Session id * @param sessionId Session id of player
* @param traderId Traders id * @param traderId Traders id to add standing to
* @param standingToAdd Standing value to add to trader * @param standingToAdd Standing value to add to trader
*/ */
addStandingToTrader(sessionId: string, traderId: string, standingToAdd: number): void; addStandingToTrader(sessionId: string, traderId: string, standingToAdd: number): void;

View File

@ -1,7 +1,7 @@
import { HttpServerHelper } from "@spt-aki/helpers/HttpServerHelper"; import { HttpServerHelper } from "@spt-aki/helpers/HttpServerHelper";
import { JsonUtil } from "@spt-aki/utils/JsonUtil"; import { JsonUtil } from "@spt-aki/utils/JsonUtil";
import { VFS } from "@spt-aki/utils/VFS"; import { VFS } from "@spt-aki/utils/VFS";
declare class BundleInfo { export declare class BundleInfo {
modPath: string; modPath: string;
key: string; key: string;
path: string; path: string;
@ -30,4 +30,3 @@ export interface BundleManifestEntry {
key: string; key: string;
path: string; path: string;
} }
export {};

View File

@ -1,21 +1,17 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader"; import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader";
import { IModLoader } from "@spt-aki/models/spt/mod/IModLoader"; import { IModLoader } from "@spt-aki/models/spt/mod/IModLoader";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { LocalisationService } from "@spt-aki/services/LocalisationService"; import { LocalisationService } from "@spt-aki/services/LocalisationService";
import { VFS } from "@spt-aki/utils/VFS";
export declare class PostAkiModLoader implements IModLoader { export declare class PostAkiModLoader implements IModLoader {
protected logger: ILogger; protected logger: ILogger;
protected bundleLoader: BundleLoader;
protected vfs: VFS;
protected preAkiModLoader: PreAkiModLoader; protected preAkiModLoader: PreAkiModLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
constructor(logger: ILogger, bundleLoader: BundleLoader, vfs: VFS, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck); protected container: DependencyContainer;
constructor(logger: ILogger, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck);
getModPath(mod: string): string; getModPath(mod: string): string;
load(): Promise<void>; load(): Promise<void>;
protected executeMods(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
protected addBundles(): void;
} }

View File

@ -1,17 +1,21 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { OnLoad } from "@spt-aki/di/OnLoad"; import { OnLoad } from "@spt-aki/di/OnLoad";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader"; import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { LocalisationService } from "@spt-aki/services/LocalisationService"; import { LocalisationService } from "@spt-aki/services/LocalisationService";
export declare class PostDBModLoader implements OnLoad { export declare class PostDBModLoader implements OnLoad {
protected logger: ILogger; protected logger: ILogger;
protected bundleLoader: BundleLoader;
protected preAkiModLoader: PreAkiModLoader; protected preAkiModLoader: PreAkiModLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
constructor(logger: ILogger, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck); protected container: DependencyContainer;
constructor(logger: ILogger, bundleLoader: BundleLoader, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck);
onLoad(): Promise<void>; onLoad(): Promise<void>;
getRoute(): string; getRoute(): string;
getModPath(mod: string): string; getModPath(mod: string): string;
protected executeMods(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
protected addBundles(): void;
} }

View File

@ -1,5 +1,4 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModLoadOrder } from "@spt-aki/loaders/ModLoadOrder"; import { ModLoadOrder } from "@spt-aki/loaders/ModLoadOrder";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { ModDetails } from "@spt-aki/models/eft/profile/IAkiProfile"; import { ModDetails } from "@spt-aki/models/eft/profile/IAkiProfile";
@ -17,12 +16,11 @@ export declare class PreAkiModLoader implements IModLoader {
protected vfs: VFS; protected vfs: VFS;
protected jsonUtil: JsonUtil; protected jsonUtil: JsonUtil;
protected modCompilerService: ModCompilerService; protected modCompilerService: ModCompilerService;
protected bundleLoader: BundleLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected configServer: ConfigServer; protected configServer: ConfigServer;
protected modLoadOrder: ModLoadOrder; protected modLoadOrder: ModLoadOrder;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
protected static container: DependencyContainer; protected container: DependencyContainer;
protected readonly basepath = "user/mods/"; protected readonly basepath = "user/mods/";
protected readonly modOrderPath = "user/mods/order.json"; protected readonly modOrderPath = "user/mods/order.json";
protected order: Record<string, number>; protected order: Record<string, number>;
@ -30,7 +28,7 @@ export declare class PreAkiModLoader implements IModLoader {
protected akiConfig: ICoreConfig; protected akiConfig: ICoreConfig;
protected serverDependencies: Record<string, string>; protected serverDependencies: Record<string, string>;
protected skippedMods: Set<string>; protected skippedMods: Set<string>;
constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, localisationService: LocalisationService, configServer: ConfigServer, modLoadOrder: ModLoadOrder, modTypeCheck: ModTypeCheck); constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, localisationService: LocalisationService, configServer: ConfigServer, modLoadOrder: ModLoadOrder, modTypeCheck: ModTypeCheck);
load(container: DependencyContainer): Promise<void>; load(container: DependencyContainer): Promise<void>;
/** /**
* Returns a list of mods with preserved load order * Returns a list of mods with preserved load order
@ -68,10 +66,9 @@ export declare class PreAkiModLoader implements IModLoader {
protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; protected isModCombatibleWithAki(mod: IPackageJsonData): boolean;
/** /**
* Execute each mod found in this.imported * Execute each mod found in this.imported
* @param container Dependence container to give to mod when it runs
* @returns void promise * @returns void promise
*/ */
protected executeModsAsync(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
/** /**
* Read loadorder.json (create if doesnt exist) and return sorted list of mods * Read loadorder.json (create if doesnt exist) and return sorted list of mods
* @returns string array of sorted mod names * @returns string array of sorted mod names

View File

@ -1,18 +1,13 @@
import { BundleLoader } from "@spt-aki/loaders/BundleLoader"; import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { IHttpConfig } from "@spt-aki/models/spt/config/IHttpConfig"; import { IHttpConfig } from "@spt-aki/models/spt/config/IHttpConfig";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { ConfigServer } from "@spt-aki/servers/ConfigServer"; import { ConfigServer } from "@spt-aki/servers/ConfigServer";
import { HttpFileUtil } from "@spt-aki/utils/HttpFileUtil";
import { HttpResponseUtil } from "@spt-aki/utils/HttpResponseUtil"; import { HttpResponseUtil } from "@spt-aki/utils/HttpResponseUtil";
export declare class BundleCallbacks { export declare class BundleCallbacks {
protected logger: ILogger;
protected httpResponse: HttpResponseUtil; protected httpResponse: HttpResponseUtil;
protected httpFileUtil: HttpFileUtil;
protected bundleLoader: BundleLoader; protected bundleLoader: BundleLoader;
protected configServer: ConfigServer; protected configServer: ConfigServer;
protected httpConfig: IHttpConfig; protected httpConfig: IHttpConfig;
constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpFileUtil: HttpFileUtil, bundleLoader: BundleLoader, configServer: ConfigServer); constructor(httpResponse: HttpResponseUtil, bundleLoader: BundleLoader, configServer: ConfigServer);
sendBundle(sessionID: string, req: any, resp: any, body: any): void;
/** /**
* Handle singleplayer/bundles * Handle singleplayer/bundles
*/ */

View File

@ -158,8 +158,9 @@ export declare class InraidController {
* Update profile with scav karma values based on in-raid actions * Update profile with scav karma values based on in-raid actions
* @param pmcData Pmc profile * @param pmcData Pmc profile
* @param offraidData Post-raid save request * @param offraidData Post-raid save request
* @param scavData Scav profile
*/ */
protected handlePostRaidPlayerScavKarmaChanges(pmcData: IPmcData, offraidData: ISaveProgressRequestData): void; protected handlePostRaidPlayerScavKarmaChanges(pmcData: IPmcData, offraidData: ISaveProgressRequestData, scavData: IPmcData): void;
/** /**
* Get the inraid config from configs/inraid.json * Get the inraid config from configs/inraid.json
* @returns InRaid Config * @returns InRaid Config

View File

@ -69,12 +69,6 @@ export declare class QuestController {
* @returns true = show to player * @returns true = show to player
*/ */
protected showEventQuestToPlayer(questId: string): boolean; protected showEventQuestToPlayer(questId: string): boolean;
/**
* Is the quest for the opposite side the player is on
* @param playerSide Player side (usec/bear)
* @param questId QuestId to check
*/
protected questIsForOtherSide(playerSide: string, questId: string): boolean;
/** /**
* Handle QuestAccept event * Handle QuestAccept event
* Handle the client accepting a quest and starting it * Handle the client accepting a quest and starting it

View File

@ -128,6 +128,12 @@ export declare class QuestHelper {
* @returns Quests accessible to player incuding newly unlocked quests now quest (startedQuestId) was started * @returns Quests accessible to player incuding newly unlocked quests now quest (startedQuestId) was started
*/ */
getNewlyAccessibleQuestsWhenStartingQuest(startedQuestId: string, sessionID: string): IQuest[]; getNewlyAccessibleQuestsWhenStartingQuest(startedQuestId: string, sessionID: string): IQuest[];
/**
* Is the quest for the opposite side the player is on
* @param playerSide Player side (usec/bear)
* @param questId QuestId to check
*/
questIsForOtherSide(playerSide: string, questId: string): boolean;
/** /**
* Get quests that can be shown to player after failing a quest * Get quests that can be shown to player after failing a quest
* @param failedQuestId Id of the quest failed by player * @param failedQuestId Id of the quest failed by player

View File

@ -59,7 +59,7 @@ export declare class TraderHelper {
/** /**
* Reset a profiles trader data back to its initial state as seen by a level 1 player * Reset a profiles trader data back to its initial state as seen by a level 1 player
* Does NOT take into account different profile levels * Does NOT take into account different profile levels
* @param sessionID session id * @param sessionID session id of player
* @param traderID trader id to reset * @param traderID trader id to reset
*/ */
resetTrader(sessionID: string, traderID: string): void; resetTrader(sessionID: string, traderID: string): void;
@ -74,13 +74,13 @@ export declare class TraderHelper {
* Alter a traders unlocked status * Alter a traders unlocked status
* @param traderId Trader to alter * @param traderId Trader to alter
* @param status New status to use * @param status New status to use
* @param sessionId Session id * @param sessionId Session id of player
*/ */
setTraderUnlockedState(traderId: string, status: boolean, sessionId: string): void; setTraderUnlockedState(traderId: string, status: boolean, sessionId: string): void;
/** /**
* Add standing to a trader and level them up if exp goes over level threshold * Add standing to a trader and level them up if exp goes over level threshold
* @param sessionId Session id * @param sessionId Session id of player
* @param traderId Traders id * @param traderId Traders id to add standing to
* @param standingToAdd Standing value to add to trader * @param standingToAdd Standing value to add to trader
*/ */
addStandingToTrader(sessionId: string, traderId: string, standingToAdd: number): void; addStandingToTrader(sessionId: string, traderId: string, standingToAdd: number): void;

View File

@ -1,7 +1,7 @@
import { HttpServerHelper } from "@spt-aki/helpers/HttpServerHelper"; import { HttpServerHelper } from "@spt-aki/helpers/HttpServerHelper";
import { JsonUtil } from "@spt-aki/utils/JsonUtil"; import { JsonUtil } from "@spt-aki/utils/JsonUtil";
import { VFS } from "@spt-aki/utils/VFS"; import { VFS } from "@spt-aki/utils/VFS";
declare class BundleInfo { export declare class BundleInfo {
modPath: string; modPath: string;
key: string; key: string;
path: string; path: string;
@ -30,4 +30,3 @@ export interface BundleManifestEntry {
key: string; key: string;
path: string; path: string;
} }
export {};

View File

@ -1,21 +1,17 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader"; import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader";
import { IModLoader } from "@spt-aki/models/spt/mod/IModLoader"; import { IModLoader } from "@spt-aki/models/spt/mod/IModLoader";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { LocalisationService } from "@spt-aki/services/LocalisationService"; import { LocalisationService } from "@spt-aki/services/LocalisationService";
import { VFS } from "@spt-aki/utils/VFS";
export declare class PostAkiModLoader implements IModLoader { export declare class PostAkiModLoader implements IModLoader {
protected logger: ILogger; protected logger: ILogger;
protected bundleLoader: BundleLoader;
protected vfs: VFS;
protected preAkiModLoader: PreAkiModLoader; protected preAkiModLoader: PreAkiModLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
constructor(logger: ILogger, bundleLoader: BundleLoader, vfs: VFS, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck); protected container: DependencyContainer;
constructor(logger: ILogger, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck);
getModPath(mod: string): string; getModPath(mod: string): string;
load(): Promise<void>; load(): Promise<void>;
protected executeMods(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
protected addBundles(): void;
} }

View File

@ -1,17 +1,21 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { OnLoad } from "@spt-aki/di/OnLoad"; import { OnLoad } from "@spt-aki/di/OnLoad";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader"; import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { LocalisationService } from "@spt-aki/services/LocalisationService"; import { LocalisationService } from "@spt-aki/services/LocalisationService";
export declare class PostDBModLoader implements OnLoad { export declare class PostDBModLoader implements OnLoad {
protected logger: ILogger; protected logger: ILogger;
protected bundleLoader: BundleLoader;
protected preAkiModLoader: PreAkiModLoader; protected preAkiModLoader: PreAkiModLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
constructor(logger: ILogger, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck); protected container: DependencyContainer;
constructor(logger: ILogger, bundleLoader: BundleLoader, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck);
onLoad(): Promise<void>; onLoad(): Promise<void>;
getRoute(): string; getRoute(): string;
getModPath(mod: string): string; getModPath(mod: string): string;
protected executeMods(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
protected addBundles(): void;
} }

View File

@ -1,5 +1,4 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModLoadOrder } from "@spt-aki/loaders/ModLoadOrder"; import { ModLoadOrder } from "@spt-aki/loaders/ModLoadOrder";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { ModDetails } from "@spt-aki/models/eft/profile/IAkiProfile"; import { ModDetails } from "@spt-aki/models/eft/profile/IAkiProfile";
@ -17,12 +16,11 @@ export declare class PreAkiModLoader implements IModLoader {
protected vfs: VFS; protected vfs: VFS;
protected jsonUtil: JsonUtil; protected jsonUtil: JsonUtil;
protected modCompilerService: ModCompilerService; protected modCompilerService: ModCompilerService;
protected bundleLoader: BundleLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected configServer: ConfigServer; protected configServer: ConfigServer;
protected modLoadOrder: ModLoadOrder; protected modLoadOrder: ModLoadOrder;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
protected static container: DependencyContainer; protected container: DependencyContainer;
protected readonly basepath = "user/mods/"; protected readonly basepath = "user/mods/";
protected readonly modOrderPath = "user/mods/order.json"; protected readonly modOrderPath = "user/mods/order.json";
protected order: Record<string, number>; protected order: Record<string, number>;
@ -30,7 +28,7 @@ export declare class PreAkiModLoader implements IModLoader {
protected akiConfig: ICoreConfig; protected akiConfig: ICoreConfig;
protected serverDependencies: Record<string, string>; protected serverDependencies: Record<string, string>;
protected skippedMods: Set<string>; protected skippedMods: Set<string>;
constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, localisationService: LocalisationService, configServer: ConfigServer, modLoadOrder: ModLoadOrder, modTypeCheck: ModTypeCheck); constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, localisationService: LocalisationService, configServer: ConfigServer, modLoadOrder: ModLoadOrder, modTypeCheck: ModTypeCheck);
load(container: DependencyContainer): Promise<void>; load(container: DependencyContainer): Promise<void>;
/** /**
* Returns a list of mods with preserved load order * Returns a list of mods with preserved load order
@ -68,10 +66,9 @@ export declare class PreAkiModLoader implements IModLoader {
protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; protected isModCombatibleWithAki(mod: IPackageJsonData): boolean;
/** /**
* Execute each mod found in this.imported * Execute each mod found in this.imported
* @param container Dependence container to give to mod when it runs
* @returns void promise * @returns void promise
*/ */
protected executeModsAsync(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
/** /**
* Read loadorder.json (create if doesnt exist) and return sorted list of mods * Read loadorder.json (create if doesnt exist) and return sorted list of mods
* @returns string array of sorted mod names * @returns string array of sorted mod names

View File

@ -1,18 +1,13 @@
import { BundleLoader } from "@spt-aki/loaders/BundleLoader"; import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { IHttpConfig } from "@spt-aki/models/spt/config/IHttpConfig"; import { IHttpConfig } from "@spt-aki/models/spt/config/IHttpConfig";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { ConfigServer } from "@spt-aki/servers/ConfigServer"; import { ConfigServer } from "@spt-aki/servers/ConfigServer";
import { HttpFileUtil } from "@spt-aki/utils/HttpFileUtil";
import { HttpResponseUtil } from "@spt-aki/utils/HttpResponseUtil"; import { HttpResponseUtil } from "@spt-aki/utils/HttpResponseUtil";
export declare class BundleCallbacks { export declare class BundleCallbacks {
protected logger: ILogger;
protected httpResponse: HttpResponseUtil; protected httpResponse: HttpResponseUtil;
protected httpFileUtil: HttpFileUtil;
protected bundleLoader: BundleLoader; protected bundleLoader: BundleLoader;
protected configServer: ConfigServer; protected configServer: ConfigServer;
protected httpConfig: IHttpConfig; protected httpConfig: IHttpConfig;
constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpFileUtil: HttpFileUtil, bundleLoader: BundleLoader, configServer: ConfigServer); constructor(httpResponse: HttpResponseUtil, bundleLoader: BundleLoader, configServer: ConfigServer);
sendBundle(sessionID: string, req: any, resp: any, body: any): void;
/** /**
* Handle singleplayer/bundles * Handle singleplayer/bundles
*/ */

View File

@ -158,8 +158,9 @@ export declare class InraidController {
* Update profile with scav karma values based on in-raid actions * Update profile with scav karma values based on in-raid actions
* @param pmcData Pmc profile * @param pmcData Pmc profile
* @param offraidData Post-raid save request * @param offraidData Post-raid save request
* @param scavData Scav profile
*/ */
protected handlePostRaidPlayerScavKarmaChanges(pmcData: IPmcData, offraidData: ISaveProgressRequestData): void; protected handlePostRaidPlayerScavKarmaChanges(pmcData: IPmcData, offraidData: ISaveProgressRequestData, scavData: IPmcData): void;
/** /**
* Get the inraid config from configs/inraid.json * Get the inraid config from configs/inraid.json
* @returns InRaid Config * @returns InRaid Config

View File

@ -69,12 +69,6 @@ export declare class QuestController {
* @returns true = show to player * @returns true = show to player
*/ */
protected showEventQuestToPlayer(questId: string): boolean; protected showEventQuestToPlayer(questId: string): boolean;
/**
* Is the quest for the opposite side the player is on
* @param playerSide Player side (usec/bear)
* @param questId QuestId to check
*/
protected questIsForOtherSide(playerSide: string, questId: string): boolean;
/** /**
* Handle QuestAccept event * Handle QuestAccept event
* Handle the client accepting a quest and starting it * Handle the client accepting a quest and starting it

View File

@ -128,6 +128,12 @@ export declare class QuestHelper {
* @returns Quests accessible to player incuding newly unlocked quests now quest (startedQuestId) was started * @returns Quests accessible to player incuding newly unlocked quests now quest (startedQuestId) was started
*/ */
getNewlyAccessibleQuestsWhenStartingQuest(startedQuestId: string, sessionID: string): IQuest[]; getNewlyAccessibleQuestsWhenStartingQuest(startedQuestId: string, sessionID: string): IQuest[];
/**
* Is the quest for the opposite side the player is on
* @param playerSide Player side (usec/bear)
* @param questId QuestId to check
*/
questIsForOtherSide(playerSide: string, questId: string): boolean;
/** /**
* Get quests that can be shown to player after failing a quest * Get quests that can be shown to player after failing a quest
* @param failedQuestId Id of the quest failed by player * @param failedQuestId Id of the quest failed by player

View File

@ -59,7 +59,7 @@ export declare class TraderHelper {
/** /**
* Reset a profiles trader data back to its initial state as seen by a level 1 player * Reset a profiles trader data back to its initial state as seen by a level 1 player
* Does NOT take into account different profile levels * Does NOT take into account different profile levels
* @param sessionID session id * @param sessionID session id of player
* @param traderID trader id to reset * @param traderID trader id to reset
*/ */
resetTrader(sessionID: string, traderID: string): void; resetTrader(sessionID: string, traderID: string): void;
@ -74,13 +74,13 @@ export declare class TraderHelper {
* Alter a traders unlocked status * Alter a traders unlocked status
* @param traderId Trader to alter * @param traderId Trader to alter
* @param status New status to use * @param status New status to use
* @param sessionId Session id * @param sessionId Session id of player
*/ */
setTraderUnlockedState(traderId: string, status: boolean, sessionId: string): void; setTraderUnlockedState(traderId: string, status: boolean, sessionId: string): void;
/** /**
* Add standing to a trader and level them up if exp goes over level threshold * Add standing to a trader and level them up if exp goes over level threshold
* @param sessionId Session id * @param sessionId Session id of player
* @param traderId Traders id * @param traderId Traders id to add standing to
* @param standingToAdd Standing value to add to trader * @param standingToAdd Standing value to add to trader
*/ */
addStandingToTrader(sessionId: string, traderId: string, standingToAdd: number): void; addStandingToTrader(sessionId: string, traderId: string, standingToAdd: number): void;

View File

@ -1,7 +1,7 @@
import { HttpServerHelper } from "@spt-aki/helpers/HttpServerHelper"; import { HttpServerHelper } from "@spt-aki/helpers/HttpServerHelper";
import { JsonUtil } from "@spt-aki/utils/JsonUtil"; import { JsonUtil } from "@spt-aki/utils/JsonUtil";
import { VFS } from "@spt-aki/utils/VFS"; import { VFS } from "@spt-aki/utils/VFS";
declare class BundleInfo { export declare class BundleInfo {
modPath: string; modPath: string;
key: string; key: string;
path: string; path: string;
@ -30,4 +30,3 @@ export interface BundleManifestEntry {
key: string; key: string;
path: string; path: string;
} }
export {};

View File

@ -1,21 +1,17 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader"; import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader";
import { IModLoader } from "@spt-aki/models/spt/mod/IModLoader"; import { IModLoader } from "@spt-aki/models/spt/mod/IModLoader";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { LocalisationService } from "@spt-aki/services/LocalisationService"; import { LocalisationService } from "@spt-aki/services/LocalisationService";
import { VFS } from "@spt-aki/utils/VFS";
export declare class PostAkiModLoader implements IModLoader { export declare class PostAkiModLoader implements IModLoader {
protected logger: ILogger; protected logger: ILogger;
protected bundleLoader: BundleLoader;
protected vfs: VFS;
protected preAkiModLoader: PreAkiModLoader; protected preAkiModLoader: PreAkiModLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
constructor(logger: ILogger, bundleLoader: BundleLoader, vfs: VFS, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck); protected container: DependencyContainer;
constructor(logger: ILogger, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck);
getModPath(mod: string): string; getModPath(mod: string): string;
load(): Promise<void>; load(): Promise<void>;
protected executeMods(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
protected addBundles(): void;
} }

View File

@ -1,17 +1,21 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { OnLoad } from "@spt-aki/di/OnLoad"; import { OnLoad } from "@spt-aki/di/OnLoad";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader"; import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { LocalisationService } from "@spt-aki/services/LocalisationService"; import { LocalisationService } from "@spt-aki/services/LocalisationService";
export declare class PostDBModLoader implements OnLoad { export declare class PostDBModLoader implements OnLoad {
protected logger: ILogger; protected logger: ILogger;
protected bundleLoader: BundleLoader;
protected preAkiModLoader: PreAkiModLoader; protected preAkiModLoader: PreAkiModLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
constructor(logger: ILogger, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck); protected container: DependencyContainer;
constructor(logger: ILogger, bundleLoader: BundleLoader, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck);
onLoad(): Promise<void>; onLoad(): Promise<void>;
getRoute(): string; getRoute(): string;
getModPath(mod: string): string; getModPath(mod: string): string;
protected executeMods(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
protected addBundles(): void;
} }

View File

@ -1,5 +1,4 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModLoadOrder } from "@spt-aki/loaders/ModLoadOrder"; import { ModLoadOrder } from "@spt-aki/loaders/ModLoadOrder";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { ModDetails } from "@spt-aki/models/eft/profile/IAkiProfile"; import { ModDetails } from "@spt-aki/models/eft/profile/IAkiProfile";
@ -17,12 +16,11 @@ export declare class PreAkiModLoader implements IModLoader {
protected vfs: VFS; protected vfs: VFS;
protected jsonUtil: JsonUtil; protected jsonUtil: JsonUtil;
protected modCompilerService: ModCompilerService; protected modCompilerService: ModCompilerService;
protected bundleLoader: BundleLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected configServer: ConfigServer; protected configServer: ConfigServer;
protected modLoadOrder: ModLoadOrder; protected modLoadOrder: ModLoadOrder;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
protected static container: DependencyContainer; protected container: DependencyContainer;
protected readonly basepath = "user/mods/"; protected readonly basepath = "user/mods/";
protected readonly modOrderPath = "user/mods/order.json"; protected readonly modOrderPath = "user/mods/order.json";
protected order: Record<string, number>; protected order: Record<string, number>;
@ -30,7 +28,7 @@ export declare class PreAkiModLoader implements IModLoader {
protected akiConfig: ICoreConfig; protected akiConfig: ICoreConfig;
protected serverDependencies: Record<string, string>; protected serverDependencies: Record<string, string>;
protected skippedMods: Set<string>; protected skippedMods: Set<string>;
constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, localisationService: LocalisationService, configServer: ConfigServer, modLoadOrder: ModLoadOrder, modTypeCheck: ModTypeCheck); constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, localisationService: LocalisationService, configServer: ConfigServer, modLoadOrder: ModLoadOrder, modTypeCheck: ModTypeCheck);
load(container: DependencyContainer): Promise<void>; load(container: DependencyContainer): Promise<void>;
/** /**
* Returns a list of mods with preserved load order * Returns a list of mods with preserved load order
@ -68,10 +66,9 @@ export declare class PreAkiModLoader implements IModLoader {
protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; protected isModCombatibleWithAki(mod: IPackageJsonData): boolean;
/** /**
* Execute each mod found in this.imported * Execute each mod found in this.imported
* @param container Dependence container to give to mod when it runs
* @returns void promise * @returns void promise
*/ */
protected executeModsAsync(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
/** /**
* Read loadorder.json (create if doesnt exist) and return sorted list of mods * Read loadorder.json (create if doesnt exist) and return sorted list of mods
* @returns string array of sorted mod names * @returns string array of sorted mod names

View File

@ -1,18 +1,13 @@
import { BundleLoader } from "@spt-aki/loaders/BundleLoader"; import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { IHttpConfig } from "@spt-aki/models/spt/config/IHttpConfig"; import { IHttpConfig } from "@spt-aki/models/spt/config/IHttpConfig";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { ConfigServer } from "@spt-aki/servers/ConfigServer"; import { ConfigServer } from "@spt-aki/servers/ConfigServer";
import { HttpFileUtil } from "@spt-aki/utils/HttpFileUtil";
import { HttpResponseUtil } from "@spt-aki/utils/HttpResponseUtil"; import { HttpResponseUtil } from "@spt-aki/utils/HttpResponseUtil";
export declare class BundleCallbacks { export declare class BundleCallbacks {
protected logger: ILogger;
protected httpResponse: HttpResponseUtil; protected httpResponse: HttpResponseUtil;
protected httpFileUtil: HttpFileUtil;
protected bundleLoader: BundleLoader; protected bundleLoader: BundleLoader;
protected configServer: ConfigServer; protected configServer: ConfigServer;
protected httpConfig: IHttpConfig; protected httpConfig: IHttpConfig;
constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpFileUtil: HttpFileUtil, bundleLoader: BundleLoader, configServer: ConfigServer); constructor(httpResponse: HttpResponseUtil, bundleLoader: BundleLoader, configServer: ConfigServer);
sendBundle(sessionID: string, req: any, resp: any, body: any): void;
/** /**
* Handle singleplayer/bundles * Handle singleplayer/bundles
*/ */

View File

@ -158,8 +158,9 @@ export declare class InraidController {
* Update profile with scav karma values based on in-raid actions * Update profile with scav karma values based on in-raid actions
* @param pmcData Pmc profile * @param pmcData Pmc profile
* @param offraidData Post-raid save request * @param offraidData Post-raid save request
* @param scavData Scav profile
*/ */
protected handlePostRaidPlayerScavKarmaChanges(pmcData: IPmcData, offraidData: ISaveProgressRequestData): void; protected handlePostRaidPlayerScavKarmaChanges(pmcData: IPmcData, offraidData: ISaveProgressRequestData, scavData: IPmcData): void;
/** /**
* Get the inraid config from configs/inraid.json * Get the inraid config from configs/inraid.json
* @returns InRaid Config * @returns InRaid Config

View File

@ -69,12 +69,6 @@ export declare class QuestController {
* @returns true = show to player * @returns true = show to player
*/ */
protected showEventQuestToPlayer(questId: string): boolean; protected showEventQuestToPlayer(questId: string): boolean;
/**
* Is the quest for the opposite side the player is on
* @param playerSide Player side (usec/bear)
* @param questId QuestId to check
*/
protected questIsForOtherSide(playerSide: string, questId: string): boolean;
/** /**
* Handle QuestAccept event * Handle QuestAccept event
* Handle the client accepting a quest and starting it * Handle the client accepting a quest and starting it

View File

@ -128,6 +128,12 @@ export declare class QuestHelper {
* @returns Quests accessible to player incuding newly unlocked quests now quest (startedQuestId) was started * @returns Quests accessible to player incuding newly unlocked quests now quest (startedQuestId) was started
*/ */
getNewlyAccessibleQuestsWhenStartingQuest(startedQuestId: string, sessionID: string): IQuest[]; getNewlyAccessibleQuestsWhenStartingQuest(startedQuestId: string, sessionID: string): IQuest[];
/**
* Is the quest for the opposite side the player is on
* @param playerSide Player side (usec/bear)
* @param questId QuestId to check
*/
questIsForOtherSide(playerSide: string, questId: string): boolean;
/** /**
* Get quests that can be shown to player after failing a quest * Get quests that can be shown to player after failing a quest
* @param failedQuestId Id of the quest failed by player * @param failedQuestId Id of the quest failed by player

View File

@ -59,7 +59,7 @@ export declare class TraderHelper {
/** /**
* Reset a profiles trader data back to its initial state as seen by a level 1 player * Reset a profiles trader data back to its initial state as seen by a level 1 player
* Does NOT take into account different profile levels * Does NOT take into account different profile levels
* @param sessionID session id * @param sessionID session id of player
* @param traderID trader id to reset * @param traderID trader id to reset
*/ */
resetTrader(sessionID: string, traderID: string): void; resetTrader(sessionID: string, traderID: string): void;
@ -74,13 +74,13 @@ export declare class TraderHelper {
* Alter a traders unlocked status * Alter a traders unlocked status
* @param traderId Trader to alter * @param traderId Trader to alter
* @param status New status to use * @param status New status to use
* @param sessionId Session id * @param sessionId Session id of player
*/ */
setTraderUnlockedState(traderId: string, status: boolean, sessionId: string): void; setTraderUnlockedState(traderId: string, status: boolean, sessionId: string): void;
/** /**
* Add standing to a trader and level them up if exp goes over level threshold * Add standing to a trader and level them up if exp goes over level threshold
* @param sessionId Session id * @param sessionId Session id of player
* @param traderId Traders id * @param traderId Traders id to add standing to
* @param standingToAdd Standing value to add to trader * @param standingToAdd Standing value to add to trader
*/ */
addStandingToTrader(sessionId: string, traderId: string, standingToAdd: number): void; addStandingToTrader(sessionId: string, traderId: string, standingToAdd: number): void;

View File

@ -1,7 +1,7 @@
import { HttpServerHelper } from "@spt-aki/helpers/HttpServerHelper"; import { HttpServerHelper } from "@spt-aki/helpers/HttpServerHelper";
import { JsonUtil } from "@spt-aki/utils/JsonUtil"; import { JsonUtil } from "@spt-aki/utils/JsonUtil";
import { VFS } from "@spt-aki/utils/VFS"; import { VFS } from "@spt-aki/utils/VFS";
declare class BundleInfo { export declare class BundleInfo {
modPath: string; modPath: string;
key: string; key: string;
path: string; path: string;
@ -30,4 +30,3 @@ export interface BundleManifestEntry {
key: string; key: string;
path: string; path: string;
} }
export {};

View File

@ -1,21 +1,17 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader"; import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader";
import { IModLoader } from "@spt-aki/models/spt/mod/IModLoader"; import { IModLoader } from "@spt-aki/models/spt/mod/IModLoader";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { LocalisationService } from "@spt-aki/services/LocalisationService"; import { LocalisationService } from "@spt-aki/services/LocalisationService";
import { VFS } from "@spt-aki/utils/VFS";
export declare class PostAkiModLoader implements IModLoader { export declare class PostAkiModLoader implements IModLoader {
protected logger: ILogger; protected logger: ILogger;
protected bundleLoader: BundleLoader;
protected vfs: VFS;
protected preAkiModLoader: PreAkiModLoader; protected preAkiModLoader: PreAkiModLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
constructor(logger: ILogger, bundleLoader: BundleLoader, vfs: VFS, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck); protected container: DependencyContainer;
constructor(logger: ILogger, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck);
getModPath(mod: string): string; getModPath(mod: string): string;
load(): Promise<void>; load(): Promise<void>;
protected executeMods(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
protected addBundles(): void;
} }

View File

@ -1,17 +1,21 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { OnLoad } from "@spt-aki/di/OnLoad"; import { OnLoad } from "@spt-aki/di/OnLoad";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader"; import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { LocalisationService } from "@spt-aki/services/LocalisationService"; import { LocalisationService } from "@spt-aki/services/LocalisationService";
export declare class PostDBModLoader implements OnLoad { export declare class PostDBModLoader implements OnLoad {
protected logger: ILogger; protected logger: ILogger;
protected bundleLoader: BundleLoader;
protected preAkiModLoader: PreAkiModLoader; protected preAkiModLoader: PreAkiModLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
constructor(logger: ILogger, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck); protected container: DependencyContainer;
constructor(logger: ILogger, bundleLoader: BundleLoader, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck);
onLoad(): Promise<void>; onLoad(): Promise<void>;
getRoute(): string; getRoute(): string;
getModPath(mod: string): string; getModPath(mod: string): string;
protected executeMods(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
protected addBundles(): void;
} }

View File

@ -1,5 +1,4 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModLoadOrder } from "@spt-aki/loaders/ModLoadOrder"; import { ModLoadOrder } from "@spt-aki/loaders/ModLoadOrder";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { ModDetails } from "@spt-aki/models/eft/profile/IAkiProfile"; import { ModDetails } from "@spt-aki/models/eft/profile/IAkiProfile";
@ -17,12 +16,11 @@ export declare class PreAkiModLoader implements IModLoader {
protected vfs: VFS; protected vfs: VFS;
protected jsonUtil: JsonUtil; protected jsonUtil: JsonUtil;
protected modCompilerService: ModCompilerService; protected modCompilerService: ModCompilerService;
protected bundleLoader: BundleLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected configServer: ConfigServer; protected configServer: ConfigServer;
protected modLoadOrder: ModLoadOrder; protected modLoadOrder: ModLoadOrder;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
protected static container: DependencyContainer; protected container: DependencyContainer;
protected readonly basepath = "user/mods/"; protected readonly basepath = "user/mods/";
protected readonly modOrderPath = "user/mods/order.json"; protected readonly modOrderPath = "user/mods/order.json";
protected order: Record<string, number>; protected order: Record<string, number>;
@ -30,7 +28,7 @@ export declare class PreAkiModLoader implements IModLoader {
protected akiConfig: ICoreConfig; protected akiConfig: ICoreConfig;
protected serverDependencies: Record<string, string>; protected serverDependencies: Record<string, string>;
protected skippedMods: Set<string>; protected skippedMods: Set<string>;
constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, localisationService: LocalisationService, configServer: ConfigServer, modLoadOrder: ModLoadOrder, modTypeCheck: ModTypeCheck); constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, localisationService: LocalisationService, configServer: ConfigServer, modLoadOrder: ModLoadOrder, modTypeCheck: ModTypeCheck);
load(container: DependencyContainer): Promise<void>; load(container: DependencyContainer): Promise<void>;
/** /**
* Returns a list of mods with preserved load order * Returns a list of mods with preserved load order
@ -68,10 +66,9 @@ export declare class PreAkiModLoader implements IModLoader {
protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; protected isModCombatibleWithAki(mod: IPackageJsonData): boolean;
/** /**
* Execute each mod found in this.imported * Execute each mod found in this.imported
* @param container Dependence container to give to mod when it runs
* @returns void promise * @returns void promise
*/ */
protected executeModsAsync(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
/** /**
* Read loadorder.json (create if doesnt exist) and return sorted list of mods * Read loadorder.json (create if doesnt exist) and return sorted list of mods
* @returns string array of sorted mod names * @returns string array of sorted mod names

View File

@ -1,18 +1,13 @@
import { BundleLoader } from "@spt-aki/loaders/BundleLoader"; import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { IHttpConfig } from "@spt-aki/models/spt/config/IHttpConfig"; import { IHttpConfig } from "@spt-aki/models/spt/config/IHttpConfig";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { ConfigServer } from "@spt-aki/servers/ConfigServer"; import { ConfigServer } from "@spt-aki/servers/ConfigServer";
import { HttpFileUtil } from "@spt-aki/utils/HttpFileUtil";
import { HttpResponseUtil } from "@spt-aki/utils/HttpResponseUtil"; import { HttpResponseUtil } from "@spt-aki/utils/HttpResponseUtil";
export declare class BundleCallbacks { export declare class BundleCallbacks {
protected logger: ILogger;
protected httpResponse: HttpResponseUtil; protected httpResponse: HttpResponseUtil;
protected httpFileUtil: HttpFileUtil;
protected bundleLoader: BundleLoader; protected bundleLoader: BundleLoader;
protected configServer: ConfigServer; protected configServer: ConfigServer;
protected httpConfig: IHttpConfig; protected httpConfig: IHttpConfig;
constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpFileUtil: HttpFileUtil, bundleLoader: BundleLoader, configServer: ConfigServer); constructor(httpResponse: HttpResponseUtil, bundleLoader: BundleLoader, configServer: ConfigServer);
sendBundle(sessionID: string, req: any, resp: any, body: any): void;
/** /**
* Handle singleplayer/bundles * Handle singleplayer/bundles
*/ */

View File

@ -158,8 +158,9 @@ export declare class InraidController {
* Update profile with scav karma values based on in-raid actions * Update profile with scav karma values based on in-raid actions
* @param pmcData Pmc profile * @param pmcData Pmc profile
* @param offraidData Post-raid save request * @param offraidData Post-raid save request
* @param scavData Scav profile
*/ */
protected handlePostRaidPlayerScavKarmaChanges(pmcData: IPmcData, offraidData: ISaveProgressRequestData): void; protected handlePostRaidPlayerScavKarmaChanges(pmcData: IPmcData, offraidData: ISaveProgressRequestData, scavData: IPmcData): void;
/** /**
* Get the inraid config from configs/inraid.json * Get the inraid config from configs/inraid.json
* @returns InRaid Config * @returns InRaid Config

View File

@ -69,12 +69,6 @@ export declare class QuestController {
* @returns true = show to player * @returns true = show to player
*/ */
protected showEventQuestToPlayer(questId: string): boolean; protected showEventQuestToPlayer(questId: string): boolean;
/**
* Is the quest for the opposite side the player is on
* @param playerSide Player side (usec/bear)
* @param questId QuestId to check
*/
protected questIsForOtherSide(playerSide: string, questId: string): boolean;
/** /**
* Handle QuestAccept event * Handle QuestAccept event
* Handle the client accepting a quest and starting it * Handle the client accepting a quest and starting it

View File

@ -128,6 +128,12 @@ export declare class QuestHelper {
* @returns Quests accessible to player incuding newly unlocked quests now quest (startedQuestId) was started * @returns Quests accessible to player incuding newly unlocked quests now quest (startedQuestId) was started
*/ */
getNewlyAccessibleQuestsWhenStartingQuest(startedQuestId: string, sessionID: string): IQuest[]; getNewlyAccessibleQuestsWhenStartingQuest(startedQuestId: string, sessionID: string): IQuest[];
/**
* Is the quest for the opposite side the player is on
* @param playerSide Player side (usec/bear)
* @param questId QuestId to check
*/
questIsForOtherSide(playerSide: string, questId: string): boolean;
/** /**
* Get quests that can be shown to player after failing a quest * Get quests that can be shown to player after failing a quest
* @param failedQuestId Id of the quest failed by player * @param failedQuestId Id of the quest failed by player

View File

@ -59,7 +59,7 @@ export declare class TraderHelper {
/** /**
* Reset a profiles trader data back to its initial state as seen by a level 1 player * Reset a profiles trader data back to its initial state as seen by a level 1 player
* Does NOT take into account different profile levels * Does NOT take into account different profile levels
* @param sessionID session id * @param sessionID session id of player
* @param traderID trader id to reset * @param traderID trader id to reset
*/ */
resetTrader(sessionID: string, traderID: string): void; resetTrader(sessionID: string, traderID: string): void;
@ -74,13 +74,13 @@ export declare class TraderHelper {
* Alter a traders unlocked status * Alter a traders unlocked status
* @param traderId Trader to alter * @param traderId Trader to alter
* @param status New status to use * @param status New status to use
* @param sessionId Session id * @param sessionId Session id of player
*/ */
setTraderUnlockedState(traderId: string, status: boolean, sessionId: string): void; setTraderUnlockedState(traderId: string, status: boolean, sessionId: string): void;
/** /**
* Add standing to a trader and level them up if exp goes over level threshold * Add standing to a trader and level them up if exp goes over level threshold
* @param sessionId Session id * @param sessionId Session id of player
* @param traderId Traders id * @param traderId Traders id to add standing to
* @param standingToAdd Standing value to add to trader * @param standingToAdd Standing value to add to trader
*/ */
addStandingToTrader(sessionId: string, traderId: string, standingToAdd: number): void; addStandingToTrader(sessionId: string, traderId: string, standingToAdd: number): void;

View File

@ -1,7 +1,7 @@
import { HttpServerHelper } from "@spt-aki/helpers/HttpServerHelper"; import { HttpServerHelper } from "@spt-aki/helpers/HttpServerHelper";
import { JsonUtil } from "@spt-aki/utils/JsonUtil"; import { JsonUtil } from "@spt-aki/utils/JsonUtil";
import { VFS } from "@spt-aki/utils/VFS"; import { VFS } from "@spt-aki/utils/VFS";
declare class BundleInfo { export declare class BundleInfo {
modPath: string; modPath: string;
key: string; key: string;
path: string; path: string;
@ -30,4 +30,3 @@ export interface BundleManifestEntry {
key: string; key: string;
path: string; path: string;
} }
export {};

View File

@ -1,21 +1,17 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader"; import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader";
import { IModLoader } from "@spt-aki/models/spt/mod/IModLoader"; import { IModLoader } from "@spt-aki/models/spt/mod/IModLoader";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { LocalisationService } from "@spt-aki/services/LocalisationService"; import { LocalisationService } from "@spt-aki/services/LocalisationService";
import { VFS } from "@spt-aki/utils/VFS";
export declare class PostAkiModLoader implements IModLoader { export declare class PostAkiModLoader implements IModLoader {
protected logger: ILogger; protected logger: ILogger;
protected bundleLoader: BundleLoader;
protected vfs: VFS;
protected preAkiModLoader: PreAkiModLoader; protected preAkiModLoader: PreAkiModLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
constructor(logger: ILogger, bundleLoader: BundleLoader, vfs: VFS, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck); protected container: DependencyContainer;
constructor(logger: ILogger, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck);
getModPath(mod: string): string; getModPath(mod: string): string;
load(): Promise<void>; load(): Promise<void>;
protected executeMods(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
protected addBundles(): void;
} }

View File

@ -1,17 +1,21 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { OnLoad } from "@spt-aki/di/OnLoad"; import { OnLoad } from "@spt-aki/di/OnLoad";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader"; import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { LocalisationService } from "@spt-aki/services/LocalisationService"; import { LocalisationService } from "@spt-aki/services/LocalisationService";
export declare class PostDBModLoader implements OnLoad { export declare class PostDBModLoader implements OnLoad {
protected logger: ILogger; protected logger: ILogger;
protected bundleLoader: BundleLoader;
protected preAkiModLoader: PreAkiModLoader; protected preAkiModLoader: PreAkiModLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
constructor(logger: ILogger, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck); protected container: DependencyContainer;
constructor(logger: ILogger, bundleLoader: BundleLoader, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck);
onLoad(): Promise<void>; onLoad(): Promise<void>;
getRoute(): string; getRoute(): string;
getModPath(mod: string): string; getModPath(mod: string): string;
protected executeMods(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
protected addBundles(): void;
} }

View File

@ -1,5 +1,4 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModLoadOrder } from "@spt-aki/loaders/ModLoadOrder"; import { ModLoadOrder } from "@spt-aki/loaders/ModLoadOrder";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { ModDetails } from "@spt-aki/models/eft/profile/IAkiProfile"; import { ModDetails } from "@spt-aki/models/eft/profile/IAkiProfile";
@ -17,12 +16,11 @@ export declare class PreAkiModLoader implements IModLoader {
protected vfs: VFS; protected vfs: VFS;
protected jsonUtil: JsonUtil; protected jsonUtil: JsonUtil;
protected modCompilerService: ModCompilerService; protected modCompilerService: ModCompilerService;
protected bundleLoader: BundleLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected configServer: ConfigServer; protected configServer: ConfigServer;
protected modLoadOrder: ModLoadOrder; protected modLoadOrder: ModLoadOrder;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
protected static container: DependencyContainer; protected container: DependencyContainer;
protected readonly basepath = "user/mods/"; protected readonly basepath = "user/mods/";
protected readonly modOrderPath = "user/mods/order.json"; protected readonly modOrderPath = "user/mods/order.json";
protected order: Record<string, number>; protected order: Record<string, number>;
@ -30,7 +28,7 @@ export declare class PreAkiModLoader implements IModLoader {
protected akiConfig: ICoreConfig; protected akiConfig: ICoreConfig;
protected serverDependencies: Record<string, string>; protected serverDependencies: Record<string, string>;
protected skippedMods: Set<string>; protected skippedMods: Set<string>;
constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, localisationService: LocalisationService, configServer: ConfigServer, modLoadOrder: ModLoadOrder, modTypeCheck: ModTypeCheck); constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, localisationService: LocalisationService, configServer: ConfigServer, modLoadOrder: ModLoadOrder, modTypeCheck: ModTypeCheck);
load(container: DependencyContainer): Promise<void>; load(container: DependencyContainer): Promise<void>;
/** /**
* Returns a list of mods with preserved load order * Returns a list of mods with preserved load order
@ -68,10 +66,9 @@ export declare class PreAkiModLoader implements IModLoader {
protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; protected isModCombatibleWithAki(mod: IPackageJsonData): boolean;
/** /**
* Execute each mod found in this.imported * Execute each mod found in this.imported
* @param container Dependence container to give to mod when it runs
* @returns void promise * @returns void promise
*/ */
protected executeModsAsync(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
/** /**
* Read loadorder.json (create if doesnt exist) and return sorted list of mods * Read loadorder.json (create if doesnt exist) and return sorted list of mods
* @returns string array of sorted mod names * @returns string array of sorted mod names

View File

@ -1,18 +1,13 @@
import { BundleLoader } from "@spt-aki/loaders/BundleLoader"; import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { IHttpConfig } from "@spt-aki/models/spt/config/IHttpConfig"; import { IHttpConfig } from "@spt-aki/models/spt/config/IHttpConfig";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { ConfigServer } from "@spt-aki/servers/ConfigServer"; import { ConfigServer } from "@spt-aki/servers/ConfigServer";
import { HttpFileUtil } from "@spt-aki/utils/HttpFileUtil";
import { HttpResponseUtil } from "@spt-aki/utils/HttpResponseUtil"; import { HttpResponseUtil } from "@spt-aki/utils/HttpResponseUtil";
export declare class BundleCallbacks { export declare class BundleCallbacks {
protected logger: ILogger;
protected httpResponse: HttpResponseUtil; protected httpResponse: HttpResponseUtil;
protected httpFileUtil: HttpFileUtil;
protected bundleLoader: BundleLoader; protected bundleLoader: BundleLoader;
protected configServer: ConfigServer; protected configServer: ConfigServer;
protected httpConfig: IHttpConfig; protected httpConfig: IHttpConfig;
constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpFileUtil: HttpFileUtil, bundleLoader: BundleLoader, configServer: ConfigServer); constructor(httpResponse: HttpResponseUtil, bundleLoader: BundleLoader, configServer: ConfigServer);
sendBundle(sessionID: string, req: any, resp: any, body: any): void;
/** /**
* Handle singleplayer/bundles * Handle singleplayer/bundles
*/ */

View File

@ -158,8 +158,9 @@ export declare class InraidController {
* Update profile with scav karma values based on in-raid actions * Update profile with scav karma values based on in-raid actions
* @param pmcData Pmc profile * @param pmcData Pmc profile
* @param offraidData Post-raid save request * @param offraidData Post-raid save request
* @param scavData Scav profile
*/ */
protected handlePostRaidPlayerScavKarmaChanges(pmcData: IPmcData, offraidData: ISaveProgressRequestData): void; protected handlePostRaidPlayerScavKarmaChanges(pmcData: IPmcData, offraidData: ISaveProgressRequestData, scavData: IPmcData): void;
/** /**
* Get the inraid config from configs/inraid.json * Get the inraid config from configs/inraid.json
* @returns InRaid Config * @returns InRaid Config

View File

@ -69,12 +69,6 @@ export declare class QuestController {
* @returns true = show to player * @returns true = show to player
*/ */
protected showEventQuestToPlayer(questId: string): boolean; protected showEventQuestToPlayer(questId: string): boolean;
/**
* Is the quest for the opposite side the player is on
* @param playerSide Player side (usec/bear)
* @param questId QuestId to check
*/
protected questIsForOtherSide(playerSide: string, questId: string): boolean;
/** /**
* Handle QuestAccept event * Handle QuestAccept event
* Handle the client accepting a quest and starting it * Handle the client accepting a quest and starting it

View File

@ -128,6 +128,12 @@ export declare class QuestHelper {
* @returns Quests accessible to player incuding newly unlocked quests now quest (startedQuestId) was started * @returns Quests accessible to player incuding newly unlocked quests now quest (startedQuestId) was started
*/ */
getNewlyAccessibleQuestsWhenStartingQuest(startedQuestId: string, sessionID: string): IQuest[]; getNewlyAccessibleQuestsWhenStartingQuest(startedQuestId: string, sessionID: string): IQuest[];
/**
* Is the quest for the opposite side the player is on
* @param playerSide Player side (usec/bear)
* @param questId QuestId to check
*/
questIsForOtherSide(playerSide: string, questId: string): boolean;
/** /**
* Get quests that can be shown to player after failing a quest * Get quests that can be shown to player after failing a quest
* @param failedQuestId Id of the quest failed by player * @param failedQuestId Id of the quest failed by player

View File

@ -59,7 +59,7 @@ export declare class TraderHelper {
/** /**
* Reset a profiles trader data back to its initial state as seen by a level 1 player * Reset a profiles trader data back to its initial state as seen by a level 1 player
* Does NOT take into account different profile levels * Does NOT take into account different profile levels
* @param sessionID session id * @param sessionID session id of player
* @param traderID trader id to reset * @param traderID trader id to reset
*/ */
resetTrader(sessionID: string, traderID: string): void; resetTrader(sessionID: string, traderID: string): void;
@ -74,13 +74,13 @@ export declare class TraderHelper {
* Alter a traders unlocked status * Alter a traders unlocked status
* @param traderId Trader to alter * @param traderId Trader to alter
* @param status New status to use * @param status New status to use
* @param sessionId Session id * @param sessionId Session id of player
*/ */
setTraderUnlockedState(traderId: string, status: boolean, sessionId: string): void; setTraderUnlockedState(traderId: string, status: boolean, sessionId: string): void;
/** /**
* Add standing to a trader and level them up if exp goes over level threshold * Add standing to a trader and level them up if exp goes over level threshold
* @param sessionId Session id * @param sessionId Session id of player
* @param traderId Traders id * @param traderId Traders id to add standing to
* @param standingToAdd Standing value to add to trader * @param standingToAdd Standing value to add to trader
*/ */
addStandingToTrader(sessionId: string, traderId: string, standingToAdd: number): void; addStandingToTrader(sessionId: string, traderId: string, standingToAdd: number): void;

View File

@ -1,7 +1,7 @@
import { HttpServerHelper } from "@spt-aki/helpers/HttpServerHelper"; import { HttpServerHelper } from "@spt-aki/helpers/HttpServerHelper";
import { JsonUtil } from "@spt-aki/utils/JsonUtil"; import { JsonUtil } from "@spt-aki/utils/JsonUtil";
import { VFS } from "@spt-aki/utils/VFS"; import { VFS } from "@spt-aki/utils/VFS";
declare class BundleInfo { export declare class BundleInfo {
modPath: string; modPath: string;
key: string; key: string;
path: string; path: string;
@ -30,4 +30,3 @@ export interface BundleManifestEntry {
key: string; key: string;
path: string; path: string;
} }
export {};

View File

@ -1,21 +1,17 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader"; import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader";
import { IModLoader } from "@spt-aki/models/spt/mod/IModLoader"; import { IModLoader } from "@spt-aki/models/spt/mod/IModLoader";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { LocalisationService } from "@spt-aki/services/LocalisationService"; import { LocalisationService } from "@spt-aki/services/LocalisationService";
import { VFS } from "@spt-aki/utils/VFS";
export declare class PostAkiModLoader implements IModLoader { export declare class PostAkiModLoader implements IModLoader {
protected logger: ILogger; protected logger: ILogger;
protected bundleLoader: BundleLoader;
protected vfs: VFS;
protected preAkiModLoader: PreAkiModLoader; protected preAkiModLoader: PreAkiModLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
constructor(logger: ILogger, bundleLoader: BundleLoader, vfs: VFS, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck); protected container: DependencyContainer;
constructor(logger: ILogger, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck);
getModPath(mod: string): string; getModPath(mod: string): string;
load(): Promise<void>; load(): Promise<void>;
protected executeMods(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
protected addBundles(): void;
} }

View File

@ -1,17 +1,21 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { OnLoad } from "@spt-aki/di/OnLoad"; import { OnLoad } from "@spt-aki/di/OnLoad";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader"; import { PreAkiModLoader } from "@spt-aki/loaders/PreAkiModLoader";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger"; import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { LocalisationService } from "@spt-aki/services/LocalisationService"; import { LocalisationService } from "@spt-aki/services/LocalisationService";
export declare class PostDBModLoader implements OnLoad { export declare class PostDBModLoader implements OnLoad {
protected logger: ILogger; protected logger: ILogger;
protected bundleLoader: BundleLoader;
protected preAkiModLoader: PreAkiModLoader; protected preAkiModLoader: PreAkiModLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
constructor(logger: ILogger, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck); protected container: DependencyContainer;
constructor(logger: ILogger, bundleLoader: BundleLoader, preAkiModLoader: PreAkiModLoader, localisationService: LocalisationService, modTypeCheck: ModTypeCheck);
onLoad(): Promise<void>; onLoad(): Promise<void>;
getRoute(): string; getRoute(): string;
getModPath(mod: string): string; getModPath(mod: string): string;
protected executeMods(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
protected addBundles(): void;
} }

View File

@ -1,5 +1,4 @@
import { DependencyContainer } from "tsyringe"; import { DependencyContainer } from "tsyringe";
import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { ModLoadOrder } from "@spt-aki/loaders/ModLoadOrder"; import { ModLoadOrder } from "@spt-aki/loaders/ModLoadOrder";
import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck"; import { ModTypeCheck } from "@spt-aki/loaders/ModTypeCheck";
import { ModDetails } from "@spt-aki/models/eft/profile/IAkiProfile"; import { ModDetails } from "@spt-aki/models/eft/profile/IAkiProfile";
@ -17,12 +16,11 @@ export declare class PreAkiModLoader implements IModLoader {
protected vfs: VFS; protected vfs: VFS;
protected jsonUtil: JsonUtil; protected jsonUtil: JsonUtil;
protected modCompilerService: ModCompilerService; protected modCompilerService: ModCompilerService;
protected bundleLoader: BundleLoader;
protected localisationService: LocalisationService; protected localisationService: LocalisationService;
protected configServer: ConfigServer; protected configServer: ConfigServer;
protected modLoadOrder: ModLoadOrder; protected modLoadOrder: ModLoadOrder;
protected modTypeCheck: ModTypeCheck; protected modTypeCheck: ModTypeCheck;
protected static container: DependencyContainer; protected container: DependencyContainer;
protected readonly basepath = "user/mods/"; protected readonly basepath = "user/mods/";
protected readonly modOrderPath = "user/mods/order.json"; protected readonly modOrderPath = "user/mods/order.json";
protected order: Record<string, number>; protected order: Record<string, number>;
@ -30,7 +28,7 @@ export declare class PreAkiModLoader implements IModLoader {
protected akiConfig: ICoreConfig; protected akiConfig: ICoreConfig;
protected serverDependencies: Record<string, string>; protected serverDependencies: Record<string, string>;
protected skippedMods: Set<string>; protected skippedMods: Set<string>;
constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, bundleLoader: BundleLoader, localisationService: LocalisationService, configServer: ConfigServer, modLoadOrder: ModLoadOrder, modTypeCheck: ModTypeCheck); constructor(logger: ILogger, vfs: VFS, jsonUtil: JsonUtil, modCompilerService: ModCompilerService, localisationService: LocalisationService, configServer: ConfigServer, modLoadOrder: ModLoadOrder, modTypeCheck: ModTypeCheck);
load(container: DependencyContainer): Promise<void>; load(container: DependencyContainer): Promise<void>;
/** /**
* Returns a list of mods with preserved load order * Returns a list of mods with preserved load order
@ -68,10 +66,9 @@ export declare class PreAkiModLoader implements IModLoader {
protected isModCombatibleWithAki(mod: IPackageJsonData): boolean; protected isModCombatibleWithAki(mod: IPackageJsonData): boolean;
/** /**
* Execute each mod found in this.imported * Execute each mod found in this.imported
* @param container Dependence container to give to mod when it runs
* @returns void promise * @returns void promise
*/ */
protected executeModsAsync(container: DependencyContainer): Promise<void>; protected executeModsAsync(): Promise<void>;
/** /**
* Read loadorder.json (create if doesnt exist) and return sorted list of mods * Read loadorder.json (create if doesnt exist) and return sorted list of mods
* @returns string array of sorted mod names * @returns string array of sorted mod names

View File

@ -1,18 +1,13 @@
import { BundleLoader } from "@spt-aki/loaders/BundleLoader"; import { BundleLoader } from "@spt-aki/loaders/BundleLoader";
import { IHttpConfig } from "@spt-aki/models/spt/config/IHttpConfig"; import { IHttpConfig } from "@spt-aki/models/spt/config/IHttpConfig";
import { ILogger } from "@spt-aki/models/spt/utils/ILogger";
import { ConfigServer } from "@spt-aki/servers/ConfigServer"; import { ConfigServer } from "@spt-aki/servers/ConfigServer";
import { HttpFileUtil } from "@spt-aki/utils/HttpFileUtil";
import { HttpResponseUtil } from "@spt-aki/utils/HttpResponseUtil"; import { HttpResponseUtil } from "@spt-aki/utils/HttpResponseUtil";
export declare class BundleCallbacks { export declare class BundleCallbacks {
protected logger: ILogger;
protected httpResponse: HttpResponseUtil; protected httpResponse: HttpResponseUtil;
protected httpFileUtil: HttpFileUtil;
protected bundleLoader: BundleLoader; protected bundleLoader: BundleLoader;
protected configServer: ConfigServer; protected configServer: ConfigServer;
protected httpConfig: IHttpConfig; protected httpConfig: IHttpConfig;
constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpFileUtil: HttpFileUtil, bundleLoader: BundleLoader, configServer: ConfigServer); constructor(httpResponse: HttpResponseUtil, bundleLoader: BundleLoader, configServer: ConfigServer);
sendBundle(sessionID: string, req: any, resp: any, body: any): void;
/** /**
* Handle singleplayer/bundles * Handle singleplayer/bundles
*/ */

Some files were not shown because too many files have changed in this diff Show More