/** A single ingredient in a dry-rub recipe, weighted by parts. */ export interface RubIngredient { readonly name: string; readonly parts: number; } /** A named dry-rub recipe and how heavily to apply it. */ export interface RubRecipe { readonly name: string; readonly label: string; /** Tablespoons of finished rub to apply per pound of meat. */ readonly tablespoonsPerPound: number; readonly ingredients: readonly RubIngredient[]; } /** A scaled amount of one rub ingredient. */ export interface SeasoningIngredientAmount { readonly name: string; /** Tablespoons of this ingredient, rounded to the nearest quarter tablespoon. */ readonly tablespoons: number; } /** A scaled dry-rub plan. */ export interface RubPlan { readonly mode: "rub"; readonly recipe: string; readonly label: string; readonly weightLb: number; readonly totalTablespoons: number; readonly ingredients: readonly SeasoningIngredientAmount[]; } /** A scaled wet-brine plan. */ export interface WetBrinePlan { readonly mode: "wet-brine"; readonly weightLb: number; readonly waterQuarts: number; readonly salinityPercent: number; readonly saltGrams: number; readonly saltCups: number; readonly sugarGrams: number; readonly minHours: number; readonly maxHours: number; } /** A scaled dry-brine plan. */ export interface DryBrinePlan { readonly mode: "dry-brine"; readonly weightLb: number; readonly saltPercent: number; readonly saltGrams: number; readonly saltTeaspoons: number; readonly minHours: number; readonly maxHours: number; } /** The result of {@link calculateSeasoning}. */ export type SeasoningPlan = RubPlan | WetBrinePlan | DryBrinePlan; /** Options for {@link calculateSeasoning}. */ export interface SeasoningOptions { /** Which seasoning to compute. Defaults to a dry rub. */ mode?: "rub" | "wet-brine" | "dry-brine"; /** Dry-rub recipe name (rub mode). Defaults to "classic". */ recipe?: string; /** Wet-brine salinity as a percent of the water weight. Defaults to 5. */ salinityPercent?: number; /** Dry-brine salt as a percent of the meat weight. Defaults to 1. */ saltPercent?: number; } /** List the built-in dry-rub recipes. */ export declare function listRubRecipes(): RubRecipe[]; /** Look up a dry-rub recipe by name (case-insensitive). Returns null if unknown. */ export declare function resolveRubRecipe(name: string): RubRecipe | null; /** * Scale a dry rub or brine to the weight of a cut. * * Dry rub (default): scales a named recipe's ingredients by weight and returns * a per-ingredient breakdown in tablespoons. Wet brine: returns the water * volume, salt, sugar, and a brine-time range. Dry brine: returns the salt * amount and a fridge-rest range. * * @throws RangeError if `weightLb` is not a positive, finite number, or if a * named rub recipe cannot be found. */ export declare function calculateSeasoning(weightLb: number, options?: SeasoningOptions): SeasoningPlan; //# sourceMappingURL=season.d.ts.map