aboutsummaryrefslogtreecommitdiff
path: root/pyhon/typedefs.py
blob: 68ddf73442640b85eef9933ccbdd4fc3d5dea5b8 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
from typing import Union, Any, TYPE_CHECKING, Protocol

import aiohttp
from yarl import URL

if TYPE_CHECKING:
    from pyhon.parameter.base import HonParameter
    from pyhon.parameter.enum import HonParameterEnum
    from pyhon.parameter.fixed import HonParameterFixed
    from pyhon.parameter.program import HonParameterProgram
    from pyhon.parameter.range import HonParameterRange


class Callback(Protocol):  # pylint: disable=too-few-public-methods
    def __call__(
        self, url: str | URL, *args: Any, **kwargs: Any
    ) -> aiohttp.client._RequestContextManager: ...


Parameter = Union[
    "HonParameter",
    "HonParameterRange",
    "HonParameterEnum",
    "HonParameterFixed",
    "HonParameterProgram",
]