Add type definitions for parallel-transform. (#27312)

This commit is contained in:
Daniel Cassidy 2018-07-23 16:57:00 +01:00 committed by Andy
parent 04a282b63f
commit ff8d26ef8e
4 changed files with 70 additions and 0 deletions

27
types/parallel-transform/index.d.ts vendored Normal file
View File

@ -0,0 +1,27 @@
// Type definitions for parallel-transform 1.1
// Project: https://github.com/mafintosh/parallel-transform
// Definitions by: Daniel Cassidy <https://github.com/djcsdy>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
/// <reference types="node"/>
import { Transform, TransformOptions, TransformCallback } from "stream";
type OnTransform = (chunk: any, callback: TransformCallback) => void;
declare namespace ParallelTransform {
interface Options extends TransformOptions {
ordered?: boolean;
}
}
declare const ParallelTransform: {
(maxParallel: number, opts: ParallelTransform.Options | undefined | null, ontransform: OnTransform): Transform;
(opts: ParallelTransform.Options | number | undefined | null, ontransform: OnTransform): Transform;
(ontransform: OnTransform): Transform;
new(maxParallel: number, opts: ParallelTransform.Options | undefined | null, ontransform: OnTransform): Transform;
new(opts: ParallelTransform.Options | number | undefined | null, ontransform: OnTransform): Transform;
new(ontransform: OnTransform): Transform;
};
export = ParallelTransform;

View File

@ -0,0 +1,19 @@
import transform = require("parallel-transform");
let stream = transform(10, (data, callback) => {
setTimeout(() => callback(undefined, data), Math.random() * 1000);
});
stream.write("1");
stream.write("2");
stream.write("3");
stream.write("4");
stream.end();
stream.on("data", data => console.log(data.toString()));
stream.on("end", () => "end of stream");
stream = transform(10, { objectMode: false },
(data, callback) => callback(undefined, data));
stream = transform({ ordered: false }, (data, callback) => callback(new Error("fail"), null));

View File

@ -0,0 +1,23 @@
{
"compilerOptions": {
"module": "commonjs",
"lib": [
"es6"
],
"noImplicitAny": true,
"noImplicitThis": true,
"strictNullChecks": true,
"strictFunctionTypes": true,
"baseUrl": "../",
"typeRoots": [
"../"
],
"types": [],
"noEmit": true,
"forceConsistentCasingInFileNames": true
},
"files": [
"index.d.ts",
"parallel-transform-tests.ts"
]
}

View File

@ -0,0 +1 @@
{ "extends": "dtslint/dt.json" }