/**
 * AI Act & Obligations types
 *
 * EU AI Act classification results, obligations tracking,
 * and general regulatory obligation management.
 */

import type { AIActRiskCategory } from './core'

// =============================================================================
// AI ACT
// =============================================================================

export interface AIActObligation {
  id: string
  article: string
  title: string
  description: string
  deadline: Date | null
  status: 'PENDING' | 'IN_PROGRESS' | 'COMPLETED'
}

export interface AIActResult {
  riskCategory: AIActRiskCategory
  systemType: string
  obligations: AIActObligation[]
  assessmentDate: Date
  assessedBy: string
  justification: string
}

// =============================================================================
// GENERAL OBLIGATIONS
// =============================================================================

export interface Obligation {
  id: string
  regulation: string
  article: string
  title: string
  description: string
  deadline: Date | null
  penalty: string | null
  status: 'PENDING' | 'IN_PROGRESS' | 'COMPLETED'
  responsible: string | null
}
