import { ResourceBase , ResourceTag } from '../resource' ; import { Value , List } from '../dataTypes' ; export class AddThingsToThingGroupParams { OverrideDynamicGroups ? : Value < boolean > ; ThingGroupNames ! : List < Value < string > > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class UpdateCACertificateParams { Action ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class UpdateDeviceCertificateParams { Action ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class ReplaceDefaultPolicyVersionParams { TemplateName ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class EnableIoTLoggingParams { LogLevel ! : Value < string > ; RoleArnForLogging ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class ActionParams { AddThingsToThingGroupParams ? : AddThingsToThingGroupParams ; EnableIoTLoggingParams ? : EnableIoTLoggingParams ; PublishFindingToSnsParams ? : PublishFindingToSnsParams ; ReplaceDefaultPolicyVersionParams ? : ReplaceDefaultPolicyVersionParams ; UpdateCACertificateParams ? : UpdateCACertificateParams ; UpdateDeviceCertificateParams ? : UpdateDeviceCertificateParams ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class PublishFindingToSnsParams { TopicArn ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export interface MitigationActionProperties { ActionName ? : Value < string > ; RoleArn : Value < string > ; Tags ? : List < ResourceTag > ; ActionParams : ActionParams ; } export default class MitigationAction extends ResourceBase < MitigationActionProperties > { static AddThingsToThingGroupParams = AddThingsToThingGroupParams ; static UpdateCACertificateParams = UpdateCACertificateParams ; static UpdateDeviceCertificateParams = UpdateDeviceCertificateParams ; static ReplaceDefaultPolicyVersionParams = ReplaceDefaultPolicyVersionParams ; static EnableIoTLoggingParams = EnableIoTLoggingParams ; static ActionParams = ActionParams ; static PublishFindingToSnsParams = PublishFindingToSnsParams ; constructor ( properties ) { super ( 'AWS::IoT::MitigationAction' , properties ) ; } }