two-slot-extended-mags/types/utils/RagfairOfferHolder.d.ts

34 lines
1.7 KiB
TypeScript
Raw Normal View History

2024-08-05 20:33:00 +10:00
import { ProfileHelper } from "@spt/helpers/ProfileHelper";
import { RagfairServerHelper } from "@spt/helpers/RagfairServerHelper";
import { IRagfairOffer } from "@spt/models/eft/ragfair/IRagfairOffer";
2023-06-11 15:10:34 +10:00
export declare class RagfairOfferHolder {
2024-08-05 20:33:00 +10:00
protected maxOffersPerTemplate: number;
protected ragfairServerHelper: RagfairServerHelper;
protected profileHelper: ProfileHelper;
2023-10-09 20:21:00 +11:00
protected offersById: Map<string, IRagfairOffer>;
protected offersByTemplate: Map<string, Map<string, IRagfairOffer>>;
protected offersByTrader: Map<string, Map<string, IRagfairOffer>>;
2024-08-05 20:33:00 +10:00
constructor(maxOffersPerTemplate: number, ragfairServerHelper: RagfairServerHelper, profileHelper: ProfileHelper);
getOfferById(id: string): IRagfairOffer | undefined;
getOffersByTemplate(templateId: string): Array<IRagfairOffer> | undefined;
getOffersByTrader(traderId: string): Array<IRagfairOffer> | undefined;
2023-06-11 15:10:34 +10:00
getOffers(): Array<IRagfairOffer>;
addOffers(offers: Array<IRagfairOffer>): void;
addOffer(offer: IRagfairOffer): void;
2024-04-03 20:15:11 +11:00
/**
* Purge offer from offer cache
* @param offer Offer to remove
*/
2023-06-11 15:10:34 +10:00
removeOffer(offer: IRagfairOffer): void;
removeOffers(offers: Array<IRagfairOffer>): void;
2024-04-03 20:15:11 +11:00
removeAllOffersByTrader(traderId: string): void;
2023-06-11 15:10:34 +10:00
/**
* Get an array of stale offers that are still shown to player
* @returns IRagfairOffer array
*/
getStaleOffers(time: number): Array<IRagfairOffer>;
2023-10-09 20:21:00 +11:00
protected addOfferByTemplates(template: string, offer: IRagfairOffer): void;
protected addOfferByTrader(trader: string, offer: IRagfairOffer): void;
2023-06-11 15:10:34 +10:00
protected isStale(offer: IRagfairOffer, time: number): boolean;
}