interface WeaponConfig {
    pattern_offset_x_start: number;
    pattern_offset_x_end: number;
    pattern_offset_y_start: number;
    pattern_offset_y_end: number;
    pattern_rotate_start: number;
    pattern_rotate_end: number;
}
interface FadePercentage {
    seed: number;
    percentage: number;
    ranking: number;
}
interface WeaponFadePercentage {
    weapon: string;
    percentages: Array<FadePercentage>;
}
declare abstract class BaseCalculator {
    protected abstract weapons: Array<string>;
    protected abstract reversedWeapons: Array<string>;
    protected abstract tradeUpWeapons: Array<string>;
    protected abstract configs: {
        [key: string]: WeaponConfig;
    };
    private minPercentage;
    getSupportedWeapons(): Array<String>;
    getFadePercentage(weapon: string, seed: number): FadePercentage;
    getAllFadePercentages(): Array<WeaponFadePercentage>;
    getFadePercentages(weapon: string): Array<FadePercentage>;
}
export default BaseCalculator;
