import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface TseCngwNetworkAccessControlConfig extends cdktf.TerraformMetaArguments { /** * gateway ID. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tse_cngw_network_access_control#gateway_id TseCngwNetworkAccessControl#gateway_id} */ readonly gatewayId: string; /** * gateway group ID. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tse_cngw_network_access_control#group_id TseCngwNetworkAccessControl#group_id} */ readonly groupId: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tse_cngw_network_access_control#id TseCngwNetworkAccessControl#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; /** * network id. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tse_cngw_network_access_control#network_id TseCngwNetworkAccessControl#network_id} */ readonly networkId: string; /** * access_control block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tse_cngw_network_access_control#access_control TseCngwNetworkAccessControl#access_control} */ readonly accessControl?: TseCngwNetworkAccessControlAccessControl; } export interface TseCngwNetworkAccessControlAccessControl { /** * Black list. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tse_cngw_network_access_control#cidr_black_list TseCngwNetworkAccessControl#cidr_black_list} */ readonly cidrBlackList?: string[]; /** * White list. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tse_cngw_network_access_control#cidr_white_list TseCngwNetworkAccessControl#cidr_white_list} */ readonly cidrWhiteList?: string[]; /** * Access mode: `Whitelist`, `Blacklist`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tse_cngw_network_access_control#mode TseCngwNetworkAccessControl#mode} */ readonly mode?: string; } export declare function tseCngwNetworkAccessControlAccessControlToTerraform(struct?: TseCngwNetworkAccessControlAccessControlOutputReference | TseCngwNetworkAccessControlAccessControl): any; export declare function tseCngwNetworkAccessControlAccessControlToHclTerraform(struct?: TseCngwNetworkAccessControlAccessControlOutputReference | TseCngwNetworkAccessControlAccessControl): any; export declare class TseCngwNetworkAccessControlAccessControlOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): TseCngwNetworkAccessControlAccessControl | undefined; set internalValue(value: TseCngwNetworkAccessControlAccessControl | undefined); private _cidrBlackList?; get cidrBlackList(): string[]; set cidrBlackList(value: string[]); resetCidrBlackList(): void; get cidrBlackListInput(): string[]; private _cidrWhiteList?; get cidrWhiteList(): string[]; set cidrWhiteList(value: string[]); resetCidrWhiteList(): void; get cidrWhiteListInput(): string[]; private _mode?; get mode(): string; set mode(value: string); resetMode(): void; get modeInput(): string; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tse_cngw_network_access_control tencentcloud_tse_cngw_network_access_control} */ export declare class TseCngwNetworkAccessControl extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_tse_cngw_network_access_control"; /** * Generates CDKTF code for importing a TseCngwNetworkAccessControl 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 TseCngwNetworkAccessControl to import * @param importFromId The id of the existing TseCngwNetworkAccessControl that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tse_cngw_network_access_control#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the TseCngwNetworkAccessControl 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/tse_cngw_network_access_control tencentcloud_tse_cngw_network_access_control} 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 TseCngwNetworkAccessControlConfig */ constructor(scope: Construct, id: string, config: TseCngwNetworkAccessControlConfig); private _gatewayId?; get gatewayId(): string; set gatewayId(value: string); get gatewayIdInput(): string; private _groupId?; get groupId(): string; set groupId(value: string); get groupIdInput(): string; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _networkId?; get networkId(): string; set networkId(value: string); get networkIdInput(): string; private _accessControl; get accessControl(): TseCngwNetworkAccessControlAccessControlOutputReference; putAccessControl(value: TseCngwNetworkAccessControlAccessControl): void; resetAccessControl(): void; get accessControlInput(): TseCngwNetworkAccessControlAccessControl; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }