UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

49 lines (48 loc) 1.82 kB
import type { Construct } from 'constructs'; import type { DataProcessorBindOptions, DataProcessorConfig, DataProcessorProps, IDataProcessor } from '../processor'; /** * Props for RecordDeAggregationProcessor */ export interface RecordDeAggregationProcessorOptions { /** * The sub-record type to deaggregate input records. */ readonly subRecordType: SubRecordType; /** * The custom delimiter when subRecordType is DELIMITED. Must be specified in the base64-encoded format. * @default - No delimiter */ readonly delimiter?: string; } /** * The sub-record type to deaggregate input records. */ export declare enum SubRecordType { /** The records are JSON objects on a single line with no delimiter or newline-delimited (JSONL). */ JSON = "JSON", /** The records are delimited by a custom delimiter. */ DELIMITED = "DELIMITED" } /** * The data processor for multi record deaggrecation. * * Record deaggregation by JSON or by delimiter is capped at 500 per record. * * @see https://docs.aws.amazon.com/firehose/latest/dev/dynamic-partitioning-multirecord-deaggergation.html */ export declare class RecordDeAggregationProcessor implements IDataProcessor { private readonly options; /** * Perform deaggregation from JSON objects on a single line with no delimiter or newline-delimited (JSONL). */ static json(): RecordDeAggregationProcessor; /** * Perform deaggregation based on a specified custom delimiter. * * @param delimiter The custom delimiter. */ static delimited(delimiter: string): RecordDeAggregationProcessor; readonly props: DataProcessorProps; constructor(options: RecordDeAggregationProcessorOptions); bind(scope: Construct, options: DataProcessorBindOptions): DataProcessorConfig; }