export type MissingKeyPolicy = 'platform_fallback' | 'omit' | 'redistribute'; export declare const MISSING_KEY_POLICIES: MissingKeyPolicy[]; export interface ArmAssignment { /** 1-based arm index within the round's family. */ arm: number; /** Fixer model for this arm; undefined = harness default (DEFAULT_MODEL_ID). */ model?: string; /** Effectiveness-arm label recorded with the arm's scored runs (matrix attribution). */ strategy?: string; /** Whether the model's provider key was present in the environment at plan time. */ funded: boolean; } export interface ArmPlanInput { width: number; /** The loop's --model (arm 1 baseline; also the single-arm model). */ baseModel?: string; /** Explicit --arm-models list (comma-split upstream). */ armModels?: string[]; /** --providers list (comma-split upstream). */ providers?: string[]; /** Global --strategy label; when set it overrides the per-arm fixer: label. */ strategy?: string; policy: MissingKeyPolicy; } export interface ArmPlan { arms: ArmAssignment[]; /** Human-readable planning decisions (dropped arms, redistributions, empty pools). */ notes: string[]; } export declare function planArms(input: ArmPlanInput): ArmPlan; export declare function parseMissingKeyPolicy(raw: string | undefined): MissingKeyPolicy; //# sourceMappingURL=armPlan.d.ts.map