2023-09-05 07:37:30 -05:00
|
|
|
import { IFlavourItem } from "@/src/types/inventoryTypes/inventoryTypes";
|
2024-06-16 17:51:20 +02:00
|
|
|
import { IEquipmentClient } from "./inventoryTypes/commonInventoryTypes";
|
2023-06-14 02:26:19 +02:00
|
|
|
|
|
|
|
export interface IPurchaseRequest {
|
|
|
|
PurchaseParams: IPurchaseParams;
|
|
|
|
buildLabel: string;
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface IPurchaseParams {
|
|
|
|
Source: number;
|
|
|
|
StoreItem: string;
|
|
|
|
StorePage: string;
|
|
|
|
SearchTerm: string;
|
|
|
|
CurrentLocation: string;
|
|
|
|
Quantity: number;
|
|
|
|
UsePremium: boolean;
|
|
|
|
ExpectedPrice: number;
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface IPurchaseResponse {
|
|
|
|
InventoryChanges: {
|
|
|
|
SuitBin?: IBinChanges;
|
|
|
|
WeaponBin?: IBinChanges;
|
2023-12-28 16:24:52 +01:00
|
|
|
MechBin?: IBinChanges;
|
2024-06-16 17:51:20 +02:00
|
|
|
MechSuits?: IEquipmentClient[];
|
|
|
|
Suits?: IEquipmentClient[];
|
|
|
|
LongGuns?: IEquipmentClient[];
|
|
|
|
Pistols?: IEquipmentClient[];
|
|
|
|
Melee?: IEquipmentClient[];
|
2023-06-14 02:26:19 +02:00
|
|
|
PremiumCredits?: number;
|
2023-12-28 16:24:52 +01:00
|
|
|
PremiumCreditsFree?: number;
|
2023-06-14 02:26:19 +02:00
|
|
|
RegularCredits?: number;
|
2023-09-05 07:37:30 -05:00
|
|
|
FlavourItems?: IFlavourItem[];
|
2023-06-14 02:26:19 +02:00
|
|
|
};
|
|
|
|
}
|
|
|
|
|
|
|
|
export type IBinChanges = {
|
|
|
|
count: number;
|
|
|
|
platinum: number;
|
|
|
|
Slots: number;
|
2023-12-28 16:24:52 +01:00
|
|
|
Extra?: number;
|
2023-06-14 02:26:19 +02:00
|
|
|
};
|
|
|
|
|
2023-12-28 16:24:52 +01:00
|
|
|
export type SlotPurchaseName =
|
|
|
|
| "SuitSlotItem"
|
|
|
|
| "TwoSentinelSlotItem"
|
|
|
|
| "TwoWeaponSlotItem"
|
|
|
|
| "SpaceSuitSlotItem"
|
|
|
|
| "TwoSpaceWeaponSlotItem"
|
|
|
|
| "MechSlotItem"
|
|
|
|
| "TwoOperatorWeaponSlotItem"
|
|
|
|
| "RandomModSlotItem"
|
|
|
|
| "TwoCrewShipSalvageSlotItem"
|
|
|
|
| "CrewMemberSlotItem";
|
|
|
|
|
|
|
|
export type SlotNames =
|
|
|
|
| "SuitBin"
|
|
|
|
| "WeaponBin"
|
|
|
|
| "MechBin"
|
|
|
|
| "PveBonusLoadoutBin"
|
|
|
|
| "SentinelBin"
|
|
|
|
| "SpaceSuitBin"
|
|
|
|
| "SpaceWeaponBin"
|
|
|
|
| "OperatorAmpBin"
|
|
|
|
| "RandomModBin"
|
|
|
|
| "CrewShipSalvageBin"
|
|
|
|
| "CrewMemberBin";
|
|
|
|
|
|
|
|
export type SlotPurchase = {
|
|
|
|
[P in SlotPurchaseName]: { name: SlotNames; slotsPerPurchase: number };
|
|
|
|
};
|