import { PolicyDocument } from "../../aws-iam";
import { Resource } from "../../core";
import { Construct } from 'constructs';
import { ITopic } from './topic-base';
/**
 * (experimental) Properties to associate SNS topics with a policy.
 *
 * @experimental
 */
export interface TopicPolicyProps {
    /**
     * (experimental) The set of topics this policy applies to.
     *
     * @experimental
     */
    readonly topics: ITopic[];
    /**
     * (experimental) IAM policy document to apply to topic(s).
     *
     * @default empty policy document
     * @experimental
     */
    readonly policyDocument?: PolicyDocument;
}
/**
 * (experimental) Applies a policy to SNS topics.
 *
 * @experimental
 */
export declare class TopicPolicy extends Resource {
    /**
     * (experimental) The IAM policy document for this policy.
     *
     * @experimental
     */
    readonly document: PolicyDocument;
    /**
     * @experimental
     */
    constructor(scope: Construct, id: string, props: TopicPolicyProps);
}
