"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""

from __future__ import annotations
import pydantic
from squadcast_sdk.types import BaseModel
from typing import Optional
from typing_extensions import Annotated, NotRequired, TypedDict


class V4StatusPagesComponentsCreateComponentResponseTypedDict(TypedDict):
    id: int
    page_id: int
    name: str
    description: str
    under_maintenance: bool
    status_id: NotRequired[int]
    group_id: NotRequired[int]


class V4StatusPagesComponentsCreateComponentResponse(BaseModel):
    id: int

    page_id: Annotated[int, pydantic.Field(alias="pageID")]

    name: str

    description: str

    under_maintenance: Annotated[bool, pydantic.Field(alias="underMaintenance")]

    status_id: Annotated[Optional[int], pydantic.Field(alias="statusID")] = None

    group_id: Annotated[Optional[int], pydantic.Field(alias="groupID")] = None
