import { ResourceBase , ResourceTag } from '../resource' ; import { Value , List } from '../dataTypes' ; export class Logging { S3Logs ? : S3Logs ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class S3Logs { S3BucketName ? : Value < string > ; S3KeyPrefix ? : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export interface InfrastructureConfigurationProperties { Name : Value < string > ; Description ? : Value < string > ; InstanceTypes ? : List < Value < string > > ; SecurityGroupIds ? : List < Value < string > > ; Logging ? : Logging ; SubnetId ? : Value < string > ; KeyPair ? : Value < string > ; TerminateInstanceOnFailure ? : Value < boolean > ; InstanceProfileName : Value < string > ; SnsTopicArn ? : Value < string > ; ResourceTags ? : { [ key ] : Value < string > ; } ; Tags ? : { [ key ] : Value < string > ; } ; } export default class InfrastructureConfiguration extends ResourceBase < InfrastructureConfigurationProperties > { static Logging = Logging ; static S3Logs = S3Logs ; constructor ( properties ) { super ( 'AWS::ImageBuilder::InfrastructureConfiguration' , properties ) ; } }