bazarr/libs/apprise/Apprise.pyi

63 lines
2.2 KiB
Python

from typing import Any, Dict, List, Iterable, Iterator, Optional
from . import (AppriseAsset, AppriseAttachment, AppriseConfig, ConfigBase,
NotifyBase, NotifyFormat, NotifyType)
from .common import ContentLocation
_Server = Union[str, ConfigBase, NotifyBase, AppriseConfig]
_Servers = Union[_Server, Dict[Any, _Server], Iterable[_Server]]
# Can't define this recursively as mypy doesn't support recursive types:
# https://github.com/python/mypy/issues/731
_Tag = Union[str, Iterable[Union[str, Iterable[str]]]]
class Apprise:
def __init__(
self,
servers: _Servers = ...,
asset: Optional[AppriseAsset] = ...,
location: Optional[ContentLocation] = ...,
debug: bool = ...
) -> None: ...
@staticmethod
def instantiate(
url: Union[str, Dict[str, NotifyBase]],
asset: Optional[AppriseAsset] = ...,
tag: Optional[_Tag] = ...,
suppress_exceptions: bool = ...
) -> NotifyBase: ...
def add(
self,
servers: _Servers = ...,
asset: Optional[AppriseAsset] = ...,
tag: Optional[_Tag] = ...
) -> bool: ...
def clear(self) -> None: ...
def find(self, tag: str = ...) -> Iterator[Apprise]: ...
def notify(
self,
body: str,
title: str = ...,
notify_type: NotifyType = ...,
body_format: NotifyFormat = ...,
tag: _Tag = ...,
attach: Optional[AppriseAttachment] = ...,
interpret_escapes: Optional[bool] = ...
) -> bool: ...
async def async_notify(
self,
body: str,
title: str = ...,
notify_type: NotifyType = ...,
body_format: NotifyFormat = ...,
tag: _Tag = ...,
attach: Optional[AppriseAttachment] = ...,
interpret_escapes: Optional[bool] = ...
) -> bool: ...
def details(self, lang: Optional[str] = ...) -> Dict[str, Any]: ...
def urls(self, privacy: bool = ...) -> Iterable[str]: ...
def pop(self, index: int) -> ConfigBase: ...
def __getitem__(self, index: int) -> ConfigBase: ...
def __bool__(self) -> bool: ...
def __nonzero__(self) -> bool: ...
def __iter__(self) -> Iterator[ConfigBase]: ...
def __len__(self) -> int: ...