from aiojenkins.exceptions import JenkinsError as JenkinsError, JenkinsNotFoundError as JenkinsNotFoundError
from aiojenkins.utils import construct_node_config as construct_node_config, parse_build_url as parse_build_url
from typing import Any, List

class Nodes:
    jenkins: Any = ...
    def __init__(self, jenkins: Any) -> None: ...
    async def get_all(self) -> dict: ...
    async def get_info(self, name: str) -> dict: ...
    async def get_failed_builds(self, name: str) -> List[dict]: ...
    async def get_all_builds(self, name: str) -> List[dict]: ...
    async def get_config(self, name: str) -> str: ...
    async def is_exists(self, name: str) -> bool: ...
    def construct(self, **kwargs: Any) -> Any: ...
    async def create(self, name: str, config: dict) -> None: ...
    async def delete(self, name: str) -> None: ...
    async def enable(self, name: str) -> None: ...
    async def disable(self, name: str, message: str=...) -> None: ...
    async def update_offline_reason(self, name: str, message: str) -> None: ...
