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

from __future__ import annotations
from .v3_extensions_msteams_eventclass import (
    V3ExtensionsMSTeamsEventClass,
    V3ExtensionsMSTeamsEventClassTypedDict,
)
from squadcast_sdk.types import BaseModel
from typing import List
from typing_extensions import TypedDict


class V3ExtensionsMSTeamsTriggersTypedDict(TypedDict):
    r"""Defines the trigger conditions for sending alerts."""

    all_active: bool
    r"""If true, all alerts are sent, and the 'custom' list is ignored."""
    custom: List[V3ExtensionsMSTeamsEventClassTypedDict]
    r"""A list of specific event classes to send alerts for. This is used when 'all_active' is false."""


class V3ExtensionsMSTeamsTriggers(BaseModel):
    r"""Defines the trigger conditions for sending alerts."""

    all_active: bool
    r"""If true, all alerts are sent, and the 'custom' list is ignored."""

    custom: List[V3ExtensionsMSTeamsEventClass]
    r"""A list of specific event classes to send alerts for. This is used when 'all_active' is false."""
