mirror of
https://github.com/FlipsideCrypto/DefinitelyTyped.git
synced 2026-02-06 10:56:53 +00:00
Improve cloneable-readable types (#35452)
* Improve cloneable-readable types * Fix up formatting
This commit is contained in:
parent
8dfd127a63
commit
5ba986198d
@ -9,3 +9,7 @@ process.stdin.pipe(cl).pipe(process.stdout);
|
||||
|
||||
cloneable.isCloneable(ps); // $ExpectType boolean
|
||||
cloneable.isCloneable(cl); // $ExpectType boolean
|
||||
|
||||
if (cloneable.isCloneable(ps)) {
|
||||
ps; // $ExpectType PassThrough & Readable & { clone(): Cloneable<Readable>; }
|
||||
}
|
||||
|
||||
16
types/cloneable-readable/index.d.ts
vendored
16
types/cloneable-readable/index.d.ts
vendored
@ -1,6 +1,7 @@
|
||||
// Type definitions for cloneable-readable 1.1
|
||||
// Type definitions for cloneable-readable 2.0
|
||||
// Project: https://github.com/mcollina/cloneable-readable#readme
|
||||
// Definitions by: Nikita Volodin <https://github.com/qlonik>
|
||||
// Oleg Vaskevich <https://github.com/vaskevich>
|
||||
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
|
||||
// TypeScript Version: 2.2
|
||||
|
||||
@ -8,10 +9,15 @@
|
||||
|
||||
import { Readable } from 'stream';
|
||||
|
||||
type Cloneable<T> = T & { clone(): Cloneable<T> };
|
||||
interface CloneableFn {
|
||||
<T extends Readable>(x: T): Cloneable<T>;
|
||||
isCloneable(x: Readable): boolean;
|
||||
declare namespace cloneable {
|
||||
type Cloneable<T extends Readable> = T & { clone(): Cloneable<T> };
|
||||
}
|
||||
|
||||
interface CloneableFn {
|
||||
<T extends Readable>(x: T): cloneable.Cloneable<T>;
|
||||
isCloneable(x: Readable): x is cloneable.Cloneable<Readable>;
|
||||
}
|
||||
|
||||
declare const cloneable: CloneableFn;
|
||||
|
||||
export = cloneable;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user