import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface FirewallFilteringRuleConfig extends cdktf.TerraformMetaArguments { /** * The action the Firewall Filtering policy rule takes when packets match the rule * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#action FirewallFilteringRule#action} */ readonly action?: string; /** * If set to true, the default rule is applied * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#default_rule FirewallFilteringRule#default_rule} */ readonly defaultRule?: boolean | cdktf.IResolvable; /** * Additional information about the rule * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#description FirewallFilteringRule#description} */ readonly description?: string; /** * Destination addresses. Supports IPv4, FQDNs, or wildcard FQDNs * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#dest_addresses FirewallFilteringRule#dest_addresses} */ readonly destAddresses?: string[]; /** * Destination countries for which the rule is applicable. If not set, the rule is not restricted to specific destination countries. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#dest_countries FirewallFilteringRule#dest_countries} */ readonly destCountries?: string[]; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#dest_ip_categories FirewallFilteringRule#dest_ip_categories} */ readonly destIpCategories?: string[]; /** * List of device trust levels for which the rule must be applied. This field is applicable for devices that are managed using Zscaler Client Connector. The trust levels are assigned to the devices based on your posture configurations in the Zscaler Client Connector Portal. If no value is set, this field is ignored during the policy evaluation. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#device_trust_levels FirewallFilteringRule#device_trust_levels} */ readonly deviceTrustLevels?: string[]; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#enable_full_logging FirewallFilteringRule#enable_full_logging} */ readonly enableFullLogging?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#exclude_src_countries FirewallFilteringRule#exclude_src_countries} */ readonly excludeSrcCountries?: boolean | cdktf.IResolvable; /** * Name of the Firewall Filtering policy rule * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#name FirewallFilteringRule#name} */ readonly name: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#nw_applications FirewallFilteringRule#nw_applications} */ readonly nwApplications?: string[]; /** * Rule order number. If omitted, the rule will be added to the end of the rule set. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#order FirewallFilteringRule#order} */ readonly order: number; /** * If set to true, a predefined rule is applied * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#predefined FirewallFilteringRule#predefined} */ readonly predefined?: boolean | cdktf.IResolvable; /** * Admin rank of the Firewall Filtering policy rule * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#rank FirewallFilteringRule#rank} */ readonly rank?: number; /** * Destination countries for which the rule is applicable. If not set, the rule is not restricted to specific destination countries. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#source_countries FirewallFilteringRule#source_countries} */ readonly sourceCountries?: string[]; /** * User-defined source IP addresses for which the rule is applicable. If not set, the rule is not restricted to a specific source IP address. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#src_ips FirewallFilteringRule#src_ips} */ readonly srcIps?: string[]; /** * Determines whether the Firewall Filtering policy rule is enabled or disabled * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#state FirewallFilteringRule#state} */ readonly state?: string; /** * app_service_groups block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#app_service_groups FirewallFilteringRule#app_service_groups} */ readonly appServiceGroups?: FirewallFilteringRuleAppServiceGroups; /** * app_services block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#app_services FirewallFilteringRule#app_services} */ readonly appServices?: FirewallFilteringRuleAppServices; /** * departments block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#departments FirewallFilteringRule#departments} */ readonly departments?: FirewallFilteringRuleDepartments; /** * dest_ip_groups block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#dest_ip_groups FirewallFilteringRule#dest_ip_groups} */ readonly destIpGroups?: FirewallFilteringRuleDestIpGroups; /** * device_groups block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#device_groups FirewallFilteringRule#device_groups} */ readonly deviceGroups?: FirewallFilteringRuleDeviceGroups; /** * devices block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#devices FirewallFilteringRule#devices} */ readonly devices?: FirewallFilteringRuleDevices; /** * groups block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#groups FirewallFilteringRule#groups} */ readonly groups?: FirewallFilteringRuleGroups; /** * labels block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#labels FirewallFilteringRule#labels} */ readonly labels?: FirewallFilteringRuleLabels; /** * location_groups block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#location_groups FirewallFilteringRule#location_groups} */ readonly locationGroups?: FirewallFilteringRuleLocationGroups; /** * locations block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#locations FirewallFilteringRule#locations} */ readonly locations?: FirewallFilteringRuleLocations; /** * nw_application_groups block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#nw_application_groups FirewallFilteringRule#nw_application_groups} */ readonly nwApplicationGroups?: FirewallFilteringRuleNwApplicationGroups; /** * nw_service_groups block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#nw_service_groups FirewallFilteringRule#nw_service_groups} */ readonly nwServiceGroups?: FirewallFilteringRuleNwServiceGroups; /** * nw_services block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#nw_services FirewallFilteringRule#nw_services} */ readonly nwServices?: FirewallFilteringRuleNwServices; /** * src_ip_groups block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#src_ip_groups FirewallFilteringRule#src_ip_groups} */ readonly srcIpGroups?: FirewallFilteringRuleSrcIpGroups; /** * time_windows block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#time_windows FirewallFilteringRule#time_windows} */ readonly timeWindows?: FirewallFilteringRuleTimeWindows; /** * timeouts block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#timeouts FirewallFilteringRule#timeouts} */ readonly timeouts?: FirewallFilteringRuleTimeouts; /** * users block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#users FirewallFilteringRule#users} */ readonly users?: FirewallFilteringRuleUsers; /** * workload_groups block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#workload_groups FirewallFilteringRule#workload_groups} */ readonly workloadGroups?: FirewallFilteringRuleWorkloadGroups[] | cdktf.IResolvable; /** * zpa_app_segments block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#zpa_app_segments FirewallFilteringRule#zpa_app_segments} */ readonly zpaAppSegments?: FirewallFilteringRuleZpaAppSegments[] | cdktf.IResolvable; } export interface FirewallFilteringRuleAppServiceGroups { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#id FirewallFilteringRule#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?: number[]; } export declare function firewallFilteringRuleAppServiceGroupsToTerraform(struct?: FirewallFilteringRuleAppServiceGroupsOutputReference | FirewallFilteringRuleAppServiceGroups): any; export declare function firewallFilteringRuleAppServiceGroupsToHclTerraform(struct?: FirewallFilteringRuleAppServiceGroupsOutputReference | FirewallFilteringRuleAppServiceGroups): any; export declare class FirewallFilteringRuleAppServiceGroupsOutputReference 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(): FirewallFilteringRuleAppServiceGroups | undefined; set internalValue(value: FirewallFilteringRuleAppServiceGroups | undefined); private _id?; get id(): number[]; set id(value: number[]); resetId(): void; get idInput(): number[]; } export interface FirewallFilteringRuleAppServices { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#id FirewallFilteringRule#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?: number[]; } export declare function firewallFilteringRuleAppServicesToTerraform(struct?: FirewallFilteringRuleAppServicesOutputReference | FirewallFilteringRuleAppServices): any; export declare function firewallFilteringRuleAppServicesToHclTerraform(struct?: FirewallFilteringRuleAppServicesOutputReference | FirewallFilteringRuleAppServices): any; export declare class FirewallFilteringRuleAppServicesOutputReference 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(): FirewallFilteringRuleAppServices | undefined; set internalValue(value: FirewallFilteringRuleAppServices | undefined); private _id?; get id(): number[]; set id(value: number[]); resetId(): void; get idInput(): number[]; } export interface FirewallFilteringRuleDepartments { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#id FirewallFilteringRule#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?: number[]; } export declare function firewallFilteringRuleDepartmentsToTerraform(struct?: FirewallFilteringRuleDepartmentsOutputReference | FirewallFilteringRuleDepartments): any; export declare function firewallFilteringRuleDepartmentsToHclTerraform(struct?: FirewallFilteringRuleDepartmentsOutputReference | FirewallFilteringRuleDepartments): any; export declare class FirewallFilteringRuleDepartmentsOutputReference 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(): FirewallFilteringRuleDepartments | undefined; set internalValue(value: FirewallFilteringRuleDepartments | undefined); private _id?; get id(): number[]; set id(value: number[]); resetId(): void; get idInput(): number[]; } export interface FirewallFilteringRuleDestIpGroups { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#id FirewallFilteringRule#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?: number[]; } export declare function firewallFilteringRuleDestIpGroupsToTerraform(struct?: FirewallFilteringRuleDestIpGroupsOutputReference | FirewallFilteringRuleDestIpGroups): any; export declare function firewallFilteringRuleDestIpGroupsToHclTerraform(struct?: FirewallFilteringRuleDestIpGroupsOutputReference | FirewallFilteringRuleDestIpGroups): any; export declare class FirewallFilteringRuleDestIpGroupsOutputReference 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(): FirewallFilteringRuleDestIpGroups | undefined; set internalValue(value: FirewallFilteringRuleDestIpGroups | undefined); private _id?; get id(): number[]; set id(value: number[]); resetId(): void; get idInput(): number[]; } export interface FirewallFilteringRuleDeviceGroups { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#id FirewallFilteringRule#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?: number[]; } export declare function firewallFilteringRuleDeviceGroupsToTerraform(struct?: FirewallFilteringRuleDeviceGroupsOutputReference | FirewallFilteringRuleDeviceGroups): any; export declare function firewallFilteringRuleDeviceGroupsToHclTerraform(struct?: FirewallFilteringRuleDeviceGroupsOutputReference | FirewallFilteringRuleDeviceGroups): any; export declare class FirewallFilteringRuleDeviceGroupsOutputReference 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(): FirewallFilteringRuleDeviceGroups | undefined; set internalValue(value: FirewallFilteringRuleDeviceGroups | undefined); private _id?; get id(): number[]; set id(value: number[]); resetId(): void; get idInput(): number[]; } export interface FirewallFilteringRuleDevices { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#id FirewallFilteringRule#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?: number[]; } export declare function firewallFilteringRuleDevicesToTerraform(struct?: FirewallFilteringRuleDevicesOutputReference | FirewallFilteringRuleDevices): any; export declare function firewallFilteringRuleDevicesToHclTerraform(struct?: FirewallFilteringRuleDevicesOutputReference | FirewallFilteringRuleDevices): any; export declare class FirewallFilteringRuleDevicesOutputReference 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(): FirewallFilteringRuleDevices | undefined; set internalValue(value: FirewallFilteringRuleDevices | undefined); private _id?; get id(): number[]; set id(value: number[]); resetId(): void; get idInput(): number[]; } export interface FirewallFilteringRuleGroups { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#id FirewallFilteringRule#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?: number[]; } export declare function firewallFilteringRuleGroupsToTerraform(struct?: FirewallFilteringRuleGroupsOutputReference | FirewallFilteringRuleGroups): any; export declare function firewallFilteringRuleGroupsToHclTerraform(struct?: FirewallFilteringRuleGroupsOutputReference | FirewallFilteringRuleGroups): any; export declare class FirewallFilteringRuleGroupsOutputReference 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(): FirewallFilteringRuleGroups | undefined; set internalValue(value: FirewallFilteringRuleGroups | undefined); private _id?; get id(): number[]; set id(value: number[]); resetId(): void; get idInput(): number[]; } export interface FirewallFilteringRuleLabels { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#id FirewallFilteringRule#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?: number[]; } export declare function firewallFilteringRuleLabelsToTerraform(struct?: FirewallFilteringRuleLabelsOutputReference | FirewallFilteringRuleLabels): any; export declare function firewallFilteringRuleLabelsToHclTerraform(struct?: FirewallFilteringRuleLabelsOutputReference | FirewallFilteringRuleLabels): any; export declare class FirewallFilteringRuleLabelsOutputReference 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(): FirewallFilteringRuleLabels | undefined; set internalValue(value: FirewallFilteringRuleLabels | undefined); private _id?; get id(): number[]; set id(value: number[]); resetId(): void; get idInput(): number[]; } export interface FirewallFilteringRuleLocationGroups { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#id FirewallFilteringRule#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?: number[]; } export declare function firewallFilteringRuleLocationGroupsToTerraform(struct?: FirewallFilteringRuleLocationGroupsOutputReference | FirewallFilteringRuleLocationGroups): any; export declare function firewallFilteringRuleLocationGroupsToHclTerraform(struct?: FirewallFilteringRuleLocationGroupsOutputReference | FirewallFilteringRuleLocationGroups): any; export declare class FirewallFilteringRuleLocationGroupsOutputReference 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(): FirewallFilteringRuleLocationGroups | undefined; set internalValue(value: FirewallFilteringRuleLocationGroups | undefined); private _id?; get id(): number[]; set id(value: number[]); resetId(): void; get idInput(): number[]; } export interface FirewallFilteringRuleLocations { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#id FirewallFilteringRule#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?: number[]; } export declare function firewallFilteringRuleLocationsToTerraform(struct?: FirewallFilteringRuleLocationsOutputReference | FirewallFilteringRuleLocations): any; export declare function firewallFilteringRuleLocationsToHclTerraform(struct?: FirewallFilteringRuleLocationsOutputReference | FirewallFilteringRuleLocations): any; export declare class FirewallFilteringRuleLocationsOutputReference 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(): FirewallFilteringRuleLocations | undefined; set internalValue(value: FirewallFilteringRuleLocations | undefined); private _id?; get id(): number[]; set id(value: number[]); resetId(): void; get idInput(): number[]; } export interface FirewallFilteringRuleNwApplicationGroups { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#id FirewallFilteringRule#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?: number[]; } export declare function firewallFilteringRuleNwApplicationGroupsToTerraform(struct?: FirewallFilteringRuleNwApplicationGroupsOutputReference | FirewallFilteringRuleNwApplicationGroups): any; export declare function firewallFilteringRuleNwApplicationGroupsToHclTerraform(struct?: FirewallFilteringRuleNwApplicationGroupsOutputReference | FirewallFilteringRuleNwApplicationGroups): any; export declare class FirewallFilteringRuleNwApplicationGroupsOutputReference 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(): FirewallFilteringRuleNwApplicationGroups | undefined; set internalValue(value: FirewallFilteringRuleNwApplicationGroups | undefined); private _id?; get id(): number[]; set id(value: number[]); resetId(): void; get idInput(): number[]; } export interface FirewallFilteringRuleNwServiceGroups { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#id FirewallFilteringRule#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?: number[]; } export declare function firewallFilteringRuleNwServiceGroupsToTerraform(struct?: FirewallFilteringRuleNwServiceGroupsOutputReference | FirewallFilteringRuleNwServiceGroups): any; export declare function firewallFilteringRuleNwServiceGroupsToHclTerraform(struct?: FirewallFilteringRuleNwServiceGroupsOutputReference | FirewallFilteringRuleNwServiceGroups): any; export declare class FirewallFilteringRuleNwServiceGroupsOutputReference 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(): FirewallFilteringRuleNwServiceGroups | undefined; set internalValue(value: FirewallFilteringRuleNwServiceGroups | undefined); private _id?; get id(): number[]; set id(value: number[]); resetId(): void; get idInput(): number[]; } export interface FirewallFilteringRuleNwServices { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#id FirewallFilteringRule#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?: number[]; } export declare function firewallFilteringRuleNwServicesToTerraform(struct?: FirewallFilteringRuleNwServicesOutputReference | FirewallFilteringRuleNwServices): any; export declare function firewallFilteringRuleNwServicesToHclTerraform(struct?: FirewallFilteringRuleNwServicesOutputReference | FirewallFilteringRuleNwServices): any; export declare class FirewallFilteringRuleNwServicesOutputReference 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(): FirewallFilteringRuleNwServices | undefined; set internalValue(value: FirewallFilteringRuleNwServices | undefined); private _id?; get id(): number[]; set id(value: number[]); resetId(): void; get idInput(): number[]; } export interface FirewallFilteringRuleSrcIpGroups { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#id FirewallFilteringRule#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?: number[]; } export declare function firewallFilteringRuleSrcIpGroupsToTerraform(struct?: FirewallFilteringRuleSrcIpGroupsOutputReference | FirewallFilteringRuleSrcIpGroups): any; export declare function firewallFilteringRuleSrcIpGroupsToHclTerraform(struct?: FirewallFilteringRuleSrcIpGroupsOutputReference | FirewallFilteringRuleSrcIpGroups): any; export declare class FirewallFilteringRuleSrcIpGroupsOutputReference 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(): FirewallFilteringRuleSrcIpGroups | undefined; set internalValue(value: FirewallFilteringRuleSrcIpGroups | undefined); private _id?; get id(): number[]; set id(value: number[]); resetId(): void; get idInput(): number[]; } export interface FirewallFilteringRuleTimeWindows { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#id FirewallFilteringRule#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?: number[]; } export declare function firewallFilteringRuleTimeWindowsToTerraform(struct?: FirewallFilteringRuleTimeWindowsOutputReference | FirewallFilteringRuleTimeWindows): any; export declare function firewallFilteringRuleTimeWindowsToHclTerraform(struct?: FirewallFilteringRuleTimeWindowsOutputReference | FirewallFilteringRuleTimeWindows): any; export declare class FirewallFilteringRuleTimeWindowsOutputReference 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(): FirewallFilteringRuleTimeWindows | undefined; set internalValue(value: FirewallFilteringRuleTimeWindows | undefined); private _id?; get id(): number[]; set id(value: number[]); resetId(): void; get idInput(): number[]; } export interface FirewallFilteringRuleTimeouts { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#create FirewallFilteringRule#create} */ readonly create?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#update FirewallFilteringRule#update} */ readonly update?: string; } export declare function firewallFilteringRuleTimeoutsToTerraform(struct?: FirewallFilteringRuleTimeouts | cdktf.IResolvable): any; export declare function firewallFilteringRuleTimeoutsToHclTerraform(struct?: FirewallFilteringRuleTimeouts | cdktf.IResolvable): any; export declare class FirewallFilteringRuleTimeoutsOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @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(): FirewallFilteringRuleTimeouts | cdktf.IResolvable | undefined; set internalValue(value: FirewallFilteringRuleTimeouts | cdktf.IResolvable | undefined); private _create?; get create(): string; set create(value: string); resetCreate(): void; get createInput(): string; private _update?; get update(): string; set update(value: string); resetUpdate(): void; get updateInput(): string; } export interface FirewallFilteringRuleUsers { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#id FirewallFilteringRule#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?: number[]; } export declare function firewallFilteringRuleUsersToTerraform(struct?: FirewallFilteringRuleUsersOutputReference | FirewallFilteringRuleUsers): any; export declare function firewallFilteringRuleUsersToHclTerraform(struct?: FirewallFilteringRuleUsersOutputReference | FirewallFilteringRuleUsers): any; export declare class FirewallFilteringRuleUsersOutputReference 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(): FirewallFilteringRuleUsers | undefined; set internalValue(value: FirewallFilteringRuleUsers | undefined); private _id?; get id(): number[]; set id(value: number[]); resetId(): void; get idInput(): number[]; } export interface FirewallFilteringRuleWorkloadGroups { /** * The unique identifier for the resource. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#id FirewallFilteringRule#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: number; /** * The name of the resource. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#name FirewallFilteringRule#name} */ readonly name?: string; } export declare function firewallFilteringRuleWorkloadGroupsToTerraform(struct?: FirewallFilteringRuleWorkloadGroups | cdktf.IResolvable): any; export declare function firewallFilteringRuleWorkloadGroupsToHclTerraform(struct?: FirewallFilteringRuleWorkloadGroups | cdktf.IResolvable): any; export declare class FirewallFilteringRuleWorkloadGroupsOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): FirewallFilteringRuleWorkloadGroups | cdktf.IResolvable | undefined; set internalValue(value: FirewallFilteringRuleWorkloadGroups | cdktf.IResolvable | undefined); private _id?; get id(): number; set id(value: number); get idInput(): number; private _name?; get name(): string; set name(value: string); resetName(): void; get nameInput(): string; } export declare class FirewallFilteringRuleWorkloadGroupsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: FirewallFilteringRuleWorkloadGroups[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): FirewallFilteringRuleWorkloadGroupsOutputReference; } export interface FirewallFilteringRuleZpaAppSegments { /** * External ID of the application segment. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#external_id FirewallFilteringRule#external_id} */ readonly externalId: string; /** * Name of the application segment. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#name FirewallFilteringRule#name} */ readonly name: string; } export declare function firewallFilteringRuleZpaAppSegmentsToTerraform(struct?: FirewallFilteringRuleZpaAppSegments | cdktf.IResolvable): any; export declare function firewallFilteringRuleZpaAppSegmentsToHclTerraform(struct?: FirewallFilteringRuleZpaAppSegments | cdktf.IResolvable): any; export declare class FirewallFilteringRuleZpaAppSegmentsOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): FirewallFilteringRuleZpaAppSegments | cdktf.IResolvable | undefined; set internalValue(value: FirewallFilteringRuleZpaAppSegments | cdktf.IResolvable | undefined); private _externalId?; get externalId(): string; set externalId(value: string); get externalIdInput(): string; private _name?; get name(): string; set name(value: string); get nameInput(): string; } export declare class FirewallFilteringRuleZpaAppSegmentsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: FirewallFilteringRuleZpaAppSegments[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): FirewallFilteringRuleZpaAppSegmentsOutputReference; } /** * Represents a {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule zia_firewall_filtering_rule} */ export declare class FirewallFilteringRule extends cdktf.TerraformResource { static readonly tfResourceType = "zia_firewall_filtering_rule"; /** * Generates CDKTF code for importing a FirewallFilteringRule resource upon running "cdktf plan " * @param scope The scope in which to define this construct * @param importToId The construct id used in the generated config for the FirewallFilteringRule to import * @param importFromId The id of the existing FirewallFilteringRule that should be imported. Refer to the {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the FirewallFilteringRule to import is found */ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): any; /** * Create a new {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/firewall_filtering_rule zia_firewall_filtering_rule} 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 FirewallFilteringRuleConfig */ constructor(scope: Construct, id: string, config: FirewallFilteringRuleConfig); private _action?; get action(): string; set action(value: string); resetAction(): void; get actionInput(): string; private _defaultRule?; get defaultRule(): boolean | cdktf.IResolvable; set defaultRule(value: boolean | cdktf.IResolvable); resetDefaultRule(): void; get defaultRuleInput(): any; private _description?; get description(): string; set description(value: string); resetDescription(): void; get descriptionInput(): string; private _destAddresses?; get destAddresses(): string[]; set destAddresses(value: string[]); resetDestAddresses(): void; get destAddressesInput(): string[]; private _destCountries?; get destCountries(): string[]; set destCountries(value: string[]); resetDestCountries(): void; get destCountriesInput(): string[]; private _destIpCategories?; get destIpCategories(): string[]; set destIpCategories(value: string[]); resetDestIpCategories(): void; get destIpCategoriesInput(): string[]; private _deviceTrustLevels?; get deviceTrustLevels(): string[]; set deviceTrustLevels(value: string[]); resetDeviceTrustLevels(): void; get deviceTrustLevelsInput(): string[]; private _enableFullLogging?; get enableFullLogging(): boolean | cdktf.IResolvable; set enableFullLogging(value: boolean | cdktf.IResolvable); resetEnableFullLogging(): void; get enableFullLoggingInput(): any; private _excludeSrcCountries?; get excludeSrcCountries(): boolean | cdktf.IResolvable; set excludeSrcCountries(value: boolean | cdktf.IResolvable); resetExcludeSrcCountries(): void; get excludeSrcCountriesInput(): any; get id(): any; private _name?; get name(): string; set name(value: string); get nameInput(): string; private _nwApplications?; get nwApplications(): string[]; set nwApplications(value: string[]); resetNwApplications(): void; get nwApplicationsInput(): string[]; private _order?; get order(): number; set order(value: number); get orderInput(): number; private _predefined?; get predefined(): boolean | cdktf.IResolvable; set predefined(value: boolean | cdktf.IResolvable); resetPredefined(): void; get predefinedInput(): any; private _rank?; get rank(): number; set rank(value: number); resetRank(): void; get rankInput(): number; get ruleId(): any; private _sourceCountries?; get sourceCountries(): string[]; set sourceCountries(value: string[]); resetSourceCountries(): void; get sourceCountriesInput(): string[]; private _srcIps?; get srcIps(): string[]; set srcIps(value: string[]); resetSrcIps(): void; get srcIpsInput(): string[]; private _state?; get state(): string; set state(value: string); resetState(): void; get stateInput(): string; private _appServiceGroups; get appServiceGroups(): FirewallFilteringRuleAppServiceGroupsOutputReference; putAppServiceGroups(value: FirewallFilteringRuleAppServiceGroups): void; resetAppServiceGroups(): void; get appServiceGroupsInput(): FirewallFilteringRuleAppServiceGroups; private _appServices; get appServices(): FirewallFilteringRuleAppServicesOutputReference; putAppServices(value: FirewallFilteringRuleAppServices): void; resetAppServices(): void; get appServicesInput(): FirewallFilteringRuleAppServices; private _departments; get departments(): FirewallFilteringRuleDepartmentsOutputReference; putDepartments(value: FirewallFilteringRuleDepartments): void; resetDepartments(): void; get departmentsInput(): FirewallFilteringRuleDepartments; private _destIpGroups; get destIpGroups(): FirewallFilteringRuleDestIpGroupsOutputReference; putDestIpGroups(value: FirewallFilteringRuleDestIpGroups): void; resetDestIpGroups(): void; get destIpGroupsInput(): FirewallFilteringRuleDestIpGroups; private _deviceGroups; get deviceGroups(): FirewallFilteringRuleDeviceGroupsOutputReference; putDeviceGroups(value: FirewallFilteringRuleDeviceGroups): void; resetDeviceGroups(): void; get deviceGroupsInput(): FirewallFilteringRuleDeviceGroups; private _devices; get devices(): FirewallFilteringRuleDevicesOutputReference; putDevices(value: FirewallFilteringRuleDevices): void; resetDevices(): void; get devicesInput(): FirewallFilteringRuleDevices; private _groups; get groups(): FirewallFilteringRuleGroupsOutputReference; putGroups(value: FirewallFilteringRuleGroups): void; resetGroups(): void; get groupsInput(): FirewallFilteringRuleGroups; private _labels; get labels(): FirewallFilteringRuleLabelsOutputReference; putLabels(value: FirewallFilteringRuleLabels): void; resetLabels(): void; get labelsInput(): FirewallFilteringRuleLabels; private _locationGroups; get locationGroups(): FirewallFilteringRuleLocationGroupsOutputReference; putLocationGroups(value: FirewallFilteringRuleLocationGroups): void; resetLocationGroups(): void; get locationGroupsInput(): FirewallFilteringRuleLocationGroups; private _locations; get locations(): FirewallFilteringRuleLocationsOutputReference; putLocations(value: FirewallFilteringRuleLocations): void; resetLocations(): void; get locationsInput(): FirewallFilteringRuleLocations; private _nwApplicationGroups; get nwApplicationGroups(): FirewallFilteringRuleNwApplicationGroupsOutputReference; putNwApplicationGroups(value: FirewallFilteringRuleNwApplicationGroups): void; resetNwApplicationGroups(): void; get nwApplicationGroupsInput(): FirewallFilteringRuleNwApplicationGroups; private _nwServiceGroups; get nwServiceGroups(): FirewallFilteringRuleNwServiceGroupsOutputReference; putNwServiceGroups(value: FirewallFilteringRuleNwServiceGroups): void; resetNwServiceGroups(): void; get nwServiceGroupsInput(): FirewallFilteringRuleNwServiceGroups; private _nwServices; get nwServices(): FirewallFilteringRuleNwServicesOutputReference; putNwServices(value: FirewallFilteringRuleNwServices): void; resetNwServices(): void; get nwServicesInput(): FirewallFilteringRuleNwServices; private _srcIpGroups; get srcIpGroups(): FirewallFilteringRuleSrcIpGroupsOutputReference; putSrcIpGroups(value: FirewallFilteringRuleSrcIpGroups): void; resetSrcIpGroups(): void; get srcIpGroupsInput(): FirewallFilteringRuleSrcIpGroups; private _timeWindows; get timeWindows(): FirewallFilteringRuleTimeWindowsOutputReference; putTimeWindows(value: FirewallFilteringRuleTimeWindows): void; resetTimeWindows(): void; get timeWindowsInput(): FirewallFilteringRuleTimeWindows; private _timeouts; get timeouts(): FirewallFilteringRuleTimeoutsOutputReference; putTimeouts(value: FirewallFilteringRuleTimeouts): void; resetTimeouts(): void; get timeoutsInput(): any; private _users; get users(): FirewallFilteringRuleUsersOutputReference; putUsers(value: FirewallFilteringRuleUsers): void; resetUsers(): void; get usersInput(): FirewallFilteringRuleUsers; private _workloadGroups; get workloadGroups(): FirewallFilteringRuleWorkloadGroupsList; putWorkloadGroups(value: FirewallFilteringRuleWorkloadGroups[] | cdktf.IResolvable): void; resetWorkloadGroups(): void; get workloadGroupsInput(): any; private _zpaAppSegments; get zpaAppSegments(): FirewallFilteringRuleZpaAppSegmentsList; putZpaAppSegments(value: FirewallFilteringRuleZpaAppSegments[] | cdktf.IResolvable): void; resetZpaAppSegments(): void; get zpaAppSegmentsInput(): any; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }