57 lines
2.1 KiB
Python
57 lines
2.1 KiB
Python
"""
|
|
This type stub file was generated by pyright.
|
|
"""
|
|
|
|
from functools import wraps
|
|
from flask import Blueprint, Response, current_app, request
|
|
from simple_websocket import ConnectionClosed, Server
|
|
from typing import Callable
|
|
|
|
class Sock:
|
|
"""Instantiate the Flask-Sock extension.
|
|
|
|
:param app: The Flask application instance. If not provided, it must be
|
|
initialized later by calling the :func:`Sock.init_app` method.
|
|
"""
|
|
def __init__(self, app=...) -> None: ...
|
|
def init_app(self, app): # -> None:
|
|
"""Initialize the Flask-Socket extension.
|
|
|
|
|
|
:param app: The Flask application instance. This method only needs to
|
|
be called if the application instance was not passed as
|
|
an argument to the constructor.
|
|
"""
|
|
...
|
|
|
|
def route(
|
|
self, path: str, bp: Blueprint | None = None
|
|
) -> Callable[
|
|
[Callable[[Server], None]], Callable[[Server], None]
|
|
]: # -> Callable[..., None]:
|
|
"""Decorator to create a WebSocket route.
|
|
|
|
The decorated function will be invoked when a WebSocket client
|
|
establishes a connection, with a WebSocket connection object passed
|
|
as an argument. Example::
|
|
|
|
@sock.route('/ws')
|
|
def websocket_route(ws):
|
|
# The ws object has the following methods:
|
|
# - ws.send(data)
|
|
# - ws.receive(timeout=None)
|
|
# - ws.close(reason=None, message=None)
|
|
|
|
If the route has variable components, the ``ws`` argument needs to be
|
|
included before them.
|
|
|
|
:param path: the URL associated with the route.
|
|
:param bp: the blueprint on which to register the route. If not given,
|
|
the route is attached directly to the Flask application
|
|
instance. When a blueprint is used, the application is
|
|
responsible for the blueprint's registration.
|
|
:param kwargs: additional route options. See the Flask documentation
|
|
for the ``app.route`` decorator for details.
|
|
"""
|
|
...
|