import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface DayuDdosIpAttachmentV2Config extends cdktf.TerraformMetaArguments { /** * Anti-DDoS instance ID. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/dayu_ddos_ip_attachment_v2#bgp_instance_id DayuDdosIpAttachmentV2#bgp_instance_id} */ readonly bgpInstanceId: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/dayu_ddos_ip_attachment_v2#id DayuDdosIpAttachmentV2#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; /** * bound_ip_list block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/dayu_ddos_ip_attachment_v2#bound_ip_list DayuDdosIpAttachmentV2#bound_ip_list} */ readonly boundIpList?: DayuDdosIpAttachmentV2BoundIpListStruct[] | cdktf.IResolvable; } export interface DayuDdosIpAttachmentV2BoundIpListStruct { /** * Category of product that can be bound. Valid values: public (CVM and CLB), bm (BM), eni (ENI), vpngw (VPN gateway), natgw (NAT gateway), waf (WAF), fpc (financial products), gaap (GAAP), and other (hosted IP). This field is required when you perform binding. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/dayu_ddos_ip_attachment_v2#biz_type DayuDdosIpAttachmentV2#biz_type} */ readonly bizType?: string; /** * Sub-product category. Valid values: cvm (CVM), lb (Load balancer), eni (ENI), vpngw (VPN gateway), natgw (NAT gateway), waf (WAF), fpc (financial products), gaap (GAAP), eip (BM EIP) and other (managed IP). This field is required when you perform binding. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/dayu_ddos_ip_attachment_v2#device_type DayuDdosIpAttachmentV2#device_type} */ readonly deviceType?: string; /** * Anti-DDoS instance ID of the IP. This field is required only when the instance is bound to an IP. For example, this field InstanceId will be eni-* if the instance ID is bound to an ENI IP; none if there is no instance to bind to a managed IP. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/dayu_ddos_ip_attachment_v2#instance_id DayuDdosIpAttachmentV2#instance_id} */ readonly instanceId?: string; /** * IP address. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/dayu_ddos_ip_attachment_v2#ip DayuDdosIpAttachmentV2#ip} */ readonly ip: string; } export declare function dayuDdosIpAttachmentV2BoundIpListStructToTerraform(struct?: DayuDdosIpAttachmentV2BoundIpListStruct | cdktf.IResolvable): any; export declare function dayuDdosIpAttachmentV2BoundIpListStructToHclTerraform(struct?: DayuDdosIpAttachmentV2BoundIpListStruct | cdktf.IResolvable): any; export declare class DayuDdosIpAttachmentV2BoundIpListStructOutputReference 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(): DayuDdosIpAttachmentV2BoundIpListStruct | cdktf.IResolvable | undefined; set internalValue(value: DayuDdosIpAttachmentV2BoundIpListStruct | cdktf.IResolvable | undefined); private _bizType?; get bizType(): string; set bizType(value: string); resetBizType(): void; get bizTypeInput(): string; private _deviceType?; get deviceType(): string; set deviceType(value: string); resetDeviceType(): void; get deviceTypeInput(): string; private _instanceId?; get instanceId(): string; set instanceId(value: string); resetInstanceId(): void; get instanceIdInput(): string; private _ip?; get ip(): string; set ip(value: string); get ipInput(): string; } export declare class DayuDdosIpAttachmentV2BoundIpListStructList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: DayuDdosIpAttachmentV2BoundIpListStruct[] | 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): DayuDdosIpAttachmentV2BoundIpListStructOutputReference; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/dayu_ddos_ip_attachment_v2 tencentcloud_dayu_ddos_ip_attachment_v2} */ export declare class DayuDdosIpAttachmentV2 extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_dayu_ddos_ip_attachment_v2"; /** * Generates CDKTF code for importing a DayuDdosIpAttachmentV2 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 DayuDdosIpAttachmentV2 to import * @param importFromId The id of the existing DayuDdosIpAttachmentV2 that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/dayu_ddos_ip_attachment_v2#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the DayuDdosIpAttachmentV2 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/dayu_ddos_ip_attachment_v2 tencentcloud_dayu_ddos_ip_attachment_v2} 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 DayuDdosIpAttachmentV2Config */ constructor(scope: Construct, id: string, config: DayuDdosIpAttachmentV2Config); private _bgpInstanceId?; get bgpInstanceId(): string; set bgpInstanceId(value: string); get bgpInstanceIdInput(): string; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _boundIpList; get boundIpList(): DayuDdosIpAttachmentV2BoundIpListStructList; putBoundIpList(value: DayuDdosIpAttachmentV2BoundIpListStruct[] | cdktf.IResolvable): void; resetBoundIpList(): void; get boundIpListInput(): any; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }