lazzy.ts
Version:
Fast and lightweight library for lazy operations with iterable objects.
21 lines • 591 B
TypeScript
declare const closedSymbol: unique symbol;
export interface Closed {
[closedSymbol]: boolean;
}
export declare const CLOSED: Closed;
export declare function isClosed<T>(value: T | Closed): value is Closed;
export declare class Channel<T> {
#private;
constructor(...source: T[]);
private closeChannel;
close(): void;
forceClose(): void;
whenClosed(): Promise<void>;
isClosed(): boolean;
isRequestedForClose(): boolean;
reopen(): void;
put(value: T): Promise<void>;
take(): Promise<T | Closed>;
}
export {};
//# sourceMappingURL=channel.d.ts.map