13 lines
407 B
Python
13 lines
407 B
Python
|
from pydantic import BaseModel, field_validator
|
||
|
from typing import Optional
|
||
|
|
||
|
class PlayerSubscription(BaseModel):
|
||
|
username: str
|
||
|
expiry: Optional[int] = None
|
||
|
|
||
|
@field_validator('expiry')
|
||
|
@classmethod
|
||
|
def expiry_must_be_positive_int(cls, v):
|
||
|
if v is not None and not isinstance(v, int) or v < 0:
|
||
|
raise ValueError('Expiry must be a positive integer')
|
||
|
return v
|