from pydantic import BaseModel
from typing import Optional


class ImportJobResponse(BaseModel):
    job_id: str
    status: str
    message: str


class CommitRequest(BaseModel):
    pass  # no body needed for single model


class ImportJobStatus(BaseModel):
    status: str
    job_id: Optional[str] = None
    total_rows: Optional[int] = 0
    error_count: Optional[int] = 0
    valid_rows: Optional[int] = 0
    error: Optional[str] = None
    inserted: Optional[int] = 0
    skipped_invalid: Optional[int] = 0
    skipped_missing_fk: Optional[int] = 0
    skipped_details: Optional[list] = None
