import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface VpcRoutePolicyEntriesConfig extends cdktf.TerraformMetaArguments { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/vpc_route_policy_entries#id VpcRoutePolicyEntries#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; /** * Specifies the instance ID of the route reception policy. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/vpc_route_policy_entries#route_policy_id VpcRoutePolicyEntries#route_policy_id} */ readonly routePolicyId: string; /** * route_policy_entry_set block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/vpc_route_policy_entries#route_policy_entry_set VpcRoutePolicyEntries#route_policy_entry_set} */ readonly routePolicyEntrySet: VpcRoutePolicyEntriesRoutePolicyEntrySet[] | cdktf.IResolvable; } export interface VpcRoutePolicyEntriesRoutePolicyEntrySet { /** * Action. * DROP: drop. * DISABLE: receive and disable. * ACCEPT: receive and enable. * Note: This field may return null, indicating that no valid value was found. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/vpc_route_policy_entries#action VpcRoutePolicyEntries#action} */ readonly action?: string; /** * Destination ip range. * Note: This field may return null, indicating that no valid value was found. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/vpc_route_policy_entries#cidr_block VpcRoutePolicyEntries#cidr_block} */ readonly cidrBlock?: string; /** * Describes the routing strategy rule. * Note: This field may return null, indicating that no valid value was found. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/vpc_route_policy_entries#description VpcRoutePolicyEntries#description} */ readonly description?: string; /** * Gateway unique ID. * Note: This field may return null, indicating that no valid value was found. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/vpc_route_policy_entries#gateway_id VpcRoutePolicyEntries#gateway_id} */ readonly gatewayId?: string; /** * Next hop type. types currently supported:. * CVM: cloud virtual machine with public network gateway type. * VPN: vpn gateway. * DIRECTCONNECT: direct connect gateway. * PEERCONNECTION: peering connection. * HAVIP: high availability virtual ip. * NAT: specifies the nat gateway. * EIP: specifies the public ip address of the cloud virtual machine. * LOCAL_GATEWAY: specifies the local gateway. * PVGW: pvgw gateway. * Note: This field may return null, indicating that no valid value was found. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/vpc_route_policy_entries#gateway_type VpcRoutePolicyEntries#gateway_type} */ readonly gatewayType?: string; /** * Priority. a smaller value indicates a higher priority. * Note: This field may return null, indicating that no valid value was found. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/vpc_route_policy_entries#priority VpcRoutePolicyEntries#priority} */ readonly priority?: number; /** * Routing Type * * Specifies the USER-customized data type. * NETD: specifies the route for network detection. * CCN: CCN route. * Note: This field may return null, indicating that no valid value was found. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/vpc_route_policy_entries#route_type VpcRoutePolicyEntries#route_type} */ readonly routeType?: string; } export declare function vpcRoutePolicyEntriesRoutePolicyEntrySetToTerraform(struct?: VpcRoutePolicyEntriesRoutePolicyEntrySet | cdktf.IResolvable): any; export declare function vpcRoutePolicyEntriesRoutePolicyEntrySetToHclTerraform(struct?: VpcRoutePolicyEntriesRoutePolicyEntrySet | cdktf.IResolvable): any; export declare class VpcRoutePolicyEntriesRoutePolicyEntrySetOutputReference 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(): VpcRoutePolicyEntriesRoutePolicyEntrySet | cdktf.IResolvable | undefined; set internalValue(value: VpcRoutePolicyEntriesRoutePolicyEntrySet | cdktf.IResolvable | undefined); private _action?; get action(): string; set action(value: string); resetAction(): void; get actionInput(): string; private _cidrBlock?; get cidrBlock(): string; set cidrBlock(value: string); resetCidrBlock(): void; get cidrBlockInput(): string; get createdTime(): any; private _description?; get description(): string; set description(value: string); resetDescription(): void; get descriptionInput(): string; private _gatewayId?; get gatewayId(): string; set gatewayId(value: string); resetGatewayId(): void; get gatewayIdInput(): string; private _gatewayType?; get gatewayType(): string; set gatewayType(value: string); resetGatewayType(): void; get gatewayTypeInput(): string; private _priority?; get priority(): number; set priority(value: number); resetPriority(): void; get priorityInput(): number; get region(): any; get routePolicyEntryId(): any; private _routeType?; get routeType(): string; set routeType(value: string); resetRouteType(): void; get routeTypeInput(): string; } export declare class VpcRoutePolicyEntriesRoutePolicyEntrySetList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: VpcRoutePolicyEntriesRoutePolicyEntrySet[] | 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): VpcRoutePolicyEntriesRoutePolicyEntrySetOutputReference; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/vpc_route_policy_entries tencentcloud_vpc_route_policy_entries} */ export declare class VpcRoutePolicyEntries extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_vpc_route_policy_entries"; /** * Generates CDKTF code for importing a VpcRoutePolicyEntries 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 VpcRoutePolicyEntries to import * @param importFromId The id of the existing VpcRoutePolicyEntries that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/vpc_route_policy_entries#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the VpcRoutePolicyEntries 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/vpc_route_policy_entries tencentcloud_vpc_route_policy_entries} 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 VpcRoutePolicyEntriesConfig */ constructor(scope: Construct, id: string, config: VpcRoutePolicyEntriesConfig); private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _routePolicyId?; get routePolicyId(): string; set routePolicyId(value: string); get routePolicyIdInput(): string; private _routePolicyEntrySet; get routePolicyEntrySet(): VpcRoutePolicyEntriesRoutePolicyEntrySetList; putRoutePolicyEntrySet(value: VpcRoutePolicyEntriesRoutePolicyEntrySet[] | cdktf.IResolvable): void; get routePolicyEntrySetInput(): any; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }