import { ValidationSettingsProps } from './policystore/ValidationSettingsProps';
import { SchemaDefinitionProps } from './policystore/SchemaDefinitionProps';
import { Attribute } from '../../cloudformation/Attribute';
import { AwsResource } from '../../cloudformation/resources/AwsResource';
export type PolicyStoreAttributes = {
    PolicyStoreId: Attribute<string>;
    Arn: Attribute<string>;
};
export type PolicyStore = AwsResource<'AWS::VerifiedPermissions::PolicyStore', PolicyStoreProperties, PolicyStoreAttributes>;
/**
  Creates a policy store. A policy store is a container for policy resources. You can create a separate policy store for each of your applications.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-verifiedpermissions-policystore.html">the AWS Docs</a>
*/
export declare function policyStore(policyStoreProps: PolicyStoreProperties): PolicyStore;
/**
  Creates a policy store. A policy store is a container for policy resources. You can create a separate policy store for each of your applications.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-verifiedpermissions-policystore.html">the AWS Docs</a>
*/
export interface PolicyStoreProperties {
    /** <code>ValidationSettings</code>  <a name="cfn-verifiedpermissions-policystore-validationsettings"></a>
  Specifies the validation setting for this policy store.<br />
  Currently, the only valid and required value is <code>Mode</code>.<br />
  We recommend that you turn on <code>STRICT</code> mode only after you define a schema. If a schema doesn’t exist, then <code>STRICT</code> mode causes any policy to fail validation, and Verified Permissions rejects the policy. You can turn off validation by using the <a href="https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_UpdatePolicyStore">UpdatePolicyStore</a>. Then, when you have a schema defined, use <a href="https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_UpdatePolicyStore">UpdatePolicyStore</a> again to turn validation back on.
  
  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> */
    validationSettings: ValidationSettingsProps;
    /** <code>Schema</code>  <a name="cfn-verifiedpermissions-policystore-schema"></a>
  Creates or updates the policy schema in a policy store. Cedar can use the schema to validate any Cedar policies and policy templates submitted to the policy store. Any changes to the schema validate only policies and templates submitted after the schema change. Existing policies and templates are not re-evaluated against the changed schema. If you later update a policy, then it is evaluated against the new schema at that time.<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> */
    schema?: SchemaDefinitionProps;
}
