/**
 * Shared Confidence Types
 *
 * Types used by confidence-related components across multiple applications
 * (tenant-ui, threat-library, etc.) for Defense Confidence Overview,
 * Threat Confidence, and related views.
 */

export interface TacticCoverage {
  tacticId: string
  tacticName: string
  shortName: string
  coverageScore: number
  detectionCount: number
  totalTechniques: number
}

export interface TechniqueGap {
  id: string
  name: string
  tactic: string
  coverage: 'none' | 'partial'
  intelCount: number
  priority: 'critical' | 'high' | 'medium'
}

export interface DetectionSource {
  id: string
  name: string
  shortName: string
  ruleCount: number
  coverage: number
  trend: 'up' | 'down' | 'stable'
}

export interface EnvironmentVisibility {
  id: string
  name: string
  shortName: string
  platform: 'windows' | 'linux' | 'macos' | 'cloud'
  assetCount: number
  coverage: number
  trend: 'up' | 'down' | 'stable'
}

export interface VisibilityGap {
  id: string
  environment: string
  dataSource: string
  coverage: number
  impact: 'critical' | 'high' | 'medium'
}

export interface ValidationBySource {
  id: string
  name: string
  shortName: string
  totalRules: number
  tested: number
  passed: number
  failed: number
  stale: number
}

export interface ValidationIssue {
  id: string
  ruleName: string
  source: string
  issue: 'untested' | 'failed' | 'stale'
  priority: 'critical' | 'high' | 'medium'
  daysSinceTest?: number
}
