UNPKG

@cdktf/provider-aws

Version:

Prebuilt aws Provider for Terraform CDK (cdktf)

401 lines (400 loc) 21.3 kB
/** * Copyright (c) HashiCorp, Inc. * SPDX-License-Identifier: MPL-2.0 */ import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface FmsPolicyConfig extends cdktf.TerraformMetaArguments { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/fms_policy#delete_all_policy_resources FmsPolicy#delete_all_policy_resources} */ readonly deleteAllPolicyResources?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/fms_policy#delete_unused_fm_managed_resources FmsPolicy#delete_unused_fm_managed_resources} */ readonly deleteUnusedFmManagedResources?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/fms_policy#description FmsPolicy#description} */ readonly description?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/fms_policy#exclude_resource_tags FmsPolicy#exclude_resource_tags} */ readonly excludeResourceTags: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/fms_policy#id FmsPolicy#id} * * Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. * If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable. */ readonly id?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/fms_policy#name FmsPolicy#name} */ readonly name: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/fms_policy#remediation_enabled FmsPolicy#remediation_enabled} */ readonly remediationEnabled?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/fms_policy#resource_set_ids FmsPolicy#resource_set_ids} */ readonly resourceSetIds?: string[]; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/fms_policy#resource_tags FmsPolicy#resource_tags} */ readonly resourceTags?: { [key: string]: string; }; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/fms_policy#resource_type FmsPolicy#resource_type} */ readonly resourceType?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/fms_policy#resource_type_list FmsPolicy#resource_type_list} */ readonly resourceTypeList?: string[]; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/fms_policy#tags FmsPolicy#tags} */ readonly tags?: { [key: string]: string; }; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/fms_policy#tags_all FmsPolicy#tags_all} */ readonly tagsAll?: { [key: string]: string; }; /** * exclude_map block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/fms_policy#exclude_map FmsPolicy#exclude_map} */ readonly excludeMap?: FmsPolicyExcludeMap; /** * include_map block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/fms_policy#include_map FmsPolicy#include_map} */ readonly includeMap?: FmsPolicyIncludeMap; /** * security_service_policy_data block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/fms_policy#security_service_policy_data FmsPolicy#security_service_policy_data} */ readonly securityServicePolicyData: FmsPolicySecurityServicePolicyData; } export interface FmsPolicyExcludeMap { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/fms_policy#account FmsPolicy#account} */ readonly account?: string[]; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/fms_policy#orgunit FmsPolicy#orgunit} */ readonly orgunit?: string[]; } export declare function fmsPolicyExcludeMapToTerraform(struct?: FmsPolicyExcludeMapOutputReference | FmsPolicyExcludeMap): any; export declare function fmsPolicyExcludeMapToHclTerraform(struct?: FmsPolicyExcludeMapOutputReference | FmsPolicyExcludeMap): any; export declare class FmsPolicyExcludeMapOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): FmsPolicyExcludeMap | undefined; set internalValue(value: FmsPolicyExcludeMap | undefined); private _account?; get account(): string[]; set account(value: string[]); resetAccount(): void; get accountInput(): string[] | undefined; private _orgunit?; get orgunit(): string[]; set orgunit(value: string[]); resetOrgunit(): void; get orgunitInput(): string[] | undefined; } export interface FmsPolicyIncludeMap { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/fms_policy#account FmsPolicy#account} */ readonly account?: string[]; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/fms_policy#orgunit FmsPolicy#orgunit} */ readonly orgunit?: string[]; } export declare function fmsPolicyIncludeMapToTerraform(struct?: FmsPolicyIncludeMapOutputReference | FmsPolicyIncludeMap): any; export declare function fmsPolicyIncludeMapToHclTerraform(struct?: FmsPolicyIncludeMapOutputReference | FmsPolicyIncludeMap): any; export declare class FmsPolicyIncludeMapOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): FmsPolicyIncludeMap | undefined; set internalValue(value: FmsPolicyIncludeMap | undefined); private _account?; get account(): string[]; set account(value: string[]); resetAccount(): void; get accountInput(): string[] | undefined; private _orgunit?; get orgunit(): string[]; set orgunit(value: string[]); resetOrgunit(): void; get orgunitInput(): string[] | undefined; } export interface FmsPolicySecurityServicePolicyDataPolicyOptionNetworkFirewallPolicy { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/fms_policy#firewall_deployment_model FmsPolicy#firewall_deployment_model} */ readonly firewallDeploymentModel?: string; } export declare function fmsPolicySecurityServicePolicyDataPolicyOptionNetworkFirewallPolicyToTerraform(struct?: FmsPolicySecurityServicePolicyDataPolicyOptionNetworkFirewallPolicyOutputReference | FmsPolicySecurityServicePolicyDataPolicyOptionNetworkFirewallPolicy): any; export declare function fmsPolicySecurityServicePolicyDataPolicyOptionNetworkFirewallPolicyToHclTerraform(struct?: FmsPolicySecurityServicePolicyDataPolicyOptionNetworkFirewallPolicyOutputReference | FmsPolicySecurityServicePolicyDataPolicyOptionNetworkFirewallPolicy): any; export declare class FmsPolicySecurityServicePolicyDataPolicyOptionNetworkFirewallPolicyOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): FmsPolicySecurityServicePolicyDataPolicyOptionNetworkFirewallPolicy | undefined; set internalValue(value: FmsPolicySecurityServicePolicyDataPolicyOptionNetworkFirewallPolicy | undefined); private _firewallDeploymentModel?; get firewallDeploymentModel(): string; set firewallDeploymentModel(value: string); resetFirewallDeploymentModel(): void; get firewallDeploymentModelInput(): string | undefined; } export interface FmsPolicySecurityServicePolicyDataPolicyOptionThirdPartyFirewallPolicy { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/fms_policy#firewall_deployment_model FmsPolicy#firewall_deployment_model} */ readonly firewallDeploymentModel?: string; } export declare function fmsPolicySecurityServicePolicyDataPolicyOptionThirdPartyFirewallPolicyToTerraform(struct?: FmsPolicySecurityServicePolicyDataPolicyOptionThirdPartyFirewallPolicyOutputReference | FmsPolicySecurityServicePolicyDataPolicyOptionThirdPartyFirewallPolicy): any; export declare function fmsPolicySecurityServicePolicyDataPolicyOptionThirdPartyFirewallPolicyToHclTerraform(struct?: FmsPolicySecurityServicePolicyDataPolicyOptionThirdPartyFirewallPolicyOutputReference | FmsPolicySecurityServicePolicyDataPolicyOptionThirdPartyFirewallPolicy): any; export declare class FmsPolicySecurityServicePolicyDataPolicyOptionThirdPartyFirewallPolicyOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): FmsPolicySecurityServicePolicyDataPolicyOptionThirdPartyFirewallPolicy | undefined; set internalValue(value: FmsPolicySecurityServicePolicyDataPolicyOptionThirdPartyFirewallPolicy | undefined); private _firewallDeploymentModel?; get firewallDeploymentModel(): string; set firewallDeploymentModel(value: string); resetFirewallDeploymentModel(): void; get firewallDeploymentModelInput(): string | undefined; } export interface FmsPolicySecurityServicePolicyDataPolicyOption { /** * network_firewall_policy block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/fms_policy#network_firewall_policy FmsPolicy#network_firewall_policy} */ readonly networkFirewallPolicy?: FmsPolicySecurityServicePolicyDataPolicyOptionNetworkFirewallPolicy; /** * third_party_firewall_policy block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/fms_policy#third_party_firewall_policy FmsPolicy#third_party_firewall_policy} */ readonly thirdPartyFirewallPolicy?: FmsPolicySecurityServicePolicyDataPolicyOptionThirdPartyFirewallPolicy; } export declare function fmsPolicySecurityServicePolicyDataPolicyOptionToTerraform(struct?: FmsPolicySecurityServicePolicyDataPolicyOptionOutputReference | FmsPolicySecurityServicePolicyDataPolicyOption): any; export declare function fmsPolicySecurityServicePolicyDataPolicyOptionToHclTerraform(struct?: FmsPolicySecurityServicePolicyDataPolicyOptionOutputReference | FmsPolicySecurityServicePolicyDataPolicyOption): any; export declare class FmsPolicySecurityServicePolicyDataPolicyOptionOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): FmsPolicySecurityServicePolicyDataPolicyOption | undefined; set internalValue(value: FmsPolicySecurityServicePolicyDataPolicyOption | undefined); private _networkFirewallPolicy; get networkFirewallPolicy(): FmsPolicySecurityServicePolicyDataPolicyOptionNetworkFirewallPolicyOutputReference; putNetworkFirewallPolicy(value: FmsPolicySecurityServicePolicyDataPolicyOptionNetworkFirewallPolicy): void; resetNetworkFirewallPolicy(): void; get networkFirewallPolicyInput(): FmsPolicySecurityServicePolicyDataPolicyOptionNetworkFirewallPolicy | undefined; private _thirdPartyFirewallPolicy; get thirdPartyFirewallPolicy(): FmsPolicySecurityServicePolicyDataPolicyOptionThirdPartyFirewallPolicyOutputReference; putThirdPartyFirewallPolicy(value: FmsPolicySecurityServicePolicyDataPolicyOptionThirdPartyFirewallPolicy): void; resetThirdPartyFirewallPolicy(): void; get thirdPartyFirewallPolicyInput(): FmsPolicySecurityServicePolicyDataPolicyOptionThirdPartyFirewallPolicy | undefined; } export interface FmsPolicySecurityServicePolicyData { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/fms_policy#managed_service_data FmsPolicy#managed_service_data} */ readonly managedServiceData?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/fms_policy#type FmsPolicy#type} */ readonly type: string; /** * policy_option block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/fms_policy#policy_option FmsPolicy#policy_option} */ readonly policyOption?: FmsPolicySecurityServicePolicyDataPolicyOption; } export declare function fmsPolicySecurityServicePolicyDataToTerraform(struct?: FmsPolicySecurityServicePolicyDataOutputReference | FmsPolicySecurityServicePolicyData): any; export declare function fmsPolicySecurityServicePolicyDataToHclTerraform(struct?: FmsPolicySecurityServicePolicyDataOutputReference | FmsPolicySecurityServicePolicyData): any; export declare class FmsPolicySecurityServicePolicyDataOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): FmsPolicySecurityServicePolicyData | undefined; set internalValue(value: FmsPolicySecurityServicePolicyData | undefined); private _managedServiceData?; get managedServiceData(): string; set managedServiceData(value: string); resetManagedServiceData(): void; get managedServiceDataInput(): string | undefined; private _type?; get type(): string; set type(value: string); get typeInput(): string | undefined; private _policyOption; get policyOption(): FmsPolicySecurityServicePolicyDataPolicyOptionOutputReference; putPolicyOption(value: FmsPolicySecurityServicePolicyDataPolicyOption): void; resetPolicyOption(): void; get policyOptionInput(): FmsPolicySecurityServicePolicyDataPolicyOption | undefined; } /** * Represents a {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/fms_policy aws_fms_policy} */ export declare class FmsPolicy extends cdktf.TerraformResource { static readonly tfResourceType = "aws_fms_policy"; /** * Generates CDKTF code for importing a FmsPolicy resource upon running "cdktf plan <stack-name>" * @param scope The scope in which to define this construct * @param importToId The construct id used in the generated config for the FmsPolicy to import * @param importFromId The id of the existing FmsPolicy that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/fms_policy#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the FmsPolicy to import is found */ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): cdktf.ImportableResource; /** * Create a new {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/fms_policy aws_fms_policy} Resource * * @param scope The scope in which to define this construct * @param id The scoped construct ID. Must be unique amongst siblings in the same scope * @param options FmsPolicyConfig */ constructor(scope: Construct, id: string, config: FmsPolicyConfig); get arn(): string; private _deleteAllPolicyResources?; get deleteAllPolicyResources(): boolean | cdktf.IResolvable; set deleteAllPolicyResources(value: boolean | cdktf.IResolvable); resetDeleteAllPolicyResources(): void; get deleteAllPolicyResourcesInput(): boolean | cdktf.IResolvable | undefined; private _deleteUnusedFmManagedResources?; get deleteUnusedFmManagedResources(): boolean | cdktf.IResolvable; set deleteUnusedFmManagedResources(value: boolean | cdktf.IResolvable); resetDeleteUnusedFmManagedResources(): void; get deleteUnusedFmManagedResourcesInput(): boolean | cdktf.IResolvable | undefined; private _description?; get description(): string; set description(value: string); resetDescription(): void; get descriptionInput(): string | undefined; private _excludeResourceTags?; get excludeResourceTags(): boolean | cdktf.IResolvable; set excludeResourceTags(value: boolean | cdktf.IResolvable); get excludeResourceTagsInput(): boolean | cdktf.IResolvable | undefined; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string | undefined; private _name?; get name(): string; set name(value: string); get nameInput(): string | undefined; get policyUpdateToken(): string; private _remediationEnabled?; get remediationEnabled(): boolean | cdktf.IResolvable; set remediationEnabled(value: boolean | cdktf.IResolvable); resetRemediationEnabled(): void; get remediationEnabledInput(): boolean | cdktf.IResolvable | undefined; private _resourceSetIds?; get resourceSetIds(): string[]; set resourceSetIds(value: string[]); resetResourceSetIds(): void; get resourceSetIdsInput(): string[] | undefined; private _resourceTags?; get resourceTags(): { [key: string]: string; }; set resourceTags(value: { [key: string]: string; }); resetResourceTags(): void; get resourceTagsInput(): { [key: string]: string; } | undefined; private _resourceType?; get resourceType(): string; set resourceType(value: string); resetResourceType(): void; get resourceTypeInput(): string | undefined; private _resourceTypeList?; get resourceTypeList(): string[]; set resourceTypeList(value: string[]); resetResourceTypeList(): void; get resourceTypeListInput(): string[] | undefined; private _tags?; get tags(): { [key: string]: string; }; set tags(value: { [key: string]: string; }); resetTags(): void; get tagsInput(): { [key: string]: string; } | undefined; private _tagsAll?; get tagsAll(): { [key: string]: string; }; set tagsAll(value: { [key: string]: string; }); resetTagsAll(): void; get tagsAllInput(): { [key: string]: string; } | undefined; private _excludeMap; get excludeMap(): FmsPolicyExcludeMapOutputReference; putExcludeMap(value: FmsPolicyExcludeMap): void; resetExcludeMap(): void; get excludeMapInput(): FmsPolicyExcludeMap | undefined; private _includeMap; get includeMap(): FmsPolicyIncludeMapOutputReference; putIncludeMap(value: FmsPolicyIncludeMap): void; resetIncludeMap(): void; get includeMapInput(): FmsPolicyIncludeMap | undefined; private _securityServicePolicyData; get securityServicePolicyData(): FmsPolicySecurityServicePolicyDataOutputReference; putSecurityServicePolicyData(value: FmsPolicySecurityServicePolicyData): void; get securityServicePolicyDataInput(): FmsPolicySecurityServicePolicyData | undefined; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }