/** * Noah — Flight Plan Interpolation * * Linear interpolation of expected scores between waypoints. * Provides continuous expected values rather than discrete jumps. * MVP spec Section 4.2. */ import type { EthicalFlightPlan, EthicalWaypoint, ExpectedScores, DimensionExpectation, CorridorBounds } from '../types/flight-plan.js'; /** * Linearly interpolate a single dimension's expectations. * * @param prev Previous waypoint expectations * @param next Next waypoint expectations * @param t Interpolation factor (0.0 = prev, 1.0 = next) */ export declare function interpolateDimension(prev: DimensionExpectation, next: DimensionExpectation, t: number): DimensionExpectation; /** * Interpolate corridor bounds between two waypoints. */ export declare function interpolateCorridor(prev: CorridorBounds, next: CorridorBounds, t: number): CorridorBounds; /** * Interpolate all four dimensions at once. */ export declare function interpolateScores(prev: ExpectedScores, next: ExpectedScores, t: number): ExpectedScores; export interface InterpolationResult { expectedScores: ExpectedScores; corridor: CorridorBounds; /** The previous waypoint used for interpolation (null if before first) */ prevWaypoint: EthicalWaypoint | null; /** The next waypoint used for interpolation (null if after last) */ nextWaypoint: EthicalWaypoint | null; /** Interpolation factor (0.0–1.0, or NaN if clamped to one waypoint) */ t: number; } /** * Interpolate expected scores for a given day from a flight plan. * * Strategy: * 1. Filter to calendar-based waypoints (they have explicit day numbers). * 2. Find the two waypoints that bracket the current day. * 3. Linearly interpolate between them. * 4. If before the first or after the last, clamp to that waypoint. * * @param plan The active ethical flight plan * @param currentDayNumber Fractional days since initialization */ export declare function interpolateExpectedScores(plan: EthicalFlightPlan, currentDayNumber: number): InterpolationResult; //# sourceMappingURL=interpolation.d.ts.map