import * as core from "@terrascript/core"; export interface IncludeMapArgs extends core.SchemaArgs { account?: core.Array | core.ArrayOut; orgunit?: core.Array | core.ArrayOut; } export declare class IncludeMap extends core.Schema { account?: core.Array | core.ArrayOut; orgunit?: core.Array | core.ArrayOut; } export interface ExcludeMapArgs extends core.SchemaArgs { account?: core.Array | core.ArrayOut; orgunit?: core.Array | core.ArrayOut; } export declare class ExcludeMap extends core.Schema { account?: core.Array | core.ArrayOut; orgunit?: core.Array | core.ArrayOut; } export interface SecurityServicePolicyDataArgs extends core.SchemaArgs { managedServiceData?: string | core.StringOut; type: string | core.StringOut; } export declare class SecurityServicePolicyData extends core.Schema { managedServiceData?: string | core.StringOut; type: string | core.StringOut; } export interface PolicyArgs extends core.ResourceArgs { /** * (Optional) If true, the request will also perform a clean-up process. Defaults to `true`. More infor * mation can be found here [AWS Firewall Manager delete policy](https://docs.aws.amazon.com/fms/2018-0 * 1-01/APIReference/API_DeletePolicy.html) */ deleteAllPolicyResources?: boolean | core.BooleanOut; /** * (Optional) If true, Firewall Manager will automatically remove protections from resources that leave * the policy scope. Defaults to `false`. More information can be found here [AWS Firewall Manager pol * icy contents](https://docs.aws.amazon.com/fms/2018-01-01/APIReference/API_Policy.html) */ deleteUnusedFmManagedResources?: boolean | core.BooleanOut; /** * (Optional) A map of lists of accounts and OU's to exclude from the policy. */ excludeMap?: ExcludeMap; /** * (Required, Forces new resource) A boolean value, if true the tags that are specified in the `resourc * e_tags` are not protected by this policy. If set to false and resource_tags are populated, resources * that contain tags will be protected by this policy. */ excludeResourceTags: boolean | core.BooleanOut; /** * (Optional) A map of lists of accounts and OU's to include in the policy. */ includeMap?: IncludeMap; /** * (Required, Forces new resource) The friendly name of the AWS Firewall Manager Policy. */ name: string | core.StringOut; /** * (Required) A boolean value, indicates if the policy should automatically applied to resources that a * lready exist in the account. */ remediationEnabled?: boolean | core.BooleanOut; /** * (Optional) A map of resource tags, that if present will filter protections on resources based on the * exclude_resource_tags. */ resourceTags?: core.Map | core.MapOut; /** * (Optional) A resource type to protect. Conflicts with `resource_type_list`. See the [FMS API Referen * ce](https://docs.aws.amazon.com/fms/2018-01-01/APIReference/API_Policy.html#fms-Type-Policy-Resource * Type) for more information about supported values. */ resourceType?: string | core.StringOut; /** * (Optional) A list of resource types to protect. Conflicts with `resource_type`. See the [FMS API Ref * erence](https://docs.aws.amazon.com/fms/2018-01-01/APIReference/API_Policy.html#fms-Type-Policy-Reso * urceType) for more information about supported values. Lists with only one element are not supported * , instead use `resource_type`. */ resourceTypeList?: core.Array | core.ArrayOut; /** * (Required) The objects to include in Security Service Policy Data. Documented below. */ securityServicePolicyData: SecurityServicePolicyData; /** * (Optional) Key-value mapping of resource tags. If configured with a provider [`default_tags` configu * ration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags-configu * ration-block) present, tags with matching keys will overwrite those defined at the provider-level. */ tags?: core.Map | core.MapOut; /** * A map of tags assigned to the resource, including those inherited from the provider [`default_tags` * configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags- * configuration-block). */ tagsAll?: core.Map | core.MapOut; } export declare class Policy extends core.Resource { arn: string | core.StringOut; /** * (Optional) If true, the request will also perform a clean-up process. Defaults to `true`. More infor * mation can be found here [AWS Firewall Manager delete policy](https://docs.aws.amazon.com/fms/2018-0 * 1-01/APIReference/API_DeletePolicy.html) */ deleteAllPolicyResources?: boolean | core.BooleanOut; /** * (Optional) If true, Firewall Manager will automatically remove protections from resources that leave * the policy scope. Defaults to `false`. More information can be found here [AWS Firewall Manager pol * icy contents](https://docs.aws.amazon.com/fms/2018-01-01/APIReference/API_Policy.html) */ deleteUnusedFmManagedResources?: boolean | core.BooleanOut; /** * (Optional) A map of lists of accounts and OU's to exclude from the policy. */ excludeMap?: ExcludeMap; /** * (Required, Forces new resource) A boolean value, if true the tags that are specified in the `resourc * e_tags` are not protected by this policy. If set to false and resource_tags are populated, resources * that contain tags will be protected by this policy. */ excludeResourceTags: boolean | core.BooleanOut; /** * The AWS account ID of the AWS Firewall Manager administrator account. */ id: string | core.StringOut; /** * (Optional) A map of lists of accounts and OU's to include in the policy. */ includeMap?: IncludeMap; /** * (Required, Forces new resource) The friendly name of the AWS Firewall Manager Policy. */ name: string | core.StringOut; /** * A unique identifier for each update to the policy. */ policyUpdateToken: string | core.StringOut; /** * (Required) A boolean value, indicates if the policy should automatically applied to resources that a * lready exist in the account. */ remediationEnabled?: boolean | core.BooleanOut; /** * (Optional) A map of resource tags, that if present will filter protections on resources based on the * exclude_resource_tags. */ resourceTags?: core.Map | core.MapOut; /** * (Optional) A resource type to protect. Conflicts with `resource_type_list`. See the [FMS API Referen * ce](https://docs.aws.amazon.com/fms/2018-01-01/APIReference/API_Policy.html#fms-Type-Policy-Resource * Type) for more information about supported values. */ resourceType?: string | core.StringOut; /** * (Optional) A list of resource types to protect. Conflicts with `resource_type`. See the [FMS API Ref * erence](https://docs.aws.amazon.com/fms/2018-01-01/APIReference/API_Policy.html#fms-Type-Policy-Reso * urceType) for more information about supported values. Lists with only one element are not supported * , instead use `resource_type`. */ resourceTypeList?: core.Array | core.ArrayOut; /** * (Required) The objects to include in Security Service Policy Data. Documented below. */ securityServicePolicyData: SecurityServicePolicyData; /** * (Optional) Key-value mapping of resource tags. If configured with a provider [`default_tags` configu * ration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags-configu * ration-block) present, tags with matching keys will overwrite those defined at the provider-level. */ tags?: core.Map | core.MapOut; /** * A map of tags assigned to the resource, including those inherited from the provider [`default_tags` * configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags- * configuration-block). */ tagsAll?: core.Map | core.MapOut; constructor(name: string, args?: PolicyArgs); getNamespace(): string; } //# sourceMappingURL=policy.d.ts.map