Skip to content

Commit 880d42b

Browse files
authored
feat(node/stream): add 2nd options param to Readable.toWeb() (DefinitelyTyped#71851)
1 parent 768defe commit 880d42b

File tree

6 files changed

+81
-3
lines changed

6 files changed

+81
-3
lines changed

types/node/stream.d.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -981,7 +981,12 @@ declare module "stream" {
981981
* @since v17.0.0
982982
* @experimental
983983
*/
984-
static toWeb(streamReadable: Readable): streamWeb.ReadableStream;
984+
static toWeb(
985+
streamReadable: Readable,
986+
options?: {
987+
strategy?: streamWeb.QueuingStrategy | undefined;
988+
},
989+
): streamWeb.ReadableStream;
985990
}
986991
interface WritableOptions extends StreamOptions<Writable> {
987992
decodeStrings?: boolean | undefined;

types/node/test/stream.ts

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -584,8 +584,29 @@ addAbortSignal(new AbortSignal(), new Readable());
584584

585585
{
586586
const readable = new Readable();
587+
587588
// $ExpectType ReadableStream<any>
588589
Readable.toWeb(readable);
590+
591+
// $ExpectType ReadableStream<any>
592+
Readable.toWeb(readable, {});
593+
594+
// $ExpectType ReadableStream<any>
595+
Readable.toWeb(readable, { strategy: {} });
596+
597+
// $ExpectType ReadableStream<any>
598+
Readable.toWeb(readable, {
599+
strategy: {
600+
highWaterMark: 3,
601+
602+
size(chunk) {
603+
// $ExpectType any
604+
chunk;
605+
606+
return -1;
607+
},
608+
},
609+
});
589610
}
590611

591612
{

types/node/v18/stream.d.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,12 @@ declare module "stream" {
8686
* @since v17.0.0
8787
* @experimental
8888
*/
89-
static toWeb(streamReadable: Readable): streamWeb.ReadableStream;
89+
static toWeb(
90+
streamReadable: Readable,
91+
options?: {
92+
strategy?: streamWeb.QueuingStrategy | undefined;
93+
},
94+
): streamWeb.ReadableStream;
9095
/**
9196
* Returns whether the stream was destroyed or errored before emitting `'end'`.
9297
* @since v16.8.0

types/node/v18/test/stream.ts

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -571,8 +571,29 @@ addAbortSignal(new AbortSignal(), new Readable());
571571

572572
{
573573
const readable = new Readable();
574+
574575
// $ExpectType ReadableStream<any>
575576
Readable.toWeb(readable);
577+
578+
// $ExpectType ReadableStream<any>
579+
Readable.toWeb(readable, {});
580+
581+
// $ExpectType ReadableStream<any>
582+
Readable.toWeb(readable, { strategy: {} });
583+
584+
// $ExpectType ReadableStream<any>
585+
Readable.toWeb(readable, {
586+
strategy: {
587+
highWaterMark: 3,
588+
589+
size(chunk) {
590+
// $ExpectType any
591+
chunk;
592+
593+
return -1;
594+
},
595+
},
596+
});
576597
}
577598

578599
{

types/node/v20/stream.d.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -981,7 +981,12 @@ declare module "stream" {
981981
* @since v17.0.0
982982
* @experimental
983983
*/
984-
static toWeb(streamReadable: Readable): streamWeb.ReadableStream;
984+
static toWeb(
985+
streamReadable: Readable,
986+
options?: {
987+
strategy?: streamWeb.QueuingStrategy | undefined;
988+
},
989+
): streamWeb.ReadableStream;
985990
}
986991
interface WritableOptions extends StreamOptions<Writable> {
987992
decodeStrings?: boolean | undefined;

types/node/v20/test/stream.ts

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -584,8 +584,29 @@ addAbortSignal(new AbortSignal(), new Readable());
584584

585585
{
586586
const readable = new Readable();
587+
587588
// $ExpectType ReadableStream<any>
588589
Readable.toWeb(readable);
590+
591+
// $ExpectType ReadableStream<any>
592+
Readable.toWeb(readable, {});
593+
594+
// $ExpectType ReadableStream<any>
595+
Readable.toWeb(readable, { strategy: {} });
596+
597+
// $ExpectType ReadableStream<any>
598+
Readable.toWeb(readable, {
599+
strategy: {
600+
highWaterMark: 3,
601+
602+
size(chunk) {
603+
// $ExpectType any
604+
chunk;
605+
606+
return -1;
607+
},
608+
},
609+
});
589610
}
590611

591612
{

0 commit comments

Comments
 (0)