/**
 * Supply Risk Detector
 *
 * Analyzes inventory levels against demand forecasts to detect:
 *   - SHORTAGE: days-of-supply below reorder point
 *   - SURPLUS: days-of-supply above max threshold
 *   - IMBALANCE: one facility has drastically more stock than another for the same SKU
 */
import type { RiskThresholds } from './thresholds.js';
export interface InventorySnapshot {
    readonly facility_id: string;
    readonly sku: string;
    readonly quantity: number;
    readonly unit_of_measure: string;
}
export interface DemandSignal {
    readonly facility_id: string;
    readonly sku: string;
    readonly average_daily_usage: number;
}
export interface FacilityCapacity {
    readonly facility_id: string;
    readonly region: string;
    readonly max_transfer_quantity: number;
}
export type RiskType = 'shortage' | 'surplus' | 'imbalance';
export type Severity = 'critical' | 'high' | 'medium' | 'low';
export interface DetectedRisk {
    readonly facility_id: string;
    readonly sku: string;
    readonly risk_type: RiskType;
    readonly severity: Severity;
    readonly days_of_supply: number;
    readonly quantity_on_hand: number;
    readonly average_daily_usage: number;
    readonly message: string;
    /** For imbalance risks, the counterpart facility. */
    readonly counterpart_facility?: string;
    readonly counterpart_quantity?: number;
}
export declare class SupplyRiskDetector {
    private readonly thresholds;
    constructor(thresholds: RiskThresholds);
    detect(inventory: readonly InventorySnapshot[], demand: readonly DemandSignal[], _capacities: readonly FacilityCapacity[]): DetectedRisk[];
}
//# sourceMappingURL=detector.d.ts.map