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

from __future__ import annotations
from enum import Enum
from novu_py.types import BaseModel
from typing import Optional
from typing_extensions import NotRequired, TypedDict


class DelayRegularMetadataUnit(str, Enum):
    SECONDS = "seconds"
    MINUTES = "minutes"
    HOURS = "hours"
    DAYS = "days"
    WEEKS = "weeks"
    MONTHS = "months"


class DelayRegularMetadataType(str, Enum):
    REGULAR = "regular"


class DelayRegularMetadataTypedDict(TypedDict):
    type: DelayRegularMetadataType
    amount: NotRequired[float]
    unit: NotRequired[DelayRegularMetadataUnit]


class DelayRegularMetadata(BaseModel):
    type: DelayRegularMetadataType

    amount: Optional[float] = None

    unit: Optional[DelayRegularMetadataUnit] = None
