import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface KubernetesClusterEndpointConfig extends cdktf.TerraformMetaArguments { /** * Specify cluster ID. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_endpoint#cluster_id KubernetesClusterEndpoint#cluster_id} */ readonly clusterId: string; /** * Open internet access or not. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_endpoint#cluster_internet KubernetesClusterEndpoint#cluster_internet} */ readonly clusterInternet?: boolean | cdktf.IResolvable; /** * Domain name for cluster Kube-apiserver internet access. Be careful if you modify value of this parameter, the cluster_external_endpoint value may be changed automatically too. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_endpoint#cluster_internet_domain KubernetesClusterEndpoint#cluster_internet_domain} */ readonly clusterInternetDomain?: string; /** * Specify security group, NOTE: This argument must not be empty if cluster internet enabled. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_endpoint#cluster_internet_security_group KubernetesClusterEndpoint#cluster_internet_security_group} */ readonly clusterInternetSecurityGroup?: string; /** * Open intranet access or not. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_endpoint#cluster_intranet KubernetesClusterEndpoint#cluster_intranet} */ readonly clusterIntranet?: boolean | cdktf.IResolvable; /** * Domain name for cluster Kube-apiserver intranet access. Be careful if you modify value of this parameter, the pgw_endpoint value may be changed automatically too. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_endpoint#cluster_intranet_domain KubernetesClusterEndpoint#cluster_intranet_domain} */ readonly clusterIntranetDomain?: string; /** * Subnet id who can access this independent cluster, this field must and can only set when `cluster_intranet` is true. `cluster_intranet_subnet_id` can not modify once be set. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_endpoint#cluster_intranet_subnet_id KubernetesClusterEndpoint#cluster_intranet_subnet_id} */ readonly clusterIntranetSubnetId?: string; /** * The LB parameter. Only used for public network access. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_endpoint#extensive_parameters KubernetesClusterEndpoint#extensive_parameters} */ readonly extensiveParameters?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_endpoint#id KubernetesClusterEndpoint#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; /** * Security policies for managed cluster internet, like:'192.168.1.0/24' or '113.116.51.27', '0.0.0.0/0' means all. This field can only set when field `cluster_deploy_type` is 'MANAGED_CLUSTER' and `cluster_internet` is true. `managed_cluster_internet_security_policies` can not delete or empty once be set. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_endpoint#managed_cluster_internet_security_policies KubernetesClusterEndpoint#managed_cluster_internet_security_policies} */ readonly managedClusterInternetSecurityPolicies?: string[]; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_endpoint tencentcloud_kubernetes_cluster_endpoint} */ export declare class KubernetesClusterEndpoint extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_kubernetes_cluster_endpoint"; /** * Generates CDKTF code for importing a KubernetesClusterEndpoint 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 KubernetesClusterEndpoint to import * @param importFromId The id of the existing KubernetesClusterEndpoint that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_endpoint#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the KubernetesClusterEndpoint 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/kubernetes_cluster_endpoint tencentcloud_kubernetes_cluster_endpoint} 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 KubernetesClusterEndpointConfig */ constructor(scope: Construct, id: string, config: KubernetesClusterEndpointConfig); get certificationAuthority(): any; get clusterDeployType(): any; get clusterExternalEndpoint(): any; private _clusterId?; get clusterId(): string; set clusterId(value: string); get clusterIdInput(): string; private _clusterInternet?; get clusterInternet(): boolean | cdktf.IResolvable; set clusterInternet(value: boolean | cdktf.IResolvable); resetClusterInternet(): void; get clusterInternetInput(): any; private _clusterInternetDomain?; get clusterInternetDomain(): string; set clusterInternetDomain(value: string); resetClusterInternetDomain(): void; get clusterInternetDomainInput(): string; private _clusterInternetSecurityGroup?; get clusterInternetSecurityGroup(): string; set clusterInternetSecurityGroup(value: string); resetClusterInternetSecurityGroup(): void; get clusterInternetSecurityGroupInput(): string; private _clusterIntranet?; get clusterIntranet(): boolean | cdktf.IResolvable; set clusterIntranet(value: boolean | cdktf.IResolvable); resetClusterIntranet(): void; get clusterIntranetInput(): any; private _clusterIntranetDomain?; get clusterIntranetDomain(): string; set clusterIntranetDomain(value: string); resetClusterIntranetDomain(): void; get clusterIntranetDomainInput(): string; private _clusterIntranetSubnetId?; get clusterIntranetSubnetId(): string; set clusterIntranetSubnetId(value: string); resetClusterIntranetSubnetId(): void; get clusterIntranetSubnetIdInput(): string; get domain(): any; private _extensiveParameters?; get extensiveParameters(): string; set extensiveParameters(value: string); resetExtensiveParameters(): void; get extensiveParametersInput(): string; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; get kubeConfig(): any; get kubeConfigIntranet(): any; private _managedClusterInternetSecurityPolicies?; get managedClusterInternetSecurityPolicies(): string[]; set managedClusterInternetSecurityPolicies(value: string[]); resetManagedClusterInternetSecurityPolicies(): void; get managedClusterInternetSecurityPoliciesInput(): string[]; get password(): any; get pgwEndpoint(): any; get userName(): any; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }