28 lines
646 B
Python
28 lines
646 B
Python
from __future__ import annotations
|
|
|
|
from datetime import datetime
|
|
from typing import Any
|
|
|
|
from pydantic import BaseModel, ConfigDict, Field
|
|
|
|
|
|
class ServiceWriteRequest(BaseModel):
|
|
model_config = ConfigDict(extra="forbid")
|
|
|
|
definition: dict[str, Any]
|
|
expected_revision: str | None = Field(default=None, max_length=120)
|
|
|
|
|
|
class ServiceListResponse(BaseModel):
|
|
services: list[dict[str, Any]]
|
|
|
|
|
|
class ServiceAvailabilityRequest(BaseModel):
|
|
model_config = ConfigDict(extra="forbid")
|
|
|
|
definition: dict[str, Any]
|
|
effective_at: datetime
|
|
|
|
|
|
__all__ = ["ServiceAvailabilityRequest", "ServiceListResponse", "ServiceWriteRequest"]
|