class Http2ServerRequest
          
     extends stream.Readable 
  
Usage in Deno
```typescript import { Http2ServerRequest } from "node:node__http2.d.ts"; ```A `Http2ServerRequest` object is created by Server or SecureServer and passed as the first argument to the `'request'` event. It may be used to access a request status,
headers, and
data.
  
  
    
 
  
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
 
  
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
  
    
 
new
Http2ServerRequest(stream: ServerHttp2Stream,headers: IncomingHttpHeaders,options: stream.ReadableOptions,rawHeaders: readonly string[],)
      
    readonly
aborted: boolean
      
    The `request.aborted` property will be `true` if the request has
been aborted.
readonly
authority: string
      
    The request authority pseudo header field. Because HTTP/2 allows requests
to set either `:authority` or `host`, this value is derived from `req.headers[':authority']` if present. Otherwise, it is derived from `req.headers['host']`.
readonly
complete: boolean
      
    The `request.complete` property will be `true` if the request has
been completed, aborted, or destroyed.
deprecated
readonly
connection: net.Socket | tls.TLSSocket
      
    See `request.socket`.
readonly
headers: IncomingHttpHeaders
      
    The request/response headers object.
Key-value pairs of header names and values. Header names are lower-cased.
```js
// Prints something like:
//
// { 'user-agent': 'curl/7.22.0',
//   host: '127.0.0.1:8000',
//   accept: '*' }
console.log(request.headers);
```
See `HTTP/2 Headers Object`.
In HTTP/2, the request path, host name, protocol, and method are represented as
special headers prefixed with the `:` character (e.g. `':path'`). These special
headers will be included in the `request.headers` object. Care must be taken not
to inadvertently modify these special headers or errors may occur. For instance,
removing all headers from the request will cause errors to occur:
```js
removeAllHeaders(request.headers);
assert(request.url);   // Fails because the :path header has been removed
```
readonly
httpVersion: string
      
    In case of server request, the HTTP version sent by the client. In the case of
client response, the HTTP version of the connected-to server. Returns `'2.0'`.
Also `message.httpVersionMajor` is the first integer and `message.httpVersionMinor` is the second.
readonly
httpVersionMajor: number
      
    readonly
httpVersionMinor: number
      
    readonly
method: string
      
    The request method as a string. Read-only. Examples: `'GET'`, `'DELETE'`.
readonly
rawHeaders: string[]
      
    The raw request/response headers list exactly as they were received.
The keys and values are in the same list. It is _not_ a
list of tuples. So, the even-numbered offsets are key values, and the
odd-numbered offsets are the associated values.
Header names are not lowercased, and duplicates are not merged.
```js
// Prints something like:
//
// [ 'user-agent',
//   'this is invalid because there can be only one',
//   'User-Agent',
//   'curl/7.22.0',
//   'Host',
//   '127.0.0.1:8000',
//   'ACCEPT',
//   '*' ]
console.log(request.rawHeaders);
```
readonly
rawTrailers: string[]
      
    The raw request/response trailer keys and values exactly as they were
received. Only populated at the `'end'` event.
readonly
scheme: string
      
    The request scheme pseudo header field indicating the scheme
portion of the target URL.
readonly
socket: net.Socket | tls.TLSSocket
      
    Returns a `Proxy` object that acts as a `net.Socket` (or `tls.TLSSocket`) but
applies getters, setters, and methods based on HTTP/2 logic.
`destroyed`, `readable`, and `writable` properties will be retrieved from and
set on `request.stream`.
`destroy`, `emit`, `end`, `on` and `once` methods will be called on `request.stream`.
`setTimeout` method will be called on `request.stream.session`.
`pause`, `read`, `resume`, and `write` will throw an error with code `ERR_HTTP2_NO_SOCKET_MANIPULATION`. See `Http2Session and Sockets` for
more information.
All other interactions will be routed directly to the socket. With TLS support,
use `request.socket.getPeerCertificate()` to obtain the client's
authentication details.
readonly
stream: ServerHttp2Stream
      
    The `Http2Stream` object backing the request.
readonly
trailers: IncomingHttpHeaders
      
    The request/response trailers object. Only populated at the `'end'` event.
