export type BoomPriority = 'CRITICAL' | 'HIGH' | 'MEDIUM';
export type BoomStatus = 'PLANNED' | 'DEPLOYING' | 'DEPLOYED' | 'REMOVED';
export type BoomType = '고강도 차단형' | '외해용 중형 포위망' | '연안 경량형' | '기타';

export interface BoomLineCoord {
  lat: number;
  lon: number;
}

export interface BoomLine {
  id: string;
  name: string;
  priority: BoomPriority;
  type: BoomType;
  coords: BoomLineCoord[];
  length: number; // meters
  angle: number; // bearing degrees
  efficiency: number; // 0-100
  status: BoomStatus;
}

export interface AlgorithmSettings {
  currentOrthogonalCorrection: number; // degrees (default 15)
  safetyMarginMinutes: number; // minutes (default 60)
  minContainmentEfficiency: number; // percent (default 80)
  waveHeightCorrectionFactor: number; // multiplier (default 1.0)
}

export interface ContainmentResult {
  totalParticles: number;
  blockedParticles: number;
  passedParticles: number;
  overallEfficiency: number;
  perLineResults: Array<{
    boomLineId: string;
    boomLineName: string;
    blocked: number;
    passed: number;
    efficiency: number;
  }>;
}
