[node] Update http2 definitions for 9.4

This commit is contained in:
Kelvin Jin
2018-02-12 16:54:37 -05:00
parent 1254d58f4a
commit a25c336a59
2 changed files with 59 additions and 57 deletions
+37 -36
View File
@@ -6181,15 +6181,12 @@ declare module "http2" {
export interface Http2Stream extends stream.Duplex {
readonly aborted: boolean;
close(code: number, callback?: () => void): void;
readonly closed: boolean;
readonly destroyed: boolean;
readonly pending: boolean;
priority(options: StreamPriorityOptions): void;
readonly rstCode: number;
rstStream(code: number): void;
rstWithNoError(): void;
rstWithProtocolError(): void;
rstWithCancel(): void;
rstWithRefuse(): void;
rstWithInternalError(): void;
readonly session: Http2Session;
setTimeout(msecs: number, callback?: () => void): void;
readonly state: StreamState;
@@ -6321,8 +6318,8 @@ declare module "http2" {
additionalHeaders(headers: OutgoingHttpHeaders): void;
readonly headersSent: boolean;
readonly pushAllowed: boolean;
pushStream(headers: OutgoingHttpHeaders, callback?: (pushStream: ServerHttp2Stream) => void): void;
pushStream(headers: OutgoingHttpHeaders, options?: StreamPriorityOptions, callback?: (pushStream: ServerHttp2Stream) => void): void;
pushStream(headers: OutgoingHttpHeaders, callback?: (err: Error | null, pushStream: ServerHttp2Stream, headers: OutgoingHttpHeaders) => void): void;
pushStream(headers: OutgoingHttpHeaders, options?: StreamPriorityOptions, callback?: (err: Error | null, pushStream: ServerHttp2Stream, headers: OutgoingHttpHeaders) => void): void;
respond(headers?: OutgoingHttpHeaders, options?: ServerStreamResponseOptions): void;
respondWithFD(fd: number, headers?: OutgoingHttpHeaders, options?: ServerStreamFileResponseOptions): void;
respondWithFile(path: string, headers?: OutgoingHttpHeaders, options?: ServerStreamFileResponseOptionsWithError): void;
@@ -6347,13 +6344,6 @@ declare module "http2" {
getTrailers?: (trailers: OutgoingHttpHeaders, flags: number) => void;
}
export interface SessionShutdownOptions {
graceful?: boolean;
errorCode?: number;
lastStreamID?: number;
opaqueData?: Buffer | Uint8Array;
}
export interface SessionState {
effectiveLocalWindowSize?: number;
effectiveRecvDataLength?: number;
@@ -6367,20 +6357,26 @@ declare module "http2" {
}
export interface Http2Session extends events.EventEmitter {
destroy(): void;
readonly alpnProtocol?: string;
close(callback?: () => void): void;
readonly closed: boolean;
destroy(error?: Error, code?: number): void;
readonly destroyed: boolean;
readonly encrypted?: boolean;
goaway(code?: number, lastStreamID?: number, opaqueData?: Buffer | DataView /*| TypedArray*/): void;
readonly localSettings: Settings;
readonly originSet?: string[];
readonly pendingSettingsAck: boolean;
ref(): void;
readonly remoteSettings: Settings;
rstStream(stream: Http2Stream, code?: number): void;
setTimeout(msecs: number, callback?: () => void): void;
shutdown(callback?: () => void): void;
shutdown(options: SessionShutdownOptions, callback?: () => void): void;
readonly socket: net.Socket | tls.TLSSocket;
readonly state: SessionState;
priority(stream: Http2Stream, options: StreamPriorityOptions): void;
settings(settings: Settings): void;
readonly type: number;
unref(): void;
addListener(event: string, listener: (...args: any[]) => void): this;
addListener(event: "close", listener: () => void): this;
@@ -6389,7 +6385,6 @@ declare module "http2" {
addListener(event: "goaway", listener: (errorCode: number, lastStreamID: number, opaqueData: Buffer) => void): this;
addListener(event: "localSettings", listener: (settings: Settings) => void): this;
addListener(event: "remoteSettings", listener: (settings: Settings) => void): this;
addListener(event: "socketError", listener: (err: Error) => void): this;
addListener(event: "timeout", listener: () => void): this;
emit(event: string | symbol, ...args: any[]): boolean;
@@ -6399,7 +6394,6 @@ declare module "http2" {
emit(event: "goaway", errorCode: number, lastStreamID: number, opaqueData: Buffer): boolean;
emit(event: "localSettings", settings: Settings): boolean;
emit(event: "remoteSettings", settings: Settings): boolean;
emit(event: "socketError", err: Error): boolean;
emit(event: "timeout"): boolean;
on(event: string, listener: (...args: any[]) => void): this;
@@ -6409,7 +6403,6 @@ declare module "http2" {
on(event: "goaway", listener: (errorCode: number, lastStreamID: number, opaqueData: Buffer) => void): this;
on(event: "localSettings", listener: (settings: Settings) => void): this;
on(event: "remoteSettings", listener: (settings: Settings) => void): this;
on(event: "socketError", listener: (err: Error) => void): this;
on(event: "timeout", listener: () => void): this;
once(event: string, listener: (...args: any[]) => void): this;
@@ -6419,7 +6412,6 @@ declare module "http2" {
once(event: "goaway", listener: (errorCode: number, lastStreamID: number, opaqueData: Buffer) => void): this;
once(event: "localSettings", listener: (settings: Settings) => void): this;
once(event: "remoteSettings", listener: (settings: Settings) => void): this;
once(event: "socketError", listener: (err: Error) => void): this;
once(event: "timeout", listener: () => void): this;
prependListener(event: string, listener: (...args: any[]) => void): this;
@@ -6429,7 +6421,6 @@ declare module "http2" {
prependListener(event: "goaway", listener: (errorCode: number, lastStreamID: number, opaqueData: Buffer) => void): this;
prependListener(event: "localSettings", listener: (settings: Settings) => void): this;
prependListener(event: "remoteSettings", listener: (settings: Settings) => void): this;
prependListener(event: "socketError", listener: (err: Error) => void): this;
prependListener(event: "timeout", listener: () => void): this;
prependOnceListener(event: string, listener: (...args: any[]) => void): this;
@@ -6439,7 +6430,6 @@ declare module "http2" {
prependOnceListener(event: "goaway", listener: (errorCode: number, lastStreamID: number, opaqueData: Buffer) => void): this;
prependOnceListener(event: "localSettings", listener: (settings: Settings) => void): this;
prependOnceListener(event: "remoteSettings", listener: (settings: Settings) => void): this;
prependOnceListener(event: "socketError", listener: (err: Error) => void): this;
prependOnceListener(event: "timeout", listener: () => void): this;
}
@@ -6447,31 +6437,42 @@ declare module "http2" {
request(headers?: OutgoingHttpHeaders, options?: ClientSessionRequestOptions): ClientHttp2Stream;
addListener(event: string, listener: (...args: any[]) => void): this;
addListener(event: "altsvc", listener: (alt: string, origin: string, stream: number) => void): this;
addListener(event: "connect", listener: (session: ClientHttp2Session, socket: net.Socket | tls.TLSSocket) => void): this;
addListener(event: "stream", listener: (stream: ClientHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void): this;
emit(event: string | symbol, ...args: any[]): boolean;
emit(event: "altsvc", alt: string, origin: string, stream: number): boolean;
emit(event: "connect", session: ClientHttp2Session, socket: net.Socket | tls.TLSSocket): boolean;
emit(event: "stream", stream: ClientHttp2Stream, headers: IncomingHttpHeaders, flags: number): boolean;
on(event: string, listener: (...args: any[]) => void): this;
on(event: "altsvc", listener: (alt: string, origin: string, stream: number) => void): this;
on(event: "connect", listener: (session: ClientHttp2Session, socket: net.Socket | tls.TLSSocket) => void): this;
on(event: "stream", listener: (stream: ClientHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void): this;
once(event: string, listener: (...args: any[]) => void): this;
once(event: "altsvc", listener: (alt: string, origin: string, stream: number) => void): this;
once(event: "connect", listener: (session: ClientHttp2Session, socket: net.Socket | tls.TLSSocket) => void): this;
once(event: "stream", listener: (stream: ClientHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void): this;
prependListener(event: string, listener: (...args: any[]) => void): this;
prependListener(event: "altsvc", listener: (alt: string, origin: string, stream: number) => void): this;
prependListener(event: "connect", listener: (session: ClientHttp2Session, socket: net.Socket | tls.TLSSocket) => void): this;
prependListener(event: "stream", listener: (stream: ClientHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void): this;
prependOnceListener(event: string, listener: (...args: any[]) => void): this;
prependOnceListener(event: "altsvc", listener: (alt: string, origin: string, stream: number) => void): this;
prependOnceListener(event: "connect", listener: (session: ClientHttp2Session, socket: net.Socket | tls.TLSSocket) => void): this;
prependOnceListener(event: "stream", listener: (stream: ClientHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void): this;
}
export interface AlternativeServiceOptions {
origin: number | string | url.URL;
}
export interface ServerHttp2Session extends Http2Session {
altsvc(alt: string, originOrStream: number | string | url.URL | AlternativeServiceOptions): void;
readonly server: Http2Server | Http2SecureServer;
addListener(event: string, listener: (...args: any[]) => void): this;
@@ -6527,93 +6528,93 @@ declare module "http2" {
export interface Http2Server extends net.Server {
addListener(event: string, listener: (...args: any[]) => void): this;
addListener(event: "checkContinue", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
addListener(event: "request", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
addListener(event: "sessionError", listener: (err: Error) => void): this;
addListener(event: "socketError", listener: (err: Error) => void): this;
addListener(event: "stream", listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void): this;
addListener(event: "timeout", listener: () => void): this;
emit(event: string | symbol, ...args: any[]): boolean;
emit(event: "checkContinue", request: Http2ServerRequest, response: Http2ServerResponse): boolean;
emit(event: "request", request: Http2ServerRequest, response: Http2ServerResponse): boolean;
emit(event: "sessionError", err: Error): boolean;
emit(event: "socketError", err: Error): boolean;
emit(event: "stream", stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number): boolean;
emit(event: "timeout"): boolean;
on(event: string, listener: (...args: any[]) => void): this;
on(event: "checkContinue", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
on(event: "request", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
on(event: "sessionError", listener: (err: Error) => void): this;
on(event: "socketError", listener: (err: Error) => void): this;
on(event: "stream", listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void): this;
on(event: "timeout", listener: () => void): this;
once(event: string, listener: (...args: any[]) => void): this;
once(event: "checkContinue", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
once(event: "request", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
once(event: "sessionError", listener: (err: Error) => void): this;
once(event: "socketError", listener: (err: Error) => void): this;
once(event: "stream", listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void): this;
once(event: "timeout", listener: () => void): this;
prependListener(event: string, listener: (...args: any[]) => void): this;
prependListener(event: "checkContinue", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
prependListener(event: "request", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
prependListener(event: "sessionError", listener: (err: Error) => void): this;
prependListener(event: "socketError", listener: (err: Error) => void): this;
prependListener(event: "stream", listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void): this;
prependListener(event: "timeout", listener: () => void): this;
prependOnceListener(event: string, listener: (...args: any[]) => void): this;
prependOnceListener(event: "checkContinue", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
prependOnceListener(event: "request", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
prependOnceListener(event: "sessionError", listener: (err: Error) => void): this;
prependOnceListener(event: "socketError", listener: (err: Error) => void): this;
prependOnceListener(event: "stream", listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void): this;
prependOnceListener(event: "timeout", listener: () => void): this;
}
export interface Http2SecureServer extends tls.Server {
addListener(event: string, listener: (...args: any[]) => void): this;
addListener(event: "checkContinue", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
addListener(event: "request", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
addListener(event: "sessionError", listener: (err: Error) => void): this;
addListener(event: "socketError", listener: (err: Error) => void): this;
addListener(event: "stream", listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void): this;
addListener(event: "timeout", listener: () => void): this;
addListener(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this;
emit(event: string | symbol, ...args: any[]): boolean;
emit(event: "checkContinue", request: Http2ServerRequest, response: Http2ServerResponse): boolean;
emit(event: "request", request: Http2ServerRequest, response: Http2ServerResponse): boolean;
emit(event: "sessionError", err: Error): boolean;
emit(event: "socketError", err: Error): boolean;
emit(event: "stream", stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number): boolean;
emit(event: "timeout"): boolean;
emit(event: "unknownProtocol", socket: tls.TLSSocket): boolean;
on(event: string, listener: (...args: any[]) => void): this;
on(event: "checkContinue", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
on(event: "request", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
on(event: "sessionError", listener: (err: Error) => void): this;
on(event: "socketError", listener: (err: Error) => void): this;
on(event: "stream", listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void): this;
on(event: "timeout", listener: () => void): this;
on(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this;
once(event: string, listener: (...args: any[]) => void): this;
once(event: "checkContinue", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
once(event: "request", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
once(event: "sessionError", listener: (err: Error) => void): this;
once(event: "socketError", listener: (err: Error) => void): this;
once(event: "stream", listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void): this;
once(event: "timeout", listener: () => void): this;
once(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this;
prependListener(event: string, listener: (...args: any[]) => void): this;
prependListener(event: "checkContinue", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
prependListener(event: "request", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
prependListener(event: "sessionError", listener: (err: Error) => void): this;
prependListener(event: "socketError", listener: (err: Error) => void): this;
prependListener(event: "stream", listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void): this;
prependListener(event: "timeout", listener: () => void): this;
prependListener(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this;
prependOnceListener(event: string, listener: (...args: any[]) => void): this;
prependOnceListener(event: "checkContinue", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
prependOnceListener(event: "request", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
prependOnceListener(event: "sessionError", listener: (err: Error) => void): this;
prependOnceListener(event: "socketError", listener: (err: Error) => void): this;
prependOnceListener(event: "stream", listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void): this;
prependOnceListener(event: "timeout", listener: () => void): this;
prependOnceListener(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this;
+22 -21
View File
@@ -3373,16 +3373,22 @@ namespace http2_tests {
http2Session.on('localSettings', (settings: http2.Settings) => {});
http2Session.on('remoteSettings', (settings: http2.Settings) => {});
http2Session.on('stream', (stream: http2.Http2Stream, headers: http2.IncomingHttpHeaders, flags: number) => {});
http2Session.on('socketError', (err: Error) => {});
http2Session.on('timeout', () => {});
http2Session.destroy();
let alpnProtocol: string = http2Session.alpnProtocol;
let destroyed: boolean = http2Session.destroyed;
let encrypted: boolean = http2Session.encrypted;
let originSet: string[] = http2Session.originSet;
let pendingSettingsAck: boolean = http2Session.pendingSettingsAck;
let settings: http2.Settings = http2Session.localSettings;
let closed: boolean = http2Session.closed;
settings = http2Session.remoteSettings;
http2Session.ref();
http2Session.unref();
let headers: http2.OutgoingHttpHeaders;
let options: http2.ClientSessionRequestOptions = {
endStream: true,
@@ -3400,16 +3406,7 @@ namespace http2_tests {
http2Session.rstStream(stream, 0);
http2Session.setTimeout(100, () => {});
let shutdownOptions: http2.SessionShutdownOptions = {
graceful: true,
errorCode: 0,
lastStreamID: 0,
opaqueData: Buffer.from([])
};
shutdownOptions.opaqueData = Uint8Array.from([]);
http2Session.shutdown(shutdownOptions);
http2Session.shutdown(shutdownOptions, () => {});
http2Session.close(() => {});
let socket: net.Socket | tls.TLSSocket = http2Session.socket;
let state: http2.SessionState = http2Session.state;
@@ -3448,7 +3445,9 @@ namespace http2_tests {
http2Stream.on('trailers', (trailers: http2.IncomingHttpHeaders, flags: number) => {});
let aborted: boolean = http2Stream.aborted;
let closed: boolean = http2Stream.closed;
let destroyed: boolean = http2Stream.destroyed;
let pending: boolean = http2Stream.pending;
http2Stream.priority({
exclusive: true,
@@ -3457,14 +3456,6 @@ namespace http2_tests {
silent: true
});
let rstCode: number = http2Stream.rstCode;
http2Stream.rstStream(rstCode);
http2Stream.rstWithNoError();
http2Stream.rstWithProtocolError();
http2Stream.rstWithCancel();
http2Stream.rstWithRefuse();
http2Stream.rstWithInternalError();
let sesh: http2.Http2Session = http2Stream.session;
http2Stream.setTimeout(100, () => {});
@@ -3492,7 +3483,7 @@ namespace http2_tests {
serverHttp2Stream.additionalHeaders(headers);
let headerSent: boolean = serverHttp2Stream.headersSent;
let pushAllowed: boolean = serverHttp2Stream.pushAllowed;
serverHttp2Stream.pushStream(headers, (pushStream: http2.ServerHttp2Stream) => {});
serverHttp2Stream.pushStream(headers, (err: Error | null, pushStream: http2.ServerHttp2Stream, headers: http2.OutgoingHttpHeaders) => {});
let options: http2.ServerStreamResponseOptions = {
endStream: true,
@@ -3533,7 +3524,7 @@ namespace http2_tests {
let s2: tls.Server = http2SecureServer;
[http2Server, http2SecureServer].forEach((server) => {
server.on('sessionError', (err: Error) => {});
server.on('socketError', (err: Error) => {});
server.on('checkContinue', (stream: http2.ServerHttp2Stream, headers: http2.IncomingHttpHeaders, flags: number) => {});
server.on('stream', (stream: http2.ServerHttp2Stream, headers: http2.IncomingHttpHeaders, flags: number) => {});
server.on('request', (request: http2.Http2ServerRequest, response: http2.Http2ServerResponse) => {});
server.on('timeout', () => {});
@@ -3658,6 +3649,15 @@ namespace http2_tests {
secureClientSessionOptions.ca = '';
let onConnectHandler = (session: http2.Http2Session, socket: net.Socket) => {};
let serverHttp2Session: http2.ServerHttp2Session;
serverHttp2Session.altsvc('', '');
serverHttp2Session.altsvc('', 0);
serverHttp2Session.altsvc('', new url.URL(''));
serverHttp2Session.altsvc('', { origin: '' });
serverHttp2Session.altsvc('', { origin: 0 });
serverHttp2Session.altsvc('', { origin: new url.URL('') });
let clientHttp2Session: http2.ClientHttp2Session;
clientHttp2Session = http2.connect('');
@@ -3666,6 +3666,7 @@ namespace http2_tests {
clientHttp2Session = http2.connect('', clientSessionOptions, onConnectHandler);
clientHttp2Session = http2.connect('', secureClientSessionOptions);
clientHttp2Session = http2.connect('', secureClientSessionOptions, onConnectHandler);
clientHttp2Session.on('altsvc', (alt: string, origin: string, number: number) => {});
settings = http2.getDefaultSettings();
settings = http2.getPackedSettings(settings);