# generated by datamodel-codegen:
#   filename:  discriminator_enum.yaml
#   timestamp: 2019-07-26T00:00:00+00:00

from __future__ import annotations

from dataclasses import dataclass, field
from enum import Enum
from typing import Literal, TypeAlias


class RequestVersionEnum(Enum):
    v1 = 'v1'
    v2 = 'v2'


@dataclass
class RequestBase:
    version: RequestVersionEnum


@dataclass
class RequestV1(RequestBase):
    request_id: str = field(kw_only=True)
    version: Literal['v1'] = 'v1'


@dataclass
class RequestV2(RequestBase):
    version: Literal['v2'] = 'v2'


Request: TypeAlias = RequestV1 | RequestV2
