# generated by datamodel-codegen:
#   filename:  notification.json

from __future__ import annotations

from typing import Any

from pydantic import BaseModel, confloat


class Action(BaseModel):
    """
    Notification Action
    """

    command: str
    data: dict[str, Any] | None = None
    label: str


class Audio(BaseModel):
    source: str
    volume: confloat(ge=0.0, le=100.0) | None = None


class Notification(BaseModel):
    """
    Notification
    """

    title: str
    message: str | None = None
    icon: str | None = None
    image: str | None = None
    actions: list[Action] | None = None
    timeout: float | None = None
    audio: Audio | None = None
