import { Value } from '../../cloudformation/Value';
import { PolicyDocument } from '../../cloudformation/iam/PolicyDocument';
import { Attribute } from '../../cloudformation/Attribute';
import { AwsResource } from '../../cloudformation/resources/AwsResource';
export type TopicPolicyAttributes = {
    Id: Attribute<string>;
};
export type TopicPolicy = AwsResource<'AWS::SNS::TopicPolicy', TopicPolicyProperties, TopicPolicyAttributes>;
/**
  The <code>AWS::SNS::TopicPolicy</code> resource associates Amazon SNS topics with a policy. For an example snippet, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sns-policy">Declaring an Amazon SNS policy</a> in the <em>AWS CloudFormation User Guide</em>.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-topicpolicy.html">the AWS Docs</a>
*/
export declare function topicPolicy(topicPolicyProps: TopicPolicyProperties): TopicPolicy;
/**
  The <code>AWS::SNS::TopicPolicy</code> resource associates Amazon SNS topics with a policy. For an example snippet, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sns-policy">Declaring an Amazon SNS policy</a> in the <em>AWS CloudFormation User Guide</em>.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-topicpolicy.html">the AWS Docs</a>
*/
export interface TopicPolicyProperties {
    /** <code>Topics</code>  <a name="cfn-sns-topicpolicy-topics"></a>
  The Amazon Resource Names (ARN) of the topics to which you want to add the policy. You can use the <code>[Ref](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html)</code> function to specify an <code>[AWS::SNS::Topic](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-topic.html)</code> resource.<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> */
    topics: Value<Value<string>[]>;
    /** <code>PolicyDocument</code>  <a name="cfn-sns-topicpolicy-policydocument"></a>
  A policy document that contains permissions to add to the specified SNS topics.<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> */
    policyDocument: Value<PolicyDocument>;
}
