Installation
npm install --save @types/klaw
Summary
This package contains type definitions for klaw (https://github.com/jprichardson/node-klaw).
Details
Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/klaw.
declare module "klaw" {
import * as fs from "fs";
import { Readable, ReadableOptions } from "stream";
global {
interface AsyncIteratorObject<T, TReturn, TNext> {}
}
interface StreamIterator<T> extends AsyncIterator<T, any, any>, AsyncIteratorObject<T, any, any> {
[Symbol.asyncIterator](): StreamIterator<T>;
}
function K(root: string, options?: K.Options): K.Walker;
namespace K {
interface Item {
path: string;
stats: fs.Stats;
}
type QueueMethod = "shift" | "pop";
interface Options extends ReadableOptions {
queueMethod?: QueueMethod | undefined;
pathSorter?: ((pathA: string, pathB: string) => number) | undefined;
fs?: any;
filter?: ((path: string) => boolean) | undefined;
depthLimit?: number | undefined;
preserveSymlinks?: boolean | undefined;
}
type Event = "close" | "data" | "end" | "error" | "pause" | "readable" | "resume";
interface Walker extends Readable, AsyncIterable<Item> {
on(event: Event, listener: Function): this;
on(event: "close", listener: () => void): this;
on(event: "data", listener: (item: Item) => void): this;
on(event: "end", listener: () => void): this;
on(event: "readable", listener: () => void): this;
on(event: "error", listener: (err: Error) => void): this;
read(): Item;
[Symbol.asyncIterator](): StreamIterator<Item>;
}
}
export = K;
}
Additional Details
- Last updated: Mon, 02 Jun 2025 15:36:26 GMT
- Dependencies: @types/node
Credits
These definitions were written by Matthew McEachen, and Pascal Sthamer.