namespace Amazon.Lambda.ConfigEvents
{
using System;
///
/// AWS Config event
/// http://docs.aws.amazon.com/config/latest/developerguide/evaluate-config_develop-rules.html
/// http://docs.aws.amazon.com/config/latest/developerguide/evaluate-config_develop-rules_example-events.html
///
public class ConfigEvent
{
///
/// The ID of the AWS account that owns the rule.
///
public string AccountId { get; set; }
///
/// The ARN that AWS Config assigned to the rule.
///
public string ConfigRuleArn { get; set; }
///
/// The ID that AWS Config assigned to the rule.
///
public string ConfigRuleId { get; set; }
///
/// The name that you assigned to the rule that caused AWS Config
/// to publish the event and invoke the function.
///
public string ConfigRuleName { get; set; }
///
/// A Boolean value that indicates whether the AWS resource to be
/// evaluated has been removed from the rule's scope.
///
public bool EventLeftScope { get; set; }
///
/// The ARN of the IAM role that is assigned to AWS Config.
///
public string ExecutionRoleArn { get; set; }
///
/// If the event is published in response to a resource configuration
/// change, the value for this attribute is a string that contains
/// a JSON configuration item.
///
public string InvokingEvent { get; set; }
///
/// A token that the function must pass to AWS Config with the
/// PutEvaluations call.
///
public string ResultToken { get; set; }
///
/// Key/value pairs that the function processes as part of its
/// evaluation logic.
///
public string RuleParameters { get; set; }
///
/// A version number assigned by AWS.
/// The version will increment if AWS adds attributes to AWS Config
/// events.
/// If a function requires an attribute that is only in events that
/// match or exceed a specific version, then that function can check
/// the value of this attribute.
///
public string Version { get; set; }
}
}