import { ResourceBase } from '../resource' ; import { Value , List } from '../dataTypes' ; export class Source { Owner ! : Value < string > ; SourceDetails ? : List < SourceDetail > ; SourceIdentifier ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class Scope { ComplianceResourceId ? : Value < string > ; ComplianceResourceTypes ? : List < Value < string > > ; TagKey ? : Value < string > ; TagValue ? : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class SourceDetail { EventSource ! : Value < string > ; MaximumExecutionFrequency ? : Value < string > ; MessageType ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export interface ConfigRuleProperties { ConfigRuleName ? : Value < string > ; Description ? : Value < string > ; InputParameters ? : { [ key ] : any ; } ; MaximumExecutionFrequency ? : Value < string > ; Scope ? : Scope ; Source : Source ; } export default class ConfigRule extends ResourceBase < ConfigRuleProperties > { static Source = Source ; static Scope = Scope ; static SourceDetail = SourceDetail ; constructor ( properties ) { super ( 'AWS::Config::ConfigRule' , properties ) ; } }