"""
Module: 'aioble.server' on micropython-v1.25.0-rp2-RPI_PICO2_W
"""

# MCU: {'build': '', 'ver': '1.25.0', 'version': '1.25.0', 'port': 'rp2', 'board': 'RPI_PICO2_W', 'mpy': 'v6.3', 'family': 'micropython', 'cpu': 'RP2350', 'arch': 'armv7emsp'}
# Stubber: v1.24.0
from __future__ import annotations
from typing import Generator
from _typeshed import Incomplete

_registered_characteristics: dict = {}

def _server_shutdown(*args, **kwargs) -> Incomplete: ...
def ensure_active(*args, **kwargs) -> Incomplete: ...
def _server_irq(*args, **kwargs) -> Incomplete: ...
def register_services(*args, **kwargs) -> Incomplete: ...
def log_error(*args, **kwargs) -> Incomplete: ...
def register_irq_handler(*args, **kwargs) -> Incomplete: ...
def log_warn(*args, **kwargs) -> Incomplete: ...
def log_info(*args, **kwargs) -> Incomplete: ...
def const(*args, **kwargs) -> Incomplete: ...

class BaseCharacteristic:
    def _remote_read(self, *args, **kwargs) -> Incomplete: ...
    def _register(self, *args, **kwargs) -> Incomplete: ...
    def _remote_write(self, *args, **kwargs) -> Incomplete: ...
    def on_read(self, *args, **kwargs) -> Incomplete: ...
    def read(self, *args, **kwargs) -> Incomplete: ...
    def _init_capture(self, *args, **kwargs) -> Incomplete: ...
    def write(self, *args, **kwargs) -> Incomplete: ...
    def written(*args, **kwargs) -> Generator:  ## = <generator>
        ...

    def _run_capture_task(*args, **kwargs) -> Generator:  ## = <generator>
        ...

    def __init__(self, *argv, **kwargs) -> None: ...

class BufferedCharacteristic:
    def on_read(self, *args, **kwargs) -> Incomplete: ...
    def _remote_read(self, *args, **kwargs) -> Incomplete: ...
    def _remote_write(self, *args, **kwargs) -> Incomplete: ...
    def notify(self, *args, **kwargs) -> Incomplete: ...
    def _tuple(self, *args, **kwargs) -> Incomplete: ...
    def _init_capture(self, *args, **kwargs) -> Incomplete: ...
    def read(self, *args, **kwargs) -> Incomplete: ...
    def write(self, *args, **kwargs) -> Incomplete: ...
    def _indicate_done(self, *args, **kwargs) -> Incomplete: ...
    def written(*args, **kwargs) -> Generator:  ## = <generator>
        ...

    def _register(self, *args, **kwargs) -> Incomplete: ...
    def indicate(*args, **kwargs) -> Generator:  ## = <generator>
        ...

    def _run_capture_task(*args, **kwargs) -> Generator:  ## = <generator>
        ...

    def __init__(self, *argv, **kwargs) -> None: ...

ble: Incomplete  ## <class 'BLE'> = <BLE>

class deque:
    def pop(self, *args, **kwargs) -> Incomplete: ...
    def appendleft(self, *args, **kwargs) -> Incomplete: ...
    def popleft(self, *args, **kwargs) -> Incomplete: ...
    def extend(self, *args, **kwargs) -> Incomplete: ...
    def append(self, *args, **kwargs) -> Incomplete: ...
    def __init__(self, *argv, **kwargs) -> None: ...

class DeviceTimeout:
    def _timeout_sleep(*args, **kwargs) -> Generator:  ## = <generator>
        ...

    def __init__(self, *argv, **kwargs) -> None: ...

class Service:
    def _tuple(self, *args, **kwargs) -> Incomplete: ...
    def __init__(self, *argv, **kwargs) -> None: ...

class GattError(Exception): ...

class Characteristic:
    def _remote_write(self, *args, **kwargs) -> Incomplete: ...
    def _remote_read(self, *args, **kwargs) -> Incomplete: ...
    def notify(self, *args, **kwargs) -> Incomplete: ...
    def on_read(self, *args, **kwargs) -> Incomplete: ...
    def _tuple(self, *args, **kwargs) -> Incomplete: ...
    def write(self, *args, **kwargs) -> Incomplete: ...
    def read(self, *args, **kwargs) -> Incomplete: ...
    def _register(self, *args, **kwargs) -> Incomplete: ...
    def _indicate_done(self, *args, **kwargs) -> Incomplete: ...
    def _init_capture(self, *args, **kwargs) -> Incomplete: ...
    def written(*args, **kwargs) -> Generator:  ## = <generator>
        ...

    def indicate(*args, **kwargs) -> Generator:  ## = <generator>
        ...

    def _run_capture_task(*args, **kwargs) -> Generator:  ## = <generator>
        ...

    def __init__(self, *argv, **kwargs) -> None: ...

class DeviceConnection:
    _connected: dict = {}
    def is_connected(self, *args, **kwargs) -> Incomplete: ...
    def _run_task(self, *args, **kwargs) -> Incomplete: ...
    def services(self, *args, **kwargs) -> Incomplete: ...
    def timeout(self, *args, **kwargs) -> Incomplete: ...
    def device_task(*args, **kwargs) -> Generator:  ## = <generator>
        ...

    def l2cap_connect(*args, **kwargs) -> Generator:  ## = <generator>
        ...

    def pair(*args, **kwargs) -> Generator:  ## = <generator>
        ...

    def service(*args, **kwargs) -> Generator:  ## = <generator>
        ...

    def l2cap_accept(*args, **kwargs) -> Generator:  ## = <generator>
        ...

    def disconnected(*args, **kwargs) -> Generator:  ## = <generator>
        ...

    def exchange_mtu(*args, **kwargs) -> Generator:  ## = <generator>
        ...

    def disconnect(*args, **kwargs) -> Generator:  ## = <generator>
        ...

    def __init__(self, *argv, **kwargs) -> None: ...

class Descriptor:
    def _tuple(self, *args, **kwargs) -> Incomplete: ...
    def _remote_read(self, *args, **kwargs) -> Incomplete: ...
    def _remote_write(self, *args, **kwargs) -> Incomplete: ...
    def on_read(self, *args, **kwargs) -> Incomplete: ...
    def _register(self, *args, **kwargs) -> Incomplete: ...
    def read(self, *args, **kwargs) -> Incomplete: ...
    def write(self, *args, **kwargs) -> Incomplete: ...
    def _init_capture(self, *args, **kwargs) -> Incomplete: ...
    def written(*args, **kwargs) -> Generator:  ## = <generator>
        ...

    def _run_capture_task(*args, **kwargs) -> Generator:  ## = <generator>
        ...

    def __init__(self, *argv, **kwargs) -> None: ...
