/**
 * Detailed Reports TypeScript interfaces
 */

import { DateRange } from '@/services/dashboard.service';

export interface LifecycleRequest {
  id: string;
  requestId: string;
  title: string;
  priority: string;
  status: string;
  initiator: string;
  initDate: string;
  currentStage: string;
  overallTAT: string;
  currentLevel: number;
  totalLevels: number;
  breachCount: number;
}

export interface ActivityLogEntry {
  timestamp: string;
  user: string;
  action: string;
  details: string;
  ip: string;
  userAgent: string | null;
  requestId: string;
  userId?: string;
}

export interface AgingWorkflow {
  id: string;
  requestId: string;
  title: string;
  initiator: string;
  startDate: string;
  daysOpen: number;
  currentStage: string;
  assignedTo: string;
  priority: string;
  status: string;
}

export interface PaginationState {
  page: number;
  totalPages: number;
  totalRecords: number;
}

export interface DateFilterState {
  dateRange: DateRange;
  customStartDate?: Date;
  customEndDate?: Date;
  showCustomDatePicker: boolean;
  tempCustomStartDate?: Date;
  tempCustomEndDate?: Date;
}

