"""
Module providing typed dicts for the metadata ControllerMeta:
- pest/metadata/types/controller_meta.py

ATTENTION:
This file was auto-generated by `task gen:types`.
Do not edit manually.
"""

from enum import Enum
from typing import Any, Callable, List, Sequence, TypedDict, Union


class ControllerMetaDict(TypedDict, total=False):
    tags: Union[List[Union[str, Enum]], None]
    '''🐀 ⇝ tags of the controller'''

    redirect_slashes: Union[bool, None]
    '''🐀 ⇝ redirect slashes?'''

    on_startup: Union[Sequence[Callable[[], Any]], None]
    '''🐀 ⇝ on startup events'''

    on_shutdown: Union[Sequence[Callable[[], Any]], None]
    '''🐀 ⇝ lifespan of the controller'''

    deprecated: Union[bool, None]
    '''🐀 ⇝ is the controller deprecated?'''

    include_in_schema: Union[bool, None]
    '''🐀 ⇝ include in schema?'''
