/**
 * Applicant API Models
 * Models for applicant management
 */

export interface CreateApplicantDto {
  digilockerId: string;
  name: string;
  email: string;
  phone?: string;
  walletAddress?: string;
}

export interface UpdateApplicantDto {
  digilockerId?: string;
  name?: string;
  email?: string;
  phone?: string;
  walletAddress?: string;
}

export interface ApplicantResponseDto {
  id: string;
  digilockerId: string;
  name: string;
  email: string;
  phone?: string;
  walletAddress?: string;
  isActive: boolean;
  createdAt: string;
  updatedAt: string;
}

export interface PaginatedApplicantsResponse {
  data: ApplicantResponseDto[];
  total: number;
  page: number;
  limit: number;
  totalPages: number;
  hasNextPage: boolean;
}
