import { SellResult } from "../models/eft/ragfair/IRagfairOffer"; import { IRagfairConfig } from "../models/spt/config/IRagfairConfig"; import { ILogger } from "../models/spt/utils/ILogger"; import { ConfigServer } from "../servers/ConfigServer"; import { RandomUtil } from "../utils/RandomUtil"; import { TimeUtil } from "../utils/TimeUtil"; export declare class RagfairSellHelper { protected logger: ILogger; protected randomUtil: RandomUtil; protected timeUtil: TimeUtil; protected configServer: ConfigServer; protected ragfairConfig: IRagfairConfig; constructor(logger: ILogger, randomUtil: RandomUtil, timeUtil: TimeUtil, configServer: ConfigServer); /** * Get the percent chance to sell an item based on its average listed price vs player chosen listing price * @param baseChancePercent Base chance to sell item * @param averageOfferPriceRub Price of average offer in roubles * @param playerListedPriceRub Price player listed item for in roubles * @returns percent value */ calculateSellChance(baseChancePercent: number, averageOfferPriceRub: number, playerListedPriceRub: number): number; /** * Get percent chance to sell an item when price is below items average listing price * @param playerListedPriceRub Price player listed item for in roubles * @param averageOfferPriceRub Price of average offer in roubles * @returns percent value */ protected getSellMultiplierWhenPlayerPriceIsBelowAverageListingPrice(averageOfferPriceRub: number, playerListedPriceRub: number): number; /** * Determine if the offer being listed will be sold * @param sellChancePercent chance item will sell * @param itemSellCount count of items to sell * @returns Array of purchases of item(s) listed */ rollForSale(sellChancePercent: number, itemSellCount: number): SellResult[]; }