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

import logging
import json_logging
import json_logging.framework
import flask as flask
from json_logging.framework_base import AppRequestInstrumentationConfigurator, RequestAdapter, ResponseAdapter
from json_logging.util import is_not_match_any_pattern
from flask import request as request_obj

def is_flask_present(): # -> bool:
    ...

if is_flask_present():
    _current_request = ...
    _flask = flask
class FlaskAppRequestInstrumentationConfigurator(AppRequestInstrumentationConfigurator):
    def config(self, app, exclude_url_patterns=...): # -> None:
        ...
    


class FlaskRequestAdapter(RequestAdapter):
    @staticmethod
    def get_request_class_type():
        ...
    
    @staticmethod
    def support_global_request_object(): # -> Literal[True]:
        ...
    
    @staticmethod
    def get_current_request(): # -> Request:
        ...
    
    def get_remote_user(self, request): # -> Literal['-']:
        ...
    
    def get_http_header(self, request, header_name, default=...): # -> None:
        ...
    
    def set_correlation_id(self, request_, value): # -> None:
        ...
    
    def get_correlation_id_in_request_context(self, request): # -> Any | None:
        ...
    
    def get_protocol(self, request):
        ...
    
    def get_path(self, request):
        ...
    
    def get_content_length(self, request):
        ...
    
    def get_method(self, request):
        ...
    
    def get_remote_ip(self, request):
        ...
    
    def get_remote_port(self, request):
        ...
    


class FlaskResponseAdapter(ResponseAdapter):
    def get_status_code(self, response):
        ...
    
    def get_response_size(self, response):
        ...
    
    def get_content_type(self, response):
        ...
    


