from pydantic import BaseModel, Field

class OCRResponse(BaseModel):
    firstName: str = Field(description='First name.', default=None)
    lastName: str = Field(description='Last name.', default=None)
    email: str = Field(description='Email.', default=None)
    phoneNumber: str = Field(description='Phone number.', default=None)
    address: str = Field(description='Address line.', default=None)
    city: str = Field(description='City.', default=None)
    state: str = Field(description='State.', default=None)
    zipCode: str = Field(description='Zip code.', default=None)
    country: str = Field(description='Country.', default=None)
    documentType: str = Field(description='Document type.', default=None)
    documentNumber: str = Field(description='Document number.', default=None)
    dateOfBirth: str = Field(description='Date of birth.', default=None)

class ImageOCRSchema(BaseModel):
    first_name: str = Field(description="The first name of the person in the document", default=None)
    last_name: str = Field(description="The last name of the person in the document", default=None)
    dob: str = Field(description="The date of birth of the person in the document. Should be in YYYY-MM-DD format", default=None)
    email: str = Field(description="The email of the person in the document", default=None)
    phone: str = Field(description="The phone number of the person in the document", default=None)
    address: str = Field(description="The address of the person in the document", default=None)
    city: str = Field(description="The city of the person in the document", default=None)
    state: str = Field(description="The state of the person in the document", default=None)
    zip: str = Field(description="The zip code of the person in the document", default=None)
    country: str = Field(description="The country of the person in the document", default=None)
    document_type: str = Field(description="The type of the document", default=None)
    document_number: str = Field(description="The number of the document", default=None)