def METHOD_NAME(
    **kwargs  # type: Any
):
    # type: (...) -> HttpRequest
    api_version = kwargs.pop('api_version', "2022-05-31")  # type: str
    content_type = kwargs.pop('content_type', None)  # type: Optional[str]
    traceparent = kwargs.pop('traceparent', None)  # type: Optional[str]
    tracestate = kwargs.pop('tracestate', None)  # type: Optional[str]
    max_items_per_page = kwargs.pop('max_items_per_page', None)  # type: Optional[int]
    accept = "application/json"
    # Construct URL
    _url = kwargs.pop("template_url", "/query")
    # Construct parameters
    _query_parameters = kwargs.pop("params", {})  # type: Dict[str, Any]
    _query_parameters['api-version'] = _SERIALIZER.query("api_version", api_version, 'str')
    # Construct headers
    _header_parameters = kwargs.pop("headers", {})  # type: Dict[str, Any]
    if traceparent is not None:
        _header_parameters['traceparent'] = _SERIALIZER.header("traceparent", traceparent, 'str')
    if tracestate is not None:
        _header_parameters['tracestate'] = _SERIALIZER.header("tracestate", tracestate, 'str')
    if max_items_per_page is not None:
        _header_parameters['max-items-per-page'] = _SERIALIZER.header("max_items_per_page", max_items_per_page, 'int')
    if content_type is not None:
        _header_parameters['Content-Type'] = _SERIALIZER.header("content_type", content_type, 'str')
    _header_parameters['Accept'] = _SERIALIZER.header("accept", accept, 'str')
    return HttpRequest(
        method="POST",
        url=_url,
        params=_query_parameters,
        headers=_header_parameters,
        **kwargs
    )