from typing import List
from pydantic import Field,BaseModel
from typing import Optional
from decimal import Decimal
from datetime import datetime
from src.apps.base.schemas.common import BaseSchema
from src.utils.constants import MAX_PER_PAGE,DEFAULT_PER_PAGE

class KeywordSubstitutionSchema(BaseSchema):
    keyword: Optional[str] = None
    substitution: Optional[str] = None
    substitution_type: Optional[str] = None
    
class KeywordSubstitutionCreateSchema(KeywordSubstitutionSchema):
    pass

class KeywordSubstitutionUpdateSchema(KeywordSubstitutionSchema):
    pass

class KeywordSubstitutionOutputSchema(KeywordSubstitutionSchema):
    id: Optional[int] = None
    date_created: Optional[datetime] = None
    last_updated: Optional[datetime] = None
    
class KeywordSubstitutionFilterSchema(BaseModel):
    type: Optional[str] = None 