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

from __future__ import annotations

from typing import Annotated, List, Optional

from msgspec import Meta, Struct, field


class Pet(Struct):
    id: int
    name: str
    before_tag: str = field(name='beforeTag')
    tag: Optional[str] = None


Pets = List[Pet]


class User(Struct):
    id: int
    name: str
    tag: Optional[str] = None


Users = List[User]


Id = str


Rules = List[str]


class Error(Struct):
    code: int
    message: str


class Api(Struct):
    api_key: Optional[
        Annotated[str, Meta(description='To be used as a dataset parameter value')]
    ] = field(name='apiKey', default=None)
    api_version_number: Optional[
        Annotated[str, Meta(description='To be used as a version parameter value')]
    ] = field(name='apiVersionNumber', default=None)
    api_url: Optional[
        Annotated[str, Meta(description="The URL describing the dataset's fields")]
    ] = field(name='apiUrl', default=None)
    api_documentation_url: Optional[
        Annotated[str, Meta(description='A URL to the API console for each API')]
    ] = field(name='apiDocumentationUrl', default=None)


Apis = List[Api]


class Event(Struct):
    name: Optional[str] = None


class Result(Struct):
    event: Optional[Event] = None
