UNPKG

rhizo-co-terraform-provider-oci

Version:

Prebuilt oci Provider for Terraform CDK (cdktf)

1,141 lines 67.9 kB
import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface DataOciWaasWaasPolicyConfig extends cdktf.TerraformMetaArguments {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/waas_waas_policy#id DataOciWaasWaasPolicy#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/oracle/oci/6.18.0/docs/data-sources/waas_waas_policy#waas_policy_id DataOciWaasWaasPolicy#waas_policy_id}
    */
    readonly waasPolicyId: string;
}
export interface DataOciWaasWaasPolicyOriginGroupsOriginGroup {
}
export declare function dataOciWaasWaasPolicyOriginGroupsOriginGroupToTerraform(struct?: DataOciWaasWaasPolicyOriginGroupsOriginGroup): any;
export declare function dataOciWaasWaasPolicyOriginGroupsOriginGroupToHclTerraform(struct?: DataOciWaasWaasPolicyOriginGroupsOriginGroup): any;
export declare class DataOciWaasWaasPolicyOriginGroupsOriginGroupOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciWaasWaasPolicyOriginGroupsOriginGroup | undefined;
    set internalValue(value: DataOciWaasWaasPolicyOriginGroupsOriginGroup | undefined);
    get origin(): string;
    get weight(): number;
}
export declare class DataOciWaasWaasPolicyOriginGroupsOriginGroupList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciWaasWaasPolicyOriginGroupsOriginGroupOutputReference;
}
export interface DataOciWaasWaasPolicyOriginGroups {
}
export declare function dataOciWaasWaasPolicyOriginGroupsToTerraform(struct?: DataOciWaasWaasPolicyOriginGroups): any;
export declare function dataOciWaasWaasPolicyOriginGroupsToHclTerraform(struct?: DataOciWaasWaasPolicyOriginGroups): any;
export declare class DataOciWaasWaasPolicyOriginGroupsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciWaasWaasPolicyOriginGroups | undefined;
    set internalValue(value: DataOciWaasWaasPolicyOriginGroups | undefined);
    get label(): string;
    private _originGroup;
    get originGroup(): DataOciWaasWaasPolicyOriginGroupsOriginGroupList;
}
export declare class DataOciWaasWaasPolicyOriginGroupsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciWaasWaasPolicyOriginGroupsOutputReference;
}
export interface DataOciWaasWaasPolicyOriginsCustomHeaders {
}
export declare function dataOciWaasWaasPolicyOriginsCustomHeadersToTerraform(struct?: DataOciWaasWaasPolicyOriginsCustomHeaders): any;
export declare function dataOciWaasWaasPolicyOriginsCustomHeadersToHclTerraform(struct?: DataOciWaasWaasPolicyOriginsCustomHeaders): any;
export declare class DataOciWaasWaasPolicyOriginsCustomHeadersOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciWaasWaasPolicyOriginsCustomHeaders | undefined;
    set internalValue(value: DataOciWaasWaasPolicyOriginsCustomHeaders | undefined);
    get name(): string;
    get value(): string;
}
export declare class DataOciWaasWaasPolicyOriginsCustomHeadersList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciWaasWaasPolicyOriginsCustomHeadersOutputReference;
}
export interface DataOciWaasWaasPolicyOrigins {
}
export declare function dataOciWaasWaasPolicyOriginsToTerraform(struct?: DataOciWaasWaasPolicyOrigins): any;
export declare function dataOciWaasWaasPolicyOriginsToHclTerraform(struct?: DataOciWaasWaasPolicyOrigins): any;
export declare class DataOciWaasWaasPolicyOriginsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciWaasWaasPolicyOrigins | undefined;
    set internalValue(value: DataOciWaasWaasPolicyOrigins | undefined);
    private _customHeaders;
    get customHeaders(): DataOciWaasWaasPolicyOriginsCustomHeadersList;
    get httpPort(): number;
    get httpsPort(): number;
    get label(): string;
    get uri(): string;
}
export declare class DataOciWaasWaasPolicyOriginsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciWaasWaasPolicyOriginsOutputReference;
}
export interface DataOciWaasWaasPolicyPolicyConfigHealthChecks {
}
export declare function dataOciWaasWaasPolicyPolicyConfigHealthChecksToTerraform(struct?: DataOciWaasWaasPolicyPolicyConfigHealthChecks): any;
export declare function dataOciWaasWaasPolicyPolicyConfigHealthChecksToHclTerraform(struct?: DataOciWaasWaasPolicyPolicyConfigHealthChecks): any;
export declare class DataOciWaasWaasPolicyPolicyConfigHealthChecksOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciWaasWaasPolicyPolicyConfigHealthChecks | undefined;
    set internalValue(value: DataOciWaasWaasPolicyPolicyConfigHealthChecks | undefined);
    get expectedResponseCodeGroup(): string[];
    get expectedResponseText(): string;
    private _headers;
    get headers(): cdktf.StringMap;
    get healthyThreshold(): number;
    get intervalInSeconds(): number;
    get isEnabled(): cdktf.IResolvable;
    get isResponseTextCheckEnabled(): cdktf.IResolvable;
    get method(): string;
    get path(): string;
    get timeoutInSeconds(): number;
    get unhealthyThreshold(): number;
}
export declare class DataOciWaasWaasPolicyPolicyConfigHealthChecksList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciWaasWaasPolicyPolicyConfigHealthChecksOutputReference;
}
export interface DataOciWaasWaasPolicyPolicyConfigLoadBalancingMethod {
}
export declare function dataOciWaasWaasPolicyPolicyConfigLoadBalancingMethodToTerraform(struct?: DataOciWaasWaasPolicyPolicyConfigLoadBalancingMethod): any;
export declare function dataOciWaasWaasPolicyPolicyConfigLoadBalancingMethodToHclTerraform(struct?: DataOciWaasWaasPolicyPolicyConfigLoadBalancingMethod): any;
export declare class DataOciWaasWaasPolicyPolicyConfigLoadBalancingMethodOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciWaasWaasPolicyPolicyConfigLoadBalancingMethod | undefined;
    set internalValue(value: DataOciWaasWaasPolicyPolicyConfigLoadBalancingMethod | undefined);
    get domain(): string;
    get expirationTimeInSeconds(): number;
    get method(): string;
    get name(): string;
}
export declare class DataOciWaasWaasPolicyPolicyConfigLoadBalancingMethodList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciWaasWaasPolicyPolicyConfigLoadBalancingMethodOutputReference;
}
export interface DataOciWaasWaasPolicyPolicyConfig {
}
export declare function dataOciWaasWaasPolicyPolicyConfigToTerraform(struct?: DataOciWaasWaasPolicyPolicyConfig): any;
export declare function dataOciWaasWaasPolicyPolicyConfigToHclTerraform(struct?: DataOciWaasWaasPolicyPolicyConfig): any;
export declare class DataOciWaasWaasPolicyPolicyConfigOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciWaasWaasPolicyPolicyConfig | undefined;
    set internalValue(value: DataOciWaasWaasPolicyPolicyConfig | undefined);
    get certificateId(): string;
    get cipherGroup(): string;
    get clientAddressHeader(): string;
    private _healthChecks;
    get healthChecks(): DataOciWaasWaasPolicyPolicyConfigHealthChecksList;
    get isBehindCdn(): cdktf.IResolvable;
    get isCacheControlRespected(): cdktf.IResolvable;
    get isHttpsEnabled(): cdktf.IResolvable;
    get isHttpsForced(): cdktf.IResolvable;
    get isOriginCompressionEnabled(): cdktf.IResolvable;
    get isResponseBufferingEnabled(): cdktf.IResolvable;
    get isSniEnabled(): cdktf.IResolvable;
    private _loadBalancingMethod;
    get loadBalancingMethod(): DataOciWaasWaasPolicyPolicyConfigLoadBalancingMethodList;
    get tlsProtocols(): string[];
    get websocketPathPrefixes(): string[];
}
export declare class DataOciWaasWaasPolicyPolicyConfigList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciWaasWaasPolicyPolicyConfigOutputReference;
}
export interface DataOciWaasWaasPolicyWafConfigAccessRulesCriteria {
}
export declare function dataOciWaasWaasPolicyWafConfigAccessRulesCriteriaToTerraform(struct?: DataOciWaasWaasPolicyWafConfigAccessRulesCriteria): any;
export declare function dataOciWaasWaasPolicyWafConfigAccessRulesCriteriaToHclTerraform(struct?: DataOciWaasWaasPolicyWafConfigAccessRulesCriteria): any;
export declare class DataOciWaasWaasPolicyWafConfigAccessRulesCriteriaOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciWaasWaasPolicyWafConfigAccessRulesCriteria | undefined;
    set internalValue(value: DataOciWaasWaasPolicyWafConfigAccessRulesCriteria | undefined);
    get condition(): string;
    get isCaseSensitive(): cdktf.IResolvable;
    get value(): string;
}
export declare class DataOciWaasWaasPolicyWafConfigAccessRulesCriteriaList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciWaasWaasPolicyWafConfigAccessRulesCriteriaOutputReference;
}
export interface DataOciWaasWaasPolicyWafConfigAccessRulesResponseHeaderManipulation {
}
export declare function dataOciWaasWaasPolicyWafConfigAccessRulesResponseHeaderManipulationToTerraform(struct?: DataOciWaasWaasPolicyWafConfigAccessRulesResponseHeaderManipulation): any;
export declare function dataOciWaasWaasPolicyWafConfigAccessRulesResponseHeaderManipulationToHclTerraform(struct?: DataOciWaasWaasPolicyWafConfigAccessRulesResponseHeaderManipulation): any;
export declare class DataOciWaasWaasPolicyWafConfigAccessRulesResponseHeaderManipulationOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciWaasWaasPolicyWafConfigAccessRulesResponseHeaderManipulation | undefined;
    set internalValue(value: DataOciWaasWaasPolicyWafConfigAccessRulesResponseHeaderManipulation | undefined);
    get action(): string;
    get header(): string;
    get value(): string;
}
export declare class DataOciWaasWaasPolicyWafConfigAccessRulesResponseHeaderManipulationList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciWaasWaasPolicyWafConfigAccessRulesResponseHeaderManipulationOutputReference;
}
export interface DataOciWaasWaasPolicyWafConfigAccessRules {
}
export declare function dataOciWaasWaasPolicyWafConfigAccessRulesToTerraform(struct?: DataOciWaasWaasPolicyWafConfigAccessRules): any;
export declare function dataOciWaasWaasPolicyWafConfigAccessRulesToHclTerraform(struct?: DataOciWaasWaasPolicyWafConfigAccessRules): any;
export declare class DataOciWaasWaasPolicyWafConfigAccessRulesOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciWaasWaasPolicyWafConfigAccessRules | undefined;
    set internalValue(value: DataOciWaasWaasPolicyWafConfigAccessRules | undefined);
    get action(): string;
    get blockAction(): string;
    get blockErrorPageCode(): string;
    get blockErrorPageDescription(): string;
    get blockErrorPageMessage(): string;
    get blockResponseCode(): number;
    get bypassChallenges(): string[];
    get captchaFooter(): string;
    get captchaHeader(): string;
    get captchaSubmitLabel(): string;
    get captchaTitle(): string;
    private _criteria;
    get criteria(): DataOciWaasWaasPolicyWafConfigAccessRulesCriteriaList;
    get name(): string;
    get redirectResponseCode(): string;
    get redirectUrl(): string;
    private _responseHeaderManipulation;
    get responseHeaderManipulation(): DataOciWaasWaasPolicyWafConfigAccessRulesResponseHeaderManipulationList;
}
export declare class DataOciWaasWaasPolicyWafConfigAccessRulesList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciWaasWaasPolicyWafConfigAccessRulesOutputReference;
}
export interface DataOciWaasWaasPolicyWafConfigAddressRateLimiting {
}
export declare function dataOciWaasWaasPolicyWafConfigAddressRateLimitingToTerraform(struct?: DataOciWaasWaasPolicyWafConfigAddressRateLimiting): any;
export declare function dataOciWaasWaasPolicyWafConfigAddressRateLimitingToHclTerraform(struct?: DataOciWaasWaasPolicyWafConfigAddressRateLimiting): any;
export declare class DataOciWaasWaasPolicyWafConfigAddressRateLimitingOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciWaasWaasPolicyWafConfigAddressRateLimiting | undefined;
    set internalValue(value: DataOciWaasWaasPolicyWafConfigAddressRateLimiting | undefined);
    get allowedRatePerAddress(): number;
    get blockResponseCode(): number;
    get isEnabled(): cdktf.IResolvable;
    get maxDelayedCountPerAddress(): number;
}
export declare class DataOciWaasWaasPolicyWafConfigAddressRateLimitingList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciWaasWaasPolicyWafConfigAddressRateLimitingOutputReference;
}
export interface DataOciWaasWaasPolicyWafConfigCachingRulesCriteria {
}
export declare function dataOciWaasWaasPolicyWafConfigCachingRulesCriteriaToTerraform(struct?: DataOciWaasWaasPolicyWafConfigCachingRulesCriteria): any;
export declare function dataOciWaasWaasPolicyWafConfigCachingRulesCriteriaToHclTerraform(struct?: DataOciWaasWaasPolicyWafConfigCachingRulesCriteria): any;
export declare class DataOciWaasWaasPolicyWafConfigCachingRulesCriteriaOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciWaasWaasPolicyWafConfigCachingRulesCriteria | undefined;
    set internalValue(value: DataOciWaasWaasPolicyWafConfigCachingRulesCriteria | undefined);
    get condition(): string;
    get value(): string;
}
export declare class DataOciWaasWaasPolicyWafConfigCachingRulesCriteriaList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciWaasWaasPolicyWafConfigCachingRulesCriteriaOutputReference;
}
export interface DataOciWaasWaasPolicyWafConfigCachingRules {
}
export declare function dataOciWaasWaasPolicyWafConfigCachingRulesToTerraform(struct?: DataOciWaasWaasPolicyWafConfigCachingRules): any;
export declare function dataOciWaasWaasPolicyWafConfigCachingRulesToHclTerraform(struct?: DataOciWaasWaasPolicyWafConfigCachingRules): any;
export declare class DataOciWaasWaasPolicyWafConfigCachingRulesOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciWaasWaasPolicyWafConfigCachingRules | undefined;
    set internalValue(value: DataOciWaasWaasPolicyWafConfigCachingRules | undefined);
    get action(): string;
    get cachingDuration(): string;
    get clientCachingDuration(): string;
    private _criteria;
    get criteria(): DataOciWaasWaasPolicyWafConfigCachingRulesCriteriaList;
    get isClientCachingEnabled(): cdktf.IResolvable;
    get key(): string;
    get name(): string;
}
export declare class DataOciWaasWaasPolicyWafConfigCachingRulesList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciWaasWaasPolicyWafConfigCachingRulesOutputReference;
}
export interface DataOciWaasWaasPolicyWafConfigCaptchas {
}
export declare function dataOciWaasWaasPolicyWafConfigCaptchasToTerraform(struct?: DataOciWaasWaasPolicyWafConfigCaptchas): any;
export declare function dataOciWaasWaasPolicyWafConfigCaptchasToHclTerraform(struct?: DataOciWaasWaasPolicyWafConfigCaptchas): any;
export declare class DataOciWaasWaasPolicyWafConfigCaptchasOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciWaasWaasPolicyWafConfigCaptchas | undefined;
    set internalValue(value: DataOciWaasWaasPolicyWafConfigCaptchas | undefined);
    get failureMessage(): string;
    get footerText(): string;
    get headerText(): string;
    get sessionExpirationInSeconds(): number;
    get submitLabel(): string;
    get title(): string;
    get url(): string;
}
export declare class DataOciWaasWaasPolicyWafConfigCaptchasList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciWaasWaasPolicyWafConfigCaptchasOutputReference;
}
export interface DataOciWaasWaasPolicyWafConfigCustomProtectionRulesExclusions {
}
export declare function dataOciWaasWaasPolicyWafConfigCustomProtectionRulesExclusionsToTerraform(struct?: DataOciWaasWaasPolicyWafConfigCustomProtectionRulesExclusions): any;
export declare function dataOciWaasWaasPolicyWafConfigCustomProtectionRulesExclusionsToHclTerraform(struct?: DataOciWaasWaasPolicyWafConfigCustomProtectionRulesExclusions): any;
export declare class DataOciWaasWaasPolicyWafConfigCustomProtectionRulesExclusionsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciWaasWaasPolicyWafConfigCustomProtectionRulesExclusions | undefined;
    set internalValue(value: DataOciWaasWaasPolicyWafConfigCustomProtectionRulesExclusions | undefined);
    get exclusions(): string[];
    get target(): string;
}
export declare class DataOciWaasWaasPolicyWafConfigCustomProtectionRulesExclusionsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciWaasWaasPolicyWafConfigCustomProtectionRulesExclusionsOutputReference;
}
export interface DataOciWaasWaasPolicyWafConfigCustomProtectionRules {
}
export declare function dataOciWaasWaasPolicyWafConfigCustomProtectionRulesToTerraform(struct?: DataOciWaasWaasPolicyWafConfigCustomProtectionRules): any;
export declare function dataOciWaasWaasPolicyWafConfigCustomProtectionRulesToHclTerraform(struct?: DataOciWaasWaasPolicyWafConfigCustomProtectionRules): any;
export declare class DataOciWaasWaasPolicyWafConfigCustomProtectionRulesOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciWaasWaasPolicyWafConfigCustomProtectionRules | undefined;
    set internalValue(value: DataOciWaasWaasPolicyWafConfigCustomProtectionRules | undefined);
    get action(): string;
    private _exclusions;
    get exclusions(): DataOciWaasWaasPolicyWafConfigCustomProtectionRulesExclusionsList;
    get id(): string;
}
export declare class DataOciWaasWaasPolicyWafConfigCustomProtectionRulesList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciWaasWaasPolicyWafConfigCustomProtectionRulesOutputReference;
}
export interface DataOciWaasWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettings {
}
export declare function dataOciWaasWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsToTerraform(struct?: DataOciWaasWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettings): any;
export declare function dataOciWaasWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsToHclTerraform(struct?: DataOciWaasWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettings): any;
export declare class DataOciWaasWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciWaasWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettings | undefined;
    set internalValue(value: DataOciWaasWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettings | undefined);
    get blockAction(): string;
    get blockErrorPageCode(): string;
    get blockErrorPageDescription(): string;
    get blockErrorPageMessage(): string;
    get blockResponseCode(): number;
    get captchaFooter(): string;
    get captchaHeader(): string;
    get captchaSubmitLabel(): string;
    get captchaTitle(): string;
}
export declare class DataOciWaasWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciWaasWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsOutputReference;
}
export interface DataOciWaasWaasPolicyWafConfigDeviceFingerprintChallenge {
}
export declare function dataOciWaasWaasPolicyWafConfigDeviceFingerprintChallengeToTerraform(struct?: DataOciWaasWaasPolicyWafConfigDeviceFingerprintChallenge): any;
export declare function dataOciWaasWaasPolicyWafConfigDeviceFingerprintChallengeToHclTerraform(struct?: DataOciWaasWaasPolicyWafConfigDeviceFingerprintChallenge): any;
export declare class DataOciWaasWaasPolicyWafConfigDeviceFingerprintChallengeOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciWaasWaasPolicyWafConfigDeviceFingerprintChallenge | undefined;
    set internalValue(value: DataOciWaasWaasPolicyWafConfigDeviceFingerprintChallenge | undefined);
    get action(): string;
    get actionExpirationInSeconds(): number;
    private _challengeSettings;
    get challengeSettings(): DataOciWaasWaasPolicyWafConfigDeviceFingerprintChallengeChallengeSettingsList;
    get failureThreshold(): number;
    get failureThresholdExpirationInSeconds(): number;
    get isEnabled(): cdktf.IResolvable;
    get maxAddressCount(): number;
    get maxAddressCountExpirationInSeconds(): number;
}
export declare class DataOciWaasWaasPolicyWafConfigDeviceFingerprintChallengeList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciWaasWaasPolicyWafConfigDeviceFingerprintChallengeOutputReference;
}
export interface DataOciWaasWaasPolicyWafConfigHumanInteractionChallengeChallengeSettings {
}
export declare function dataOciWaasWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsToTerraform(struct?: DataOciWaasWaasPolicyWafConfigHumanInteractionChallengeChallengeSettings): any;
export declare function dataOciWaasWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsToHclTerraform(struct?: DataOciWaasWaasPolicyWafConfigHumanInteractionChallengeChallengeSettings): any;
export declare class DataOciWaasWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciWaasWaasPolicyWafConfigHumanInteractionChallengeChallengeSettings | undefined;
    set internalValue(value: DataOciWaasWaasPolicyWafConfigHumanInteractionChallengeChallengeSettings | undefined);
    get blockAction(): string;
    get blockErrorPageCode(): string;
    get blockErrorPageDescription(): string;
    get blockErrorPageMessage(): string;
    get blockResponseCode(): number;
    get captchaFooter(): string;
    get captchaHeader(): string;
    get captchaSubmitLabel(): string;
    get captchaTitle(): string;
}
export declare class DataOciWaasWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciWaasWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsOutputReference;
}
export interface DataOciWaasWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeader {
}
export declare function dataOciWaasWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderToTerraform(struct?: DataOciWaasWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeader): any;
export declare function dataOciWaasWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderToHclTerraform(struct?: DataOciWaasWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeader): any;
export declare class DataOciWaasWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciWaasWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeader | undefined;
    set internalValue(value: DataOciWaasWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeader | undefined);
    get name(): string;
    get value(): string;
}
export declare class DataOciWaasWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciWaasWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderOutputReference;
}
export interface DataOciWaasWaasPolicyWafConfigHumanInteractionChallenge {
}
export declare function dataOciWaasWaasPolicyWafConfigHumanInteractionChallengeToTerraform(struct?: DataOciWaasWaasPolicyWafConfigHumanInteractionChallenge): any;
export declare function dataOciWaasWaasPolicyWafConfigHumanInteractionChallengeToHclTerraform(struct?: DataOciWaasWaasPolicyWafConfigHumanInteractionChallenge): any;
export declare class DataOciWaasWaasPolicyWafConfigHumanInteractionChallengeOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciWaasWaasPolicyWafConfigHumanInteractionChallenge | undefined;
    set internalValue(value: DataOciWaasWaasPolicyWafConfigHumanInteractionChallenge | undefined);
    get action(): string;
    get actionExpirationInSeconds(): number;
    private _challengeSettings;
    get challengeSettings(): DataOciWaasWaasPolicyWafConfigHumanInteractionChallengeChallengeSettingsList;
    get failureThreshold(): number;
    get failureThresholdExpirationInSeconds(): number;
    get interactionThreshold(): number;
    get isEnabled(): cdktf.IResolvable;
    get isNatEnabled(): cdktf.IResolvable;
    get recordingPeriodInSeconds(): number;
    private _setHttpHeader;
    get setHttpHeader(): DataOciWaasWaasPolicyWafConfigHumanInteractionChallengeSetHttpHeaderList;
}
export declare class DataOciWaasWaasPolicyWafConfigHumanInteractionChallengeList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciWaasWaasPolicyWafConfigHumanInteractionChallengeOutputReference;
}
export interface DataOciWaasWaasPolicyWafConfigJsChallengeChallengeSettings {
}
export declare function dataOciWaasWaasPolicyWafConfigJsChallengeChallengeSettingsToTerraform(struct?: DataOciWaasWaasPolicyWafConfigJsChallengeChallengeSettings): any;
export declare function dataOciWaasWaasPolicyWafConfigJsChallengeChallengeSettingsToHclTerraform(struct?: DataOciWaasWaasPolicyWafConfigJsChallengeChallengeSettings): any;
export declare class DataOciWaasWaasPolicyWafConfigJsChallengeChallengeSettingsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciWaasWaasPolicyWafConfigJsChallengeChallengeSettings | undefined;
    set internalValue(value: DataOciWaasWaasPolicyWafConfigJsChallengeChallengeSettings | undefined);
    get blockAction(): string;
    get blockErrorPageCode(): string;
    get blockErrorPageDescription(): string;
    get blockErrorPageMessage(): string;
    get blockResponseCode(): number;
    get captchaFooter(): string;
    get captchaHeader(): string;
    get captchaSubmitLabel(): string;
    get captchaTitle(): string;
}
export declare class DataOciWaasWaasPolicyWafConfigJsChallengeChallengeSettingsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciWaasWaasPolicyWafConfigJsChallengeChallengeSettingsOutputReference;
}
export interface DataOciWaasWaasPolicyWafConfigJsChallengeCriteria {
}
export declare function dataOciWaasWaasPolicyWafConfigJsChallengeCriteriaToTerraform(struct?: DataOciWaasWaasPolicyWafConfigJsChallengeCriteria): any;
export declare function dataOciWaasWaasPolicyWafConfigJsChallengeCriteriaToHclTerraform(struct?: DataOciWaasWaasPolicyWafConfigJsChallengeCriteria): any;
export declare class DataOciWaasWaasPolicyWafConfigJsChallengeCriteriaOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciWaasWaasPolicyWafConfigJsChallengeCriteria | undefined;
    set internalValue(value: DataOciWaasWaasPolicyWafConfigJsChallengeCriteria | undefined);
    get condition(): string;
    get isCaseSensitive(): cdktf.IResolvable;
    get value(): string;
}
export declare class DataOciWaasWaasPolicyWafConfigJsChallengeCriteriaList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciWaasWaasPolicyWafConfigJsChallengeCriteriaOutputReference;
}
export interface DataOciWaasWaasPolicyWafConfigJsChallengeSetHttpHeader {
}
export declare function dataOciWaasWaasPolicyWafConfigJsChallengeSetHttpHeaderToTerraform(struct?: DataOciWaasWaasPolicyWafConfigJsChallengeSetHttpHeader): any;
export declare function dataOciWaasWaasPolicyWafConfigJsChallengeSetHttpHeaderToHclTerraform(struct?: DataOciWaasWaasPolicyWafConfigJsChallengeSetHttpHeader): any;
export declare class DataOciWaasWaasPolicyWafConfigJsChallengeSetHttpHeaderOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciWaasWaasPolicyWafConfigJsChallengeSetHttpHeader | undefined;
    set internalValue(value: DataOciWaasWaasPolicyWafConfigJsChallengeSetHttpHeader | undefined);
    get name(): string;
    get value(): string;
}
export declare class DataOciWaasWaasPolicyWafConfigJsChallengeSetHttpHeaderList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciWaasWaasPolicyWafConfigJsChallengeSetHttpHeaderOutputReference;
}
export interface DataOciWaasWaasPolicyWafConfigJsChallenge {
}
export declare function dataOciWaasWaasPolicyWafConfigJsChallengeToTerraform(struct?: DataOciWaasWaasPolicyWafConfigJsChallenge): any;
export declare function dataOciWaasWaasPolicyWafConfigJsChallengeToHclTerraform(struct?: DataOciWaasWaasPolicyWafConfigJsChallenge): any;
export declare class DataOciWaasWaasPolicyWafConfigJsChallengeOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciWaasWaasPolicyWafConfigJsChallenge | undefined;
    set internalValue(value: DataOciWaasWaasPolicyWafConfigJsChallenge | undefined);
    get action(): string;
    get actionExpirationInSeconds(): number;
    get areRedirectsChallenged(): cdktf.IResolvable;
    private _challengeSettings;
    get challengeSettings(): DataOciWaasWaasPolicyWafConfigJsChallengeChallengeSettingsList;
    private _criteria;
    get criteria(): DataOciWaasWaasPolicyWafConfigJsChallengeCriteriaList;
    get failureThreshold(): number;
    get isEnabled(): cdktf.IResolvable;
    get isNatEnabled(): cdktf.IResolvable;
    private _setHttpHeader;
    get setHttpHeader(): DataOciWaasWaasPolicyWafConfigJsChallengeSetHttpHeaderList;
}
export declare class DataOciWaasWaasPolicyWafConfigJsChallengeList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciWaasWaasPolicyWafConfigJsChallengeOutputReference;
}
export interface DataOciWaasWaasPolicyWafConfigProtectionSettings {
}
export declare function dataOciWaasWaasPolicyWafConfigProtectionSettingsToTerraform(struct?: DataOciWaasWaasPolicyWafConfigProtectionSettings): any;
export declare function dataOciWaasWaasPolicyWafConfigProtectionSettingsToHclTerraform(struct?: DataOciWaasWaasPolicyWafConfigProtectionSettings): any;
export declare class DataOciWaasWaasPolicyWafConfigProtectionSettingsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciWaasWaasPolicyWafConfigProtectionSettings | undefined;
    set internalValue(value: DataOciWaasWaasPolicyWafConfigProtectionSettings | undefined);
    get allowedHttpMethods(): string[];
    get blockAction(): string;
    get blockErrorPageCode(): string;
    get blockErrorPageDescription(): string;
    get blockErrorPageMessage(): string;
    get blockResponseCode(): number;
    get isResponseInspected(): cdktf.IResolvable;
    get maxArgumentCount(): number;
    get maxNameLengthPerArgument(): number;
    get maxResponseSizeInKiB(): number;
    get maxTotalNameLengthOfArguments(): number;
    get mediaTypes(): string[];
    get recommendationsPeriodInDays(): number;
}
export declare class DataOciWaasWaasPolicyWafConfigProtectionSettingsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciWaasWaasPolicyWafConfigProtectionSettingsOutputReference;
}
export interface DataOciWaasWaasPolicyWafConfigWhitelists {
}
export declare function dataOciWaasWaasPolicyWafConfigWhitelistsToTerraform(struct?: DataOciWaasWaasPolicyWafConfigWhitelists): any;
export declare function dataOciWaasWaasPolicyWafConfigWhitelistsToHclTerraform(struct?: DataOciWaasWaasPolicyWafConfigWhitelists): any;
export declare class DataOciWaasWaasPolicyWafConfigWhitelistsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciWaasWaasPolicyWafConfigWhitelists | undefined;
    set internalValue(value: DataOciWaasWaasPolicyWafConfigWhitelists | undefined);
    get addressLists(): string[];
    get addresses(): string[];
    get name(): string;
}
export declare class DataOciWaasWaasPolicyWafConfigWhitelistsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciWaasWaasPolicyWafConfigWhitelistsOutputReference;
}
export interface DataOciWaasWaasPolicyWafConfig {
}
export declare function dataOciWaasWaasPolicyWafConfigToTerraform(struct?: DataOciWaasWaasPolicyWafConfig): any;
export declare function dataOciWaasWaasPolicyWafConfigToHclTerraform(struct?: DataOciWaasWaasPolicyWafConfig): any;
export declare class DataOciWaasWaasPolicyWafConfigOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciWaasWaasPolicyWafConfig | undefined;
    set internalValue(value: DataOciWaasWaasPolicyWafConfig | undefined);
    private _accessRules;
    get accessRules(): DataOciWaasWaasPolicyWafConfigAccessRulesList;
    private _addressRateLimiting;
    get addressRateLimiting(): DataOciWaasWaasPolicyWafConfigAddressRateLimitingList;
    private _cachingRules;
    get cachingRules(): DataOciWaasWaasPolicyWafConfigCachingRulesList;
    private _captchas;
    get captchas(): DataOciWaasWaasPolicyWafConfigCaptchasList;
    private _customProtectionRules;
    get customProtectionRules(): DataOciWaasWaasPolicyWafConfigCustomProtectionRulesList;
    private _deviceFingerprintChallenge;
    get deviceFingerprintChallenge(): DataOciWaasWaasPolicyWafConfigDeviceFingerprintChallengeList;
    private _humanInteractionChallenge;
    get humanInteractionChallenge(): DataOciWaasWaasPolicyWafConfigHumanInteractionChallengeList;
    private _jsChallenge;
    get jsChallenge(): DataOciWaasWaasPolicyWafConfigJsChallengeList;
    get origin(): string;
    get originGroups(): string[];
    private _protectionSettings;
    get protectionSettings(): DataOciWaasWaasPolicyWafConfigProtectionSettingsList;
    private _whitelists;
    get whitelists(): DataOciWaasWaasPolicyWafConfigWhitelistsList;
}
export declare class DataOciWaasWaasPolicyWafConfigList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciWaasWaasPolicyWafConfigOutputReference;
}
/**
* Represents a {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/waas_waas_policy oci_waas_waas_policy}
*/
export declare class DataOciWaasWaasPolicy extends cdktf.TerraformDataSource {
    static readonly tfResourceType = "oci_waas_waas_policy";
    /**
    * Generates CDKTF code for importing a DataOciWaasWaasPolicy 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 DataOciWaasWaasPolicy to import
    * @param importFromId The id of the existing DataOciWaasWaasPolicy that should be imported. Refer to the {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/waas_waas_policy#import import section} in the documentation of this resource for the id to use
    * @param provider? Optional instance of the provider where the DataOciWaasWaasPolicy 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/oracle/oci/6.18.0/docs/data-sources/waas_waas_policy oci_waas_waas_policy} Data Source
    *
    * @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 DataOciWaasWaasPolicyConfig
    */
    constructor(scope: Construct, id: string, config: DataOciWaasWaasPolicyConfig);
    get additionalDomains(): string[];
    get cname(): string;
    get compartmentId(): string;
    private _definedTags;
    get definedTags(): cdktf.StringMap;
    get displayName(): string;
    get domain(): string;
    private _freeformTags;
    get freeformTags(): cdktf.StringMap;
    private _id?;
    get id(): string;
    set id(value: string);
    resetId(): void;
    get idInput(): string | undefined;
    private _originGroups;
    get originGroups(): DataOciWaasWaasPolicyOriginGroupsList;
    private _origins;
    get origins(): DataOciWaasWaasPolicyOriginsList;
    private _policyConfig;
    get policyConfig(): DataOciWaasWaasPolicyPolicyConfigList;
    get state(): string;
    get timeCreated(): string;
    private _waasPolicyId?;
    get waasPolicyId(): string;
    set waasPolicyId(value: string);
    get waasPolicyIdInput(): string | undefined;
    private _wafConfig;
    get wafConfig(): DataOciWaasWaasPolicyWafConfigList;
    protected synthesizeAttributes(): {
        [name: string]: any;
    };
    protected synthesizeHclAttributes(): {
        [name: string]: any;
    };
}