from typing import Optional
from pydantic import Field
from src.apps.base.schemas.common import BaseSchema


# Shared properties
class MerchantPaymentHistoryBase(BaseSchema):
    key: Optional[str] = Field(
        description="Key of MerchantPaymentHistory. The primary identifier"
    )
    value: Optional[str] = Field(
        description="Form Value, inclusive of alphabetical characters only",
        default=None,
    )
    label: Optional[str] = Field(
        description="Form label, inclusive of alphabetical characters only",
        default=None,
    )
    group: Optional[str] = Field(
        description="A valid string, can be used for categorizing settings."
    )
    input_type: Optional[str] = Field(
        description="A valid string, can be used for categorizing settings."
    )

class MerchantPaymentHistorySchema(MerchantPaymentHistoryBase):
    # id: int = Field(description="Id of MerchantPaymentHistory resource")
    merchant_id: int = Field(
        description="Merchant Id of this MerchantPaymentHistory resource"
    )