def teardown_websocket(self, func: Callable) -> Callable:
        """Add a teardown websocket function to the Blueprint.

        This is designed to be used as a decorator, and has the same
        arguments as :meth:`~quart.Quart.teardown_websocket`. It
        applies only to requests that are routed to an endpoint in
        this blueprint. An example usage,

        .. code-block:: python

            blueprint = Blueprint(__name__)
            @blueprint.teardown_websocket
            def teardown():
                ...

        """
        self.record_once(lambda state: state.app.teardown_websocket(func, self.name))
        return func
Add a teardown websocket function to the Blueprint.

        This is designed to be used as a decorator, and has the same
        arguments as :meth:`~quart.Quart.teardown_websocket`. It
        applies only to requests that are routed to an endpoint in
        this blueprint. An example usage,

        .. code-block:: python

            blueprint = Blueprint(__name__)
            @blueprint.teardown_websocket
            def teardown():
                ...