ClearVision/types/services/InsuranceService.d.ts
2022-07-09 16:03:26 -04:00

43 lines
2.6 KiB
TypeScript

import { DialogueHelper } from "../helpers/DialogueHelper";
import { SecureContainerHelper } from "../helpers/SecureContainerHelper";
import { TraderHelper } from "../helpers/TraderHelper";
import { IPmcData } from "../models/eft/common/IPmcData";
import { Item } from "../models/eft/common/tables/IItem";
import { ISaveProgressRequestData } from "../models/eft/inRaid/ISaveProgressRequestData";
import { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig";
import { ILogger } from "../models/spt/utils/ILogger";
import { ConfigServer } from "../servers/ConfigServer";
import { DatabaseServer } from "../servers/DatabaseServer";
import { SaveServer } from "../servers/SaveServer";
import { RandomUtil } from "../utils/RandomUtil";
import { TimeUtil } from "../utils/TimeUtil";
export declare class InsuranceService {
protected logger: ILogger;
protected databaseServer: DatabaseServer;
protected secureContainerHelper: SecureContainerHelper;
protected randomUtil: RandomUtil;
protected timeUtil: TimeUtil;
protected saveServer: SaveServer;
protected traderHelper: TraderHelper;
protected dialogueHelper: DialogueHelper;
protected configServer: ConfigServer;
protected insured: Record<string, Record<string, Item[]>>;
protected templatesById: {};
protected insuranceConfig: IInsuranceConfig;
constructor(logger: ILogger, databaseServer: DatabaseServer, secureContainerHelper: SecureContainerHelper, randomUtil: RandomUtil, timeUtil: TimeUtil, saveServer: SaveServer, traderHelper: TraderHelper, dialogueHelper: DialogueHelper, configServer: ConfigServer);
insuranceExists(sessionId: string): boolean;
insuranceTraderArrayExists(sessionId: string, traderId: string): boolean;
getInsurance(sessionId: string): Record<string, Item[]>;
getInsuranceItems(sessionId: string, traderId: string): any[];
resetInsurance(sessionId: string): void;
resetInsuranceTraderArray(sessionId: string, traderId: string): void;
addInsuranceItemToArray(sessionId: string, traderId: string, itemToAdd: any): void;
getItemPrice(_tpl: string): number;
generateTemplatesById(): void;
sendInsuredItems(pmcData: IPmcData, sessionID: string): void;
storeLostGear(pmcData: IPmcData, offraidData: ISaveProgressRequestData, preRaidGear: Item[], sessionID: string): void;
storeInsuredItemsForReturn(pmcData: IPmcData, offraidData: ISaveProgressRequestData, preRaidGear: Item[], sessionID: string): void;
protected addGearToSend(pmcData: IPmcData, insuredItem: any, actualItem: any, sessionID: string): any;
getPremium(pmcData: IPmcData, inventoryItem: Item, traderId: string): number;
}