"""
This type stub file was generated by pyright.
"""

import typing as t
import starlette.convertors
from starlette.types import Receive, Scope
from connexion.frameworks.abstract import Framework
from connexion.lifecycle import ConnexionRequest
from connexion.uri_parsing import AbstractURIParser

class Starlette(Framework):
    @staticmethod
    def is_framework_response(response: t.Any) -> bool:
        ...
    
    @classmethod
    def connexion_to_framework_response(cls, response): # -> JSONResponse | Response:
        ...
    
    @classmethod
    def build_response(cls, data: t.Any, *, content_type: str = ..., headers: dict = ..., status_code: int = ...): # -> JSONResponse | Response:
        ...
    
    @staticmethod
    def get_request(*, scope: Scope, receive: Receive, uri_parser: AbstractURIParser, **kwargs) -> ConnexionRequest:
        ...
    


PATH_PARAMETER = ...
PATH_PARAMETER_CONVERTERS = ...
def convert_path_parameter(match, types): # -> str:
    ...

def starlettify_path(swagger_path, types=...): # -> str:
    """
    Convert swagger path templates to flask path templates

    :type swagger_path: str
    :type types: dict
    :rtype: str

    >>> starlettify_path('/foo-bar/{my-param}')
    '/foo-bar/{my_param}'

    >>> starlettify_path('/foo/{someint}', {'someint': 'int'})
    '/foo/{someint:int}'
    """
    ...

class FloatConverter(starlette.convertors.FloatConvertor):
    """Starlette converter for OpenAPI number type"""
    regex = ...


class IntegerConverter(starlette.convertors.IntegerConvertor):
    """Starlette converter for OpenAPI integer type"""
    regex = ...


