173 lines
5.1 KiB
TypeScript
173 lines
5.1 KiB
TypeScript
import * as iam from '../../../../aws-iam';
|
|
import type { IBucket } from '../../../../aws-s3';
|
|
import { QueryLanguage } from '../../types';
|
|
/**
|
|
* Interface for Result Writer configuration props
|
|
* @deprecated use {@link ResultWriterV2Props} instead
|
|
*/
|
|
export interface ResultWriterProps {
|
|
/**
|
|
* S3 Bucket in which to save Map Run results
|
|
*/
|
|
readonly bucket: IBucket;
|
|
/**
|
|
* S3 prefix in which to save Map Run results
|
|
*
|
|
* @default - No prefix
|
|
*/
|
|
readonly prefix?: string;
|
|
}
|
|
/**
|
|
* Interface for Result Writer configuration props
|
|
*/
|
|
export interface ResultWriterV2Props {
|
|
/**
|
|
* S3 Bucket in which to save Map Run results
|
|
* @default - specify a bucket
|
|
*/
|
|
readonly bucket?: IBucket;
|
|
/**
|
|
* S3 bucket name in which to save Map Run results, as JsonPath
|
|
*
|
|
* @default - no bucket path
|
|
*/
|
|
readonly bucketNamePath?: string;
|
|
/**
|
|
* S3 prefix in which to save Map Run results
|
|
*
|
|
* @default - No prefix
|
|
*/
|
|
readonly prefix?: string;
|
|
/**
|
|
* Configuration to format the output of the Child Workflow executions
|
|
*
|
|
* @default - Specify both Transformation and OutputType
|
|
*/
|
|
readonly writerConfig?: WriterConfig;
|
|
}
|
|
/**
|
|
* The transformation to be applied to the Output of the Child Workflow executions
|
|
*/
|
|
export declare enum Transformation {
|
|
/**
|
|
* Returns the output of the child workflow executions unchanged, in addition to the workflow metadata.
|
|
* Default when exporting the child workflow execution results to Amazon S3 and WriterConfig is not specified.
|
|
*/
|
|
NONE = "NONE",
|
|
/**
|
|
* Returns the output of the child workflow executions. Default when ResultWriter is not specified.
|
|
*/
|
|
COMPACT = "COMPACT",
|
|
/**
|
|
* Returns the output of the child workflow executions.
|
|
* If a child workflow execution returns an array,this option flattens the array,
|
|
* prior to returning the result to a state output or writing the result to an Amazon S3 object.
|
|
*/
|
|
FLATTEN = "FLATTEN"
|
|
}
|
|
/**
|
|
* The format of the Output of the child workflow executions
|
|
*/
|
|
export declare enum OutputType {
|
|
/**
|
|
* Formats the results as a JSON array
|
|
*/
|
|
JSON = "JSON",
|
|
/**
|
|
* Formats the results as JSON Lines
|
|
*/
|
|
JSONL = "JSONL"
|
|
}
|
|
/**
|
|
* Interface for Writer Config props
|
|
*/
|
|
export interface WriterConfigProps {
|
|
/**
|
|
* The transformation to be applied to the Output of the Child Workflow executions
|
|
*/
|
|
readonly transformation: Transformation;
|
|
/**
|
|
* The format of the Output of the child workflow executions
|
|
*/
|
|
readonly outputType: OutputType;
|
|
}
|
|
/**
|
|
* Configuration to format the output
|
|
*/
|
|
export declare class WriterConfig {
|
|
/**
|
|
* The transformation to be applied to the Output of the Child Workflow executions
|
|
*/
|
|
readonly transformation: Transformation;
|
|
/**
|
|
* The format of the Output of the child workflow executions
|
|
*/
|
|
readonly outputType: OutputType;
|
|
constructor(props: WriterConfigProps);
|
|
}
|
|
/**
|
|
* Configuration for writing Distributed Map state results to S3
|
|
* @deprecated use {@link ResultWriterV2} instead
|
|
*/
|
|
export declare class ResultWriter {
|
|
/**
|
|
* S3 Bucket in which to save Map Run results
|
|
*/
|
|
readonly bucket: IBucket;
|
|
/**
|
|
* S3 prefix in which to save Map Run results
|
|
*
|
|
* @default - No prefix
|
|
*/
|
|
readonly prefix?: string;
|
|
constructor(props: ResultWriterProps);
|
|
/**
|
|
* Render ResultWriter in ASL JSON format
|
|
*/
|
|
render(queryLanguage?: QueryLanguage): any;
|
|
/**
|
|
* Compile policy statements to provide relevent permissions to the state machine
|
|
*/
|
|
providePolicyStatements(): iam.PolicyStatement[];
|
|
}
|
|
/**
|
|
* Configuration for writing Distributed Map state results to S3
|
|
* The ResultWriter field cannot be empty. You must specify one of these sets of sub-fields.
|
|
* writerConfig - to preview the formatted output, without saving the results to Amazon S3.
|
|
* bucket and prefix - to save the results to Amazon S3 without additional formatting.
|
|
* All three fields: writerConfig, bucket and prefix - to format the output and save it to Amazon S3.
|
|
*/
|
|
export declare class ResultWriterV2 {
|
|
/**
|
|
* S3 Bucket in which to save Map Run results
|
|
*/
|
|
readonly bucket?: IBucket;
|
|
/**
|
|
* S3 bucket name in which to save Map Run results, as JsonPath
|
|
*/
|
|
readonly bucketNamePath?: string;
|
|
/**
|
|
* S3 prefix in which to save Map Run results
|
|
*
|
|
* @default - No prefix
|
|
*/
|
|
readonly prefix?: string;
|
|
/**
|
|
* Configuration to format the output of the Child Workflow executions
|
|
*/
|
|
readonly writerConfig?: WriterConfig;
|
|
constructor(props: ResultWriterV2Props);
|
|
/**
|
|
* Render ResultWriter in ASL JSON format
|
|
*/
|
|
render(queryLanguage?: QueryLanguage): any;
|
|
/**
|
|
* Compile policy statements to provide relevent permissions to the state machine
|
|
*/
|
|
providePolicyStatements(): iam.PolicyStatement[];
|
|
/**
|
|
* Validate that ResultWriter contains exactly either @see bucket or @see bucketNamePath
|
|
*/
|
|
validateResultWriter(): string[];
|
|
}
|