/********************************************************************
 * @author:      Kaven
 * @email:       kaven@wuwenkai.com
 * @website:     http://blog.kaven.xyz
 * @file:        [Kaven-Utils] /src/net/http/HttpRequestMessage.ts
 * @create:      2022-04-14 18:03:59.916
 * @modify:      2023-12-07 10:59:05.560
 * @version:     5.4.0
 * @times:       28
 * @lines:       139
 * @copyright:   Copyright © 2022-2023 Kaven. All Rights Reserved.
 * @description: [description]
 * @license:     [license]
 ********************************************************************/
import { KavenUrl } from "kaven-basic";
import { IHttpAuthorizationInfo } from "../../base/Interfaces.js";
import { HttpRequestBody } from "./HttpRequestBody.js";
import { HttpRequestHeader } from "./HttpRequestHeader.js";
import { HttpRequestStartLine } from "./HttpRequestStartLine.js";
export declare class HttpRequestMessage {
    readonly Index: number;
    StartLine: HttpRequestStartLine;
    Headers: HttpRequestHeader[];
    Body?: HttpRequestBody;
    IsStartLineParsed: boolean;
    IsHeadersParsed: boolean;
    constructor(index?: number);
    get ShouldParseBody(): boolean;
    FindHeader(name: string): HttpRequestHeader | undefined;
    get BodySize(): number;
    get IsHttpRequest(): boolean;
    get IsHttpConnect(): boolean;
    get Address(): KavenUrl;
    get Port(): number;
    GetAuthorizationInfo(headerName: string): IHttpAuthorizationInfo;
    ToBuffer(): Buffer;
}
