export type TrainingStatus = 'Upcoming' | 'Ongoing' | 'Completed';
export type TrainingMode = 'In-Person' | 'Online' | 'Hybrid';

export type EnrolledStaff = {
  staffId: string;
  name: string;
  dept: string;
  enrolledDate: string;
  completionStatus: 'Enrolled' | 'Completed' | 'Dropped';
};

export type TrainingProgram = {
  id: string;
  title: string;
  dept: string;
  trainer: string;
  enrolled: number;
  capacity: number;
  start: string;
  end: string;
  status: TrainingStatus;
  mode: TrainingMode;
  cost: number;
  venue: string;
  description: string;
  objectives: string[];
  enrolledStaff: EnrolledStaff[];
};

export const initialPrograms: TrainingProgram[] = [
  {
    id: 'TR001',
    title: 'Leadership & Management Skills',
    dept: 'All Departments',
    trainer: 'Dr. Amina Osei',
    enrolled: 3,
    capacity: 50,
    start: '2026-04-15',
    end: '2026-04-17',
    status: 'Upcoming',
    mode: 'In-Person',
    cost: 45000,
    venue: 'Uwezo Fund Boardroom, Nairobi',
    description: 'A comprehensive leadership program designed to equip managers and team leaders with modern management techniques, strategic thinking, and people management skills essential for organizational growth.',
    objectives: [
      'Develop strategic leadership capabilities',
      'Enhance team management and delegation skills',
      'Improve decision-making under pressure',
      'Build effective communication frameworks',
    ],
    enrolledStaff: [
      { staffId: 'UF001', name: 'Jane Mwangi', dept: 'Monitoring & Evaluation', enrolledDate: '2026-04-01', completionStatus: 'Enrolled' },
      { staffId: 'UF005', name: 'Grace Wanjiku', dept: 'Procurement', enrolledDate: '2026-04-02', completionStatus: 'Enrolled' },
      { staffId: 'UF008', name: 'John Mutua', dept: 'Procurement', enrolledDate: '2026-04-03', completionStatus: 'Enrolled' },
    ],
  },
  {
    id: 'TR002',
    title: 'Financial Management & Budgeting',
    dept: 'Procurement',
    trainer: 'CPA John Kariuki',
    enrolled: 4,
    capacity: 20,
    start: '2026-04-08',
    end: '2026-04-09',
    status: 'Ongoing',
    mode: 'In-Person',
    cost: 32000,
    venue: 'Kenya School of Government, Nairobi',
    description: 'An intensive financial management course covering public sector budgeting, financial reporting, procurement regulations, and compliance with government financial management standards.',
    objectives: [
      'Understand public sector financial regulations',
      'Master budget preparation and monitoring',
      'Apply IFMIS reporting standards',
      'Conduct internal financial audits',
    ],
    enrolledStaff: [
      { staffId: 'UF005', name: 'Grace Wanjiku', dept: 'Procurement', enrolledDate: '2026-03-25', completionStatus: 'Enrolled' },
      { staffId: 'UF008', name: 'John Mutua', dept: 'Procurement', enrolledDate: '2026-03-25', completionStatus: 'Enrolled' },
      { staffId: 'UF003', name: 'Mary Kamau', dept: 'Corporate Communication', enrolledDate: '2026-03-26', completionStatus: 'Enrolled' },
      { staffId: 'UF007', name: 'Fatuma Hassan', dept: 'Monitoring & Evaluation', enrolledDate: '2026-03-27', completionStatus: 'Enrolled' },
    ],
  },
  {
    id: 'TR003',
    title: 'ICT Security & Data Protection',
    dept: 'ICT',
    trainer: 'Eng. Peter Mwenda',
    enrolled: 3,
    capacity: 15,
    start: '2026-03-20',
    end: '2026-03-21',
    status: 'Completed',
    mode: 'Online',
    cost: 18000,
    venue: 'Online (Zoom)',
    description: 'A critical cybersecurity training covering data protection laws, network security protocols, incident response, and best practices for securing government ICT infrastructure.',
    objectives: [
      'Understand Kenya Data Protection Act 2019',
      'Implement network security best practices',
      'Respond to cybersecurity incidents effectively',
      'Conduct security risk assessments',
    ],
    enrolledStaff: [
      { staffId: 'UF002', name: 'Peter Otieno', dept: 'ICT', enrolledDate: '2026-03-10', completionStatus: 'Completed' },
      { staffId: 'UF009', name: 'Alice Odhiambo', dept: 'ICT', enrolledDate: '2026-03-10', completionStatus: 'Completed' },
      { staffId: 'UF012', name: 'Brian Omondi', dept: 'ICT', enrolledDate: '2026-03-11', completionStatus: 'Completed' },
    ],
  },
  {
    id: 'TR004',
    title: 'Customer Service Excellence',
    dept: 'All Departments',
    trainer: 'Ms. Grace Njeri',
    enrolled: 2,
    capacity: 40,
    start: '2026-05-05',
    end: '2026-05-06',
    status: 'Upcoming',
    mode: 'In-Person',
    cost: 25000,
    venue: 'Uwezo Fund Training Hall, Nairobi',
    description: 'A practical customer service training focused on improving stakeholder engagement, complaint handling, service delivery standards, and building a customer-centric culture within the organization.',
    objectives: [
      'Master professional communication with stakeholders',
      'Handle complaints and difficult situations effectively',
      'Apply service delivery standards and charters',
      'Build long-term stakeholder relationships',
    ],
    enrolledStaff: [
      { staffId: 'UF003', name: 'Mary Kamau', dept: 'Corporate Communication', enrolledDate: '2026-04-10', completionStatus: 'Enrolled' },
      { staffId: 'UF010', name: 'Robert Kariuki', dept: 'Corporate Communication', enrolledDate: '2026-04-11', completionStatus: 'Enrolled' },
    ],
  },
  {
    id: 'TR005',
    title: 'Records Management & Compliance',
    dept: 'All Departments',
    trainer: 'Mr. Samuel Waweru',
    enrolled: 5,
    capacity: 25,
    start: '2026-04-22',
    end: '2026-04-23',
    status: 'Upcoming',
    mode: 'Hybrid',
    cost: 20000,
    venue: 'Uwezo Fund Boardroom / Online',
    description: 'A records management training covering the Kenya National Archives Act, electronic records management systems, document classification, retention schedules, and compliance requirements for government agencies.',
    objectives: [
      'Apply Kenya National Archives Act requirements',
      'Implement electronic records management systems',
      'Develop document classification schemes',
      'Ensure compliance with records retention policies',
    ],
    enrolledStaff: [
      { staffId: 'UF001', name: 'Jane Mwangi', dept: 'Monitoring & Evaluation', enrolledDate: '2026-04-05', completionStatus: 'Enrolled' },
      { staffId: 'UF004', name: 'David Njoroge', dept: 'Transport', enrolledDate: '2026-04-05', completionStatus: 'Enrolled' },
      { staffId: 'UF006', name: 'Samuel Kipchoge', dept: 'Transport', enrolledDate: '2026-04-06', completionStatus: 'Enrolled' },
      { staffId: 'UF010', name: 'Robert Kariuki', dept: 'Corporate Communication', enrolledDate: '2026-04-06', completionStatus: 'Enrolled' },
      { staffId: 'UF011', name: 'Esther Njeri', dept: 'Monitoring & Evaluation', enrolledDate: '2026-04-07', completionStatus: 'Enrolled' },
    ],
  },
  {
    id: 'TR006',
    title: 'Performance Management Systems',
    dept: 'All Departments',
    trainer: 'Dr. Faith Mutua',
    enrolled: 4,
    capacity: 15,
    start: '2026-03-10',
    end: '2026-03-11',
    status: 'Completed',
    mode: 'Online',
    cost: 15000,
    venue: 'Online (Microsoft Teams)',
    description: 'A performance management training covering the design and implementation of performance appraisal systems, KPI setting, performance improvement plans, and linking individual performance to organizational goals.',
    objectives: [
      'Design effective performance appraisal frameworks',
      'Set SMART KPIs aligned to organizational goals',
      'Conduct performance review conversations',
      'Develop performance improvement plans',
    ],
    enrolledStaff: [
      { staffId: 'UF001', name: 'Jane Mwangi', dept: 'Monitoring & Evaluation', enrolledDate: '2026-03-01', completionStatus: 'Completed' },
      { staffId: 'UF007', name: 'Fatuma Hassan', dept: 'Monitoring & Evaluation', enrolledDate: '2026-03-01', completionStatus: 'Completed' },
      { staffId: 'UF011', name: 'Esther Njeri', dept: 'Monitoring & Evaluation', enrolledDate: '2026-03-02', completionStatus: 'Completed' },
      { staffId: 'UF008', name: 'John Mutua', dept: 'Procurement', enrolledDate: '2026-03-02', completionStatus: 'Completed' },
    ],
  },
];