url: string
      
    Request URL string. This contains only the URL that is present in the actual
HTTP request. If the request is:
```http
GET /status?name=ryan HTTP/1.1
Accept: text/plain
```
Then `request.url` will be:
```js
'/status?name=ryan'
```
To parse the url into its parts, `new URL()` can be used:
```console
$ node
> new URL('/status?name=ryan', 'http://example.com')
URL {
  href: 'http://example.com/status?name=ryan',
  origin: 'http://example.com',
  protocol: 'http:',
  username: '',
  password: '',
  host: 'example.com',
  hostname: 'example.com',
  port: '',
  pathname: '/status',
  search: '?name=ryan',
  searchParams: URLSearchParams { 'name' => 'ryan' },
  hash: ''
}
```
addListener(event: "aborted",listener: (hadError: boolean,code: number,) => void,): this
      
    
addListener(event: "close",listener: () => void,): this
      
    
addListener(event: "data",listener: (chunk: Buffer | string) => void,): this
      
    
addListener(event: "end",listener: () => void,): this
      
    
addListener(event: "readable",listener: () => void,): this
      
    
addListener(event: "error",listener: (err: Error) => void,): this
      
    
addListener(event: string | symbol,listener: (...args: any[]) => void,): this
      
    
emit(event: "aborted",hadError: boolean,code: number,): boolean
      
    
emit(event: "close"): boolean
      
    
emit(event: "data",chunk: Buffer | string,): boolean
      
    
emit(event: "end"): boolean
      
    
emit(event: "readable"): boolean
      
    
emit(event: "error",err: Error,): boolean
      
    
emit(event: string | symbol,...args: any[],): boolean
      
    
on(event: "aborted",listener: (hadError: boolean,code: number,) => void,): this
      
    
on(event: "close",listener: () => void,): this
      
    
on(event: "data",listener: (chunk: Buffer | string) => void,): this
      
    
on(event: "end",listener: () => void,): this
      
    
on(event: "readable",listener: () => void,): this
      
    
on(event: "error",listener: (err: Error) => void,): this
      
    
on(event: string | symbol,listener: (...args: any[]) => void,): this
      
    
once(event: "aborted",listener: (hadError: boolean,code: number,) => void,): this
      
    
once(event: "close",listener: () => void,): this
      
    
once(event: "data",listener: (chunk: Buffer | string) => void,): this
      
    
once(event: "end",listener: () => void,): this
      
    
once(event: "readable",listener: () => void,): this
      
    
once(event: "error",listener: (err: Error) => void,): this
      
    
once(event: string | symbol,listener: (...args: any[]) => void,): this
      
    
prependListener(event: "aborted",listener: (hadError: boolean,code: number,) => void,): this
      
    
prependListener(event: "close",listener: () => void,): this
      
    
prependListener(event: "data",listener: (chunk: Buffer | string) => void,): this
      
    
prependListener(event: "end",listener: () => void,): this
      
    
prependListener(event: "readable",listener: () => void,): this
      
    
prependListener(event: "error",listener: (err: Error) => void,): this
      
    
prependListener(event: string | symbol,listener: (...args: any[]) => void,): this
      
    
prependOnceListener(event: "aborted",listener: (hadError: boolean,code: number,) => void,): this
      
    
prependOnceListener(event: "close",listener: () => void,): this
      
    
prependOnceListener(event: "data",listener: (chunk: Buffer | string) => void,): this
      
    
prependOnceListener(event: "end",listener: () => void,): this
      
    
prependOnceListener(event: "readable",listener: () => void,): this
      
    
prependOnceListener(event: "error",listener: (err: Error) => void,): this
      
    
prependOnceListener(event: string | symbol,listener: (...args: any[]) => void,): this
      
    
read(size?: number): Buffer
 | string
 | null
      
    
setTimeout(msecs: number,callback?: () => void,): void
      
    Sets the `Http2Stream`'s timeout value to `msecs`. If a callback is
provided, then it is added as a listener on the `'timeout'` event on
the response object.
If no `'timeout'` listener is added to the request, the response, or
the server, then `Http2Stream`s are destroyed when they time out. If a
handler is assigned to the request, the response, or the server's `'timeout'`events, timed out sockets must be handled explicitly.