import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface AntiddosCcPrecisionPolicyConfig extends cdktf.TerraformMetaArguments { /** * domain. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/antiddos_cc_precision_policy#domain AntiddosCcPrecisionPolicy#domain} */ readonly domain: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/antiddos_cc_precision_policy#id AntiddosCcPrecisionPolicy#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; /** * Instance Id. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/antiddos_cc_precision_policy#instance_id AntiddosCcPrecisionPolicy#instance_id} */ readonly instanceId: string; /** * Ip value. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/antiddos_cc_precision_policy#ip AntiddosCcPrecisionPolicy#ip} */ readonly ip: string; /** * policy type, alg or drop. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/antiddos_cc_precision_policy#policy_action AntiddosCcPrecisionPolicy#policy_action} */ readonly policyAction: string; /** * protocol http or https. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/antiddos_cc_precision_policy#protocol AntiddosCcPrecisionPolicy#protocol} */ readonly protocol: string; /** * policy_list block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/antiddos_cc_precision_policy#policy_list AntiddosCcPrecisionPolicy#policy_list} */ readonly policyList: AntiddosCcPrecisionPolicyPolicyListStruct[] | cdktf.IResolvable; } export interface AntiddosCcPrecisionPolicyPolicyListStruct { /** * Configuration fields can take values of cgi, ua, cookie, referer, accept, srcip. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/antiddos_cc_precision_policy#field_name AntiddosCcPrecisionPolicy#field_name} */ readonly fieldName: string; /** * field type. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/antiddos_cc_precision_policy#field_type AntiddosCcPrecisionPolicy#field_type} */ readonly fieldType: string; /** * value. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/antiddos_cc_precision_policy#value AntiddosCcPrecisionPolicy#value} */ readonly value: string; /** * Configuration item value comparison method, can take values of equal, not_ Equal, include. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/antiddos_cc_precision_policy#value_operator AntiddosCcPrecisionPolicy#value_operator} */ readonly valueOperator: string; } export declare function antiddosCcPrecisionPolicyPolicyListStructToTerraform(struct?: AntiddosCcPrecisionPolicyPolicyListStruct | cdktf.IResolvable): any; export declare function antiddosCcPrecisionPolicyPolicyListStructToHclTerraform(struct?: AntiddosCcPrecisionPolicyPolicyListStruct | cdktf.IResolvable): any; export declare class AntiddosCcPrecisionPolicyPolicyListStructOutputReference 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(): AntiddosCcPrecisionPolicyPolicyListStruct | cdktf.IResolvable | undefined; set internalValue(value: AntiddosCcPrecisionPolicyPolicyListStruct | cdktf.IResolvable | undefined); private _fieldName?; get fieldName(): string; set fieldName(value: string); get fieldNameInput(): string; private _fieldType?; get fieldType(): string; set fieldType(value: string); get fieldTypeInput(): string; private _value?; get value(): string; set value(value: string); get valueInput(): string; private _valueOperator?; get valueOperator(): string; set valueOperator(value: string); get valueOperatorInput(): string; } export declare class AntiddosCcPrecisionPolicyPolicyListStructList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: AntiddosCcPrecisionPolicyPolicyListStruct[] | 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): AntiddosCcPrecisionPolicyPolicyListStructOutputReference; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/antiddos_cc_precision_policy tencentcloud_antiddos_cc_precision_policy} */ export declare class AntiddosCcPrecisionPolicy extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_antiddos_cc_precision_policy"; /** * Generates CDKTF code for importing a AntiddosCcPrecisionPolicy 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 AntiddosCcPrecisionPolicy to import * @param importFromId The id of the existing AntiddosCcPrecisionPolicy that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/antiddos_cc_precision_policy#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the AntiddosCcPrecisionPolicy 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/tencentcloudstack/tencentcloud/1.82.49/docs/resources/antiddos_cc_precision_policy tencentcloud_antiddos_cc_precision_policy} Resource * * @param scope The scope in which to define this construct * @param id The scoped construct ID. Must be unique amongst siblings in the same scope * @param options AntiddosCcPrecisionPolicyConfig */ constructor(scope: Construct, id: string, config: AntiddosCcPrecisionPolicyConfig); private _domain?; get domain(): string; set domain(value: string); get domainInput(): string; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _instanceId?; get instanceId(): string; set instanceId(value: string); get instanceIdInput(): string; private _ip?; get ip(): string; set ip(value: string); get ipInput(): string; private _policyAction?; get policyAction(): string; set policyAction(value: string); get policyActionInput(): string; private _protocol?; get protocol(): string; set protocol(value: string); get protocolInput(): string; private _policyList; get policyList(): AntiddosCcPrecisionPolicyPolicyListStructList; putPolicyList(value: AntiddosCcPrecisionPolicyPolicyListStruct[] | cdktf.IResolvable): void; get policyListInput(): any; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }