import { ResourceBase } from '../resource' ; import { Value , List } from '../dataTypes' ; export class SelfManagedEventSource { Endpoints ? : Endpoints ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class OnFailure { Destination ? : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class SourceAccessConfiguration { Type ? : Value < string > ; URI ? : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class Endpoints { KafkaBootstrapServers ? : List < Value < string > > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class DestinationConfig { OnFailure ? : OnFailure ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export interface EventSourceMappingProperties { BatchSize ? : Value < number > ; BisectBatchOnFunctionError ? : Value < boolean > ; DestinationConfig ? : DestinationConfig ; Enabled ? : Value < boolean > ; EventSourceArn ? : Value < string > ; FunctionName : Value < string > ; MaximumBatchingWindowInSeconds ? : Value < number > ; MaximumRecordAgeInSeconds ? : Value < number > ; MaximumRetryAttempts ? : Value < number > ; ParallelizationFactor ? : Value < number > ; StartingPosition ? : Value < string > ; Topics ? : List < Value < string > > ; Queues ? : List < Value < string > > ; SourceAccessConfigurations ? : List < SourceAccessConfiguration > ; TumblingWindowInSeconds ? : Value < number > ; FunctionResponseTypes ? : List < Value < string > > ; SelfManagedEventSource ? : SelfManagedEventSource ; } export default class EventSourceMapping extends ResourceBase < EventSourceMappingProperties > { static SelfManagedEventSource = SelfManagedEventSource ; static OnFailure = OnFailure ; static SourceAccessConfiguration = SourceAccessConfiguration ; static Endpoints = Endpoints ; static DestinationConfig = DestinationConfig ; constructor ( properties ) { super ( 'AWS::Lambda::EventSourceMapping' , properties ) ; } }