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

from __future__ import annotations
from .v3_globaleventrules_ruleaction import (
    V3GlobalEventRulesRuleAction,
    V3GlobalEventRulesRuleActionTypedDict,
)
from squadcast_sdk.types import BaseModel
from typing import Optional
from typing_extensions import NotRequired, TypedDict


class V3GlobalEventRulesCreateRulesetRequestTypedDict(TypedDict):
    alert_source_shortname: str
    alert_source_version: str
    catch_all_action: NotRequired[V3GlobalEventRulesRuleActionTypedDict]


class V3GlobalEventRulesCreateRulesetRequest(BaseModel):
    alert_source_shortname: str

    alert_source_version: str

    catch_all_action: Optional[V3GlobalEventRulesRuleAction] = None