export const ALL_STAFF = [
  { staffId: 'UF001', name: 'Jane Mwangi', dept: 'Monitoring & Evaluation', role: 'M&E Officer' },
  { staffId: 'UF002', name: 'Peter Otieno', dept: 'ICT', role: 'Systems Administrator' },
  { staffId: 'UF003', name: 'Mary Kamau', dept: 'Corporate Communication', role: 'Communications Officer' },
  { staffId: 'UF004', name: 'David Njoroge', dept: 'Transport', role: 'Transport Officer' },
  { staffId: 'UF005', name: 'Grace Wanjiku', dept: 'Procurement', role: 'Procurement Officer' },
  { staffId: 'UF006', name: 'Samuel Kipchoge', dept: 'Transport', role: 'Driver' },
  { staffId: 'UF007', name: 'Fatuma Hassan', dept: 'Monitoring & Evaluation', role: 'Data Analyst' },
  { staffId: 'UF008', name: 'John Mutua', dept: 'Procurement', role: 'Senior Procurement Manager' },
  { staffId: 'UF009', name: 'Alice Odhiambo', dept: 'ICT', role: 'Software Developer' },
  { staffId: 'UF010', name: 'Robert Kariuki', dept: 'Corporate Communication', role: 'PR Specialist' },
  { staffId: 'UF011', name: 'Esther Njeri', dept: 'Monitoring & Evaluation', role: 'M&E Coordinator' },
  { staffId: 'UF012', name: 'Brian Omondi', dept: 'ICT', role: 'Network Engineer' },
];
