/**
 * Pure calculation: derives finalTimeToTargetCondition from standard time, advance and delay.
 *
 * Formula: finalTime = standardTime - advance + delay
 * - Capped at "30+" if result > 30
 * - Returns 0 if advance >= standardTime
 * - Returns "Not Possible" if standardTime is "Not Possible ▲"
 */
export declare function calculateFinalTimeToTargetCondition<Data extends {
    timeToTargetCondition: number | "30+" | "Not Possible ▲";
    advance: number | "30+";
    delay: number | "30+";
}>(data: Data): Data & {
    finalTimeToTargetCondition: number | "30+" | "Not Possible ▲";
};
/**
 * Lookup: attaches finalTimeToTargetMultiplier from the temporal multipliers table.
 */
export declare function lookupFinalTimeToTargetMultiplier<Data extends {
    finalTimeToTargetCondition: number | "30+" | "Not Possible ▲";
}>(data: Data): Data & {
    finalTimeToTargetMultiplier: number | undefined;
};
/**
 * Backwards-compatible wrapper: pure calc followed by lookup.
 */
export declare function calculateFinalTimeToTargetValues<Data extends {
    timeToTargetCondition: number | "30+" | "Not Possible ▲";
    advance: number | "30+";
    delay: number | "30+";
}>(data: Data): Data & {
    finalTimeToTargetCondition: number | "30+" | "Not Possible ▲";
} & {
    finalTimeToTargetMultiplier: number | undefined;
};
/**
 * Enriches data with spatial risk multiplier.
 *
 * Looks up the multiplier value based on the spatial risk category.
 */
export declare function enrichWithSpatialRisk<Data extends {
    spatialRiskCategory: string;
}>(data: Data): Data & {
    spatialRiskMultiplier: number;
};
/**
 * Enriches watercourse data with spatial risk multiplier using the
 * watercourse-specific category list (catchment-based, not LPA/NCA).
 */
export declare function enrichWithWatercourseSpatialRisk<Data extends {
    spatialRiskCategory: string;
}>(data: Data): Data & {
    spatialRiskMultiplier: number;
};
//# sourceMappingURL=common.d.ts.map