///
import * as stream from "stream";
export = transform
// transform([records], [options], handler, [callback])
declare function transform(handler: transform.Handler, callback?: transform.Callback): transform.Transformer
declare function transform(records: Array, handler: transform.Handler, callback?: transform.Callback): transform.Transformer
declare function transform(options: transform.Options, handler: transform.Handler, callback?: transform.Callback): transform.Transformer
declare function transform(records: Array, options: transform.Options, handler: transform.Handler, callback?: transform.Callback): transform.Transformer
declare namespace transform {
type Handler = (record: T, callback: HandlerCallback, params?: any) => U
type HandlerCallback = (err?: null | Error, record?: T) => void
type Callback = (err?: null | Error, output?: string) => void
interface Options {
/**
* In the absence of a consumer, like a `stream.Readable`, trigger the consumption of the stream.
*/
consume?: boolean
/**
* The number of transformation callbacks to run in parallel; only apply with asynchronous handlers; default to "100".
*/
parallel?: number
/**
* Pass user defined parameters to the user handler as last argument.
*/
params?: any
}
interface State {
finished: number
running: number
started: number
}
class Transformer extends stream.Transform {
constructor(options: Options)
readonly options: Options
readonly state: State
}
}