import { ResourceBase , ResourceTag } from '../resource' ; import { Value , List } from '../dataTypes' ; export class CustomArtifactConfiguration { MavenReference ? : MavenReference ; S3ContentLocation ? : S3ContentLocation ; ArtifactType ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class S3ContentLocation { BucketARN ? : Value < string > ; FileKey ? : Value < string > ; ObjectVersion ? : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class DeployAsApplicationConfiguration { S3ContentLocation ! : S3ContentBaseLocation ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class PropertyGroup { PropertyMap ? : { [ key ] : any ; } ; PropertyGroupId ? : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class MappingParameters { JSONMappingParameters ? : JSONMappingParameters ; CSVMappingParameters ? : CSVMappingParameters ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class InputParallelism { Count ? : Value < number > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class FlinkApplicationConfiguration { CheckpointConfiguration ? : CheckpointConfiguration ; ParallelismConfiguration ? : ParallelismConfiguration ; MonitoringConfiguration ? : MonitoringConfiguration ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class Input { NamePrefix ! : Value < string > ; InputSchema ! : InputSchema ; KinesisStreamsInput ? : KinesisStreamsInput ; KinesisFirehoseInput ? : KinesisFirehoseInput ; InputProcessingConfiguration ? : InputProcessingConfiguration ; InputParallelism ? : InputParallelism ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class ApplicationSnapshotConfiguration { SnapshotsEnabled ! : Value < boolean > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class KinesisFirehoseInput { ResourceARN ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class InputSchema { RecordEncoding ? : Value < string > ; RecordColumns ! : List < RecordColumn > ; RecordFormat ! : RecordFormat ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class ParallelismConfiguration { ConfigurationType ! : Value < string > ; ParallelismPerKPU ? : Value < number > ; AutoScalingEnabled ? : Value < boolean > ; Parallelism ? : Value < number > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class MonitoringConfiguration { ConfigurationType ! : Value < string > ; MetricsLevel ? : Value < string > ; LogLevel ? : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export type CustomArtifactsConfiguration = List < CustomArtifactConfiguration > ; export class SqlApplicationConfiguration { Inputs ? : List < Input > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class InputProcessingConfiguration { InputLambdaProcessor ? : InputLambdaProcessor ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class ApplicationCodeConfiguration { CodeContentType ! : Value < string > ; CodeContent ! : CodeContent ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class ZeppelinApplicationConfiguration { CatalogConfiguration ? : CatalogConfiguration ; MonitoringConfiguration ? : ZeppelinMonitoringConfiguration ; DeployAsApplicationConfiguration ? : DeployAsApplicationConfiguration ; CustomArtifactsConfiguration ? : CustomArtifactsConfiguration ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class MavenReference { ArtifactId ! : Value < string > ; Version ! : Value < string > ; GroupId ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class KinesisStreamsInput { ResourceARN ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class CheckpointConfiguration { ConfigurationType ! : Value < string > ; CheckpointInterval ? : Value < number > ; MinPauseBetweenCheckpoints ? : Value < number > ; CheckpointingEnabled ? : Value < boolean > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class ZeppelinMonitoringConfiguration { LogLevel ? : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class S3ContentBaseLocation { BucketARN ! : Value < string > ; BasePath ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class InputLambdaProcessor { ResourceARN ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class RecordColumn { Mapping ? : Value < string > ; SqlType ! : Value < string > ; Name ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class CSVMappingParameters { RecordRowDelimiter ! : Value < string > ; RecordColumnDelimiter ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class RecordFormat { MappingParameters ? : MappingParameters ; RecordFormatType ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class GlueDataCatalogConfiguration { DatabaseARN ? : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class JSONMappingParameters { RecordRowPath ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class CodeContent { ZipFileContent ? : Value < string > ; S3ContentLocation ? : S3ContentLocation ; TextContent ? : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class ApplicationConfiguration { ApplicationCodeConfiguration ? : ApplicationCodeConfiguration ; EnvironmentProperties ? : EnvironmentProperties ; FlinkApplicationConfiguration ? : FlinkApplicationConfiguration ; SqlApplicationConfiguration ? : SqlApplicationConfiguration ; ZeppelinApplicationConfiguration ? : ZeppelinApplicationConfiguration ; ApplicationSnapshotConfiguration ? : ApplicationSnapshotConfiguration ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class EnvironmentProperties { PropertyGroups ? : List < PropertyGroup > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class CatalogConfiguration { GlueDataCatalogConfiguration ? : GlueDataCatalogConfiguration ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export interface ApplicationProperties { ApplicationName ? : Value < string > ; RuntimeEnvironment : Value < string > ; ApplicationMode ? : Value < string > ; ApplicationConfiguration ? : ApplicationConfiguration ; ApplicationDescription ? : Value < string > ; Tags ? : List < ResourceTag > ; ServiceExecutionRole : Value < string > ; } export default class Application extends ResourceBase < ApplicationProperties > { static CustomArtifactConfiguration = CustomArtifactConfiguration ; static S3ContentLocation = S3ContentLocation ; static DeployAsApplicationConfiguration = DeployAsApplicationConfiguration ; static PropertyGroup = PropertyGroup ; static MappingParameters = MappingParameters ; static InputParallelism = InputParallelism ; static FlinkApplicationConfiguration = FlinkApplicationConfiguration ; static Input = Input ; static ApplicationSnapshotConfiguration = ApplicationSnapshotConfiguration ; static KinesisFirehoseInput = KinesisFirehoseInput ; static InputSchema = InputSchema ; static ParallelismConfiguration = ParallelismConfiguration ; static MonitoringConfiguration = MonitoringConfiguration ; static SqlApplicationConfiguration = SqlApplicationConfiguration ; static InputProcessingConfiguration = InputProcessingConfiguration ; static ApplicationCodeConfiguration = ApplicationCodeConfiguration ; static ZeppelinApplicationConfiguration = ZeppelinApplicationConfiguration ; static MavenReference = MavenReference ; static KinesisStreamsInput = KinesisStreamsInput ; static CheckpointConfiguration = CheckpointConfiguration ; static ZeppelinMonitoringConfiguration = ZeppelinMonitoringConfiguration ; static S3ContentBaseLocation = S3ContentBaseLocation ; static InputLambdaProcessor = InputLambdaProcessor ; static RecordColumn = RecordColumn ; static CSVMappingParameters = CSVMappingParameters ; static RecordFormat = RecordFormat ; static GlueDataCatalogConfiguration = GlueDataCatalogConfiguration ; static JSONMappingParameters = JSONMappingParameters ; static CodeContent = CodeContent ; static ApplicationConfiguration = ApplicationConfiguration ; static EnvironmentProperties = EnvironmentProperties ; static CatalogConfiguration = CatalogConfiguration ; constructor ( properties ) { super ( 'AWS::KinesisAnalyticsV2::Application' , properties ) ; } }