import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire"; export declare const protobufPackage = "xray.transport.internet.headers.http"; export interface Header { $type: "xray.transport.internet.headers.http.Header"; /** "Accept", "Cookie", etc */ name: string; /** * Each entry must be valid in one piece. Random entry will be chosen if * multiple entries present. */ value: string[]; } /** HTTP version. Default value "1.1". */ export interface Version { $type: "xray.transport.internet.headers.http.Version"; value: string; } /** HTTP method. Default value "GET". */ export interface Method { $type: "xray.transport.internet.headers.http.Method"; value: string; } export interface RequestConfig { $type: "xray.transport.internet.headers.http.RequestConfig"; /** Full HTTP version like "1.1". */ version: Version | undefined; /** GET, POST, CONNECT etc */ method: Method | undefined; /** URI like "/login.php" */ uri: string[]; header: Header[]; } export interface Status { $type: "xray.transport.internet.headers.http.Status"; /** Status code. Default "200". */ code: string; /** Statue reason. Default "OK". */ reason: string; } export interface ResponseConfig { $type: "xray.transport.internet.headers.http.ResponseConfig"; version: Version | undefined; status: Status | undefined; header: Header[]; } export interface Config { $type: "xray.transport.internet.headers.http.Config"; /** * Settings for authenticating requests. If not set, client side will not send * authentication header, and server side will bypass authentication. */ request: RequestConfig | undefined; /** * Settings for authenticating responses. If not set, client side will bypass * authentication, and server side will not send authentication header. */ response: ResponseConfig | undefined; } export declare const Header: MessageFns; export declare const Version: MessageFns; export declare const Method: MessageFns; export declare const RequestConfig: MessageFns; export declare const Status: MessageFns; export declare const ResponseConfig: MessageFns; export declare const Config: MessageFns; type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; export type DeepPartial = T extends Builtin ? T : T extends globalThis.Array ? globalThis.Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { [K in Exclude]?: DeepPartial; } : Partial; export interface MessageFns { readonly $type: V; encode(message: T, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): T; fromJSON(object: any): T; toJSON(message: T): unknown; create(base?: DeepPartial): T; fromPartial(object: DeepPartial): T; } export {};