import { Cost, ResourceEnum, SettlementCost, StateReducer, Tableau } from '../types';
export declare const basicResources: ResourceEnum[];
export declare const allResource: [key: keyof Cost, token: string][];
export declare const combinations: (maxLength: number, tokens: string[], prefix?: string[]) => string[];
export declare const parseResourceParam: (p?: string) => Cost;
export declare const stringRepeater: import("ts-toolbelt/out/Function/Curry").Curry<(repeated: string, count: number) => string>;
export declare const resourceArray: (resource: ResourceEnum, maxAmount?: number) => (b: number) => string[];
export declare const zip3: (arrA: string[], arrB: string[], arrC: string[]) => string[];
export declare const foodCostOptions: import("ts-toolbelt/out/Function/Curry").Curry<(food: number, player: Cost) => string[]>;
export declare const energyCostOptions: import("ts-toolbelt/out/Function/Curry").Curry<(energy: number, player: Cost) => string[]>;
export declare const coinCostOptions: import("ts-toolbelt/out/Function/Curry").Curry<(coins: number, player: Cost) => string[]>;
export declare const pointCostOptions: import("ts-toolbelt/out/Function/Curry").Curry<(points: number, player: Cost) => string[]>;
export declare const concatStr: (a: string, b: string) => string;
export declare const settlementCostOptions: import("ts-toolbelt/out/Function/Curry").Curry<({ food, energy }: SettlementCost, player: Cost) => string[]>;
export declare const differentGoods: (cost: Cost) => number;
export declare const totalGoods: (cost: Cost) => number;
export declare const multiplyGoods: (by: number) => (cost: Cost) => {
    peat?: number;
    penny?: number;
    clay?: number;
    wood?: number;
    grain?: number;
    sheep?: number;
    stone?: number;
    flour?: number;
    grape?: number;
    nickel?: number;
    malt?: number;
    coal?: number;
    book?: number;
    ceramic?: number;
    whiskey?: number;
    straw?: number;
    meat?: number;
    ornament?: number;
    bread?: number;
    wine?: number;
    beer?: number;
    reliquary?: number;
};
export declare const maskGoods: (goods: (keyof Cost)[]) => (cost: Cost) => Cost;
export declare const costMoney: ({ penny, nickel, wine, whiskey }: {
    penny?: number | undefined;
    nickel?: number | undefined;
    wine?: number | undefined;
    whiskey?: number | undefined;
}) => number;
export declare const costEnergy: ({ coal, peat, wood, straw }: {
    coal?: number | undefined;
    peat?: number | undefined;
    wood?: number | undefined;
    straw?: number | undefined;
}) => number;
export declare const costFood: ({ penny, grain, sheep, flour, grape, nickel, malt, whiskey, meat, bread, wine, beer, }: {
    penny?: number | undefined;
    grain?: number | undefined;
    sheep?: number | undefined;
    flour?: number | undefined;
    grape?: number | undefined;
    nickel?: number | undefined;
    malt?: number | undefined;
    whiskey?: number | undefined;
    meat?: number | undefined;
    bread?: number | undefined;
    wine?: number | undefined;
    beer?: number | undefined;
}) => number;
export declare const costPoints: ({ nickel, whiskey, ceramic, book, reliquary, ornament, wine }: {
    nickel?: number | undefined;
    whiskey?: number | undefined;
    ceramic?: number | undefined;
    book?: number | undefined;
    reliquary?: number | undefined;
    ornament?: number | undefined;
    wine?: number | undefined;
}) => number;
export declare const goodsPoints: ({ penny, nickel, whiskey, wine, ceramic, book, reliquary, ornament, }: {
    penny?: number | undefined;
    nickel?: number | undefined;
    whiskey?: number | undefined;
    wine?: number | undefined;
    ceramic?: number | undefined;
    book?: number | undefined;
    reliquary?: number | undefined;
    ornament?: number | undefined;
}) => number;
export declare const settlementCost: (cost: Cost) => SettlementCost;
export declare const canAfford: (cost: Cost) => (player: Tableau) => Tableau | undefined;
export declare const rewardCostOptions: import("ts-toolbelt/out/Function/Curry").Curry<(totalPoints: number) => string[]>;
export declare const shortGameBonusProduction: (cost: Cost) => StateReducer;
