1 | import { CommonLogger, ErrorMode, Mapper, Predicate } from '@naturalcycles/js-lib';
|
2 | import { AbortableTransform } from '../pipeline/pipeline';
|
3 | import { TransformTyped } from '../stream.model';
|
4 | export interface TransformMapSyncOptions<IN = any, OUT = IN> {
|
5 | /**
|
6 | * @default true
|
7 | */
|
8 | objectMode?: boolean;
|
9 | /**
|
10 | * @default false
|
11 | * Set true to support "multiMap" - possibility to return [] and emit 1 result for each item in the array.
|
12 | */
|
13 | flattenArrayOutput?: boolean;
|
14 | /**
|
15 | * Predicate to filter outgoing results (after mapper).
|
16 | * Allows to not emit all results.
|
17 | *
|
18 | * Defaults to "pass everything".
|
19 | * Simpler way to skip individual entries is to return SKIP symbol.
|
20 | */
|
21 | predicate?: Predicate<OUT>;
|
22 | /**
|
23 | * @default THROW_IMMEDIATELY
|
24 | */
|
25 | errorMode?: ErrorMode;
|
26 | /**
|
27 | * If defined - will be called on every error happening in the stream.
|
28 | * Called BEFORE observable will emit error (unless skipErrors is set to true).
|
29 | */
|
30 | onError?(err: Error, input: IN): any;
|
31 | /**
|
32 | * Progress metric
|
33 | *
|
34 | * @default `stream`
|
35 | */
|
36 | metric?: string;
|
37 | logger?: CommonLogger;
|
38 | }
|
39 | export declare class TransformMapSync extends AbortableTransform {
|
40 | }
|
41 | /**
|
42 | * Sync (not async) version of transformMap.
|
43 | * Supposedly faster, for cases when async is not needed.
|
44 | */
|
45 | export declare function transformMapSync<IN = any, OUT = IN>(mapper: Mapper<IN, OUT>, opt?: TransformMapSyncOptions): TransformTyped<IN, OUT>;
|