import { Value } from '../../../cloudformation/Value';
import { NotificationFilterProps } from './NotificationFilterProps';
/**
  A container for specifying the configuration for publication of messages to an Amazon Simple Notification Service (Amazon SNS) topic when Amazon S3 detects specified events.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-topicconfig.html">the AWS Docs</a>
*/
export interface TopicConfigurationProps {
    /** <code>Event</code>  <a name="cfn-s3-bucket-notificationconfig-topicconfig-event"></a>
  The Amazon S3 bucket event about which to send notifications. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Supported Event Types</a> in the
  Amazon S3 User Guide: br />
  
  Required: Yes<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    event: Value<string>;
    /** <code>Filter</code>  <a name="cfn-s3-bucket-notificationconfig-topicconfig-filter"></a>
  The filtering rules that determine for which objects to send notifications. For example, you can create a filter so that Amazon S3 sends notifications only when image files with a <code>.jpg</code> extension are added to the bucket.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    filter?: NotificationFilterProps;
    /** <code>Topic</code>  <a name="cfn-s3-bucket-notificationconfig-topicconfig-topic"></a>
  The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3 publishes a message when it detects events of the specified type.<br />
  
  Required: Yes<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    topic: Value<string>;
}
