import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface ApiGatewayServiceConfig extends cdktf.TerraformMetaArguments { /** * Self-deployed cluster name, which is used to specify the self-deployed cluster where the service is to be created. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/api_gateway_service#exclusive_set_name ApiGatewayService#exclusive_set_name} */ readonly exclusiveSetName?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/api_gateway_service#id ApiGatewayService#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; /** * Exclusive instance ID. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/api_gateway_service#instance_id ApiGatewayService#instance_id} */ readonly instanceId?: string; /** * IP version number. Valid values: `IPv4`, `IPv6`. Default value: `IPv4`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/api_gateway_service#ip_version ApiGatewayService#ip_version} */ readonly ipVersion?: string; /** * Network type list, which is used to specify the supported network types. Valid values: `INNER`, `OUTER`. `INNER` indicates access over private network, and `OUTER` indicates access over public network. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/api_gateway_service#net_type ApiGatewayService#net_type} */ readonly netType: string[]; /** * API QPS value. Enter a positive number to limit the API query rate per second `QPS`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/api_gateway_service#pre_limit ApiGatewayService#pre_limit} */ readonly preLimit?: number; /** * Service frontend request type. Valid values: `http`, `https`, `http&https`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/api_gateway_service#protocol ApiGatewayService#protocol} */ readonly protocol: string; /** * API QPS value. Enter a positive number to limit the API query rate per second `QPS`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/api_gateway_service#release_limit ApiGatewayService#release_limit} */ readonly releaseLimit?: number; /** * Custom service description. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/api_gateway_service#service_desc ApiGatewayService#service_desc} */ readonly serviceDesc?: string; /** * Custom service name. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/api_gateway_service#service_name ApiGatewayService#service_name} */ readonly serviceName: string; /** * Tag description list. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/api_gateway_service#tags ApiGatewayService#tags} */ readonly tags?: { [key: string]: string; }; /** * API QPS value. Enter a positive number to limit the API query rate per second `QPS`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/api_gateway_service#test_limit ApiGatewayService#test_limit} */ readonly testLimit?: number; /** * VPC ID. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/api_gateway_service#uniq_vpc_id ApiGatewayService#uniq_vpc_id} */ readonly uniqVpcId?: string; } export interface ApiGatewayServiceApiListStruct { } export declare function apiGatewayServiceApiListStructToTerraform(struct?: ApiGatewayServiceApiListStruct): any; export declare function apiGatewayServiceApiListStructToHclTerraform(struct?: ApiGatewayServiceApiListStruct): any; export declare class ApiGatewayServiceApiListStructOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @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(): ApiGatewayServiceApiListStruct | undefined; set internalValue(value: ApiGatewayServiceApiListStruct | undefined); get apiDesc(): any; get apiId(): any; get apiName(): any; get method(): any; get path(): any; } export declare class ApiGatewayServiceApiListStructList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; /** * @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): ApiGatewayServiceApiListStructOutputReference; } export interface ApiGatewayServiceUsagePlanListStruct { } export declare function apiGatewayServiceUsagePlanListStructToTerraform(struct?: ApiGatewayServiceUsagePlanListStruct): any; export declare function apiGatewayServiceUsagePlanListStructToHclTerraform(struct?: ApiGatewayServiceUsagePlanListStruct): any; export declare class ApiGatewayServiceUsagePlanListStructOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @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(): ApiGatewayServiceUsagePlanListStruct | undefined; set internalValue(value: ApiGatewayServiceUsagePlanListStruct | undefined); get apiId(): any; get bindType(): any; get usagePlanId(): any; get usagePlanName(): any; } export declare class ApiGatewayServiceUsagePlanListStructList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; /** * @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): ApiGatewayServiceUsagePlanListStructOutputReference; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/api_gateway_service tencentcloud_api_gateway_service} */ export declare class ApiGatewayService extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_api_gateway_service"; /** * Generates CDKTF code for importing a ApiGatewayService 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 ApiGatewayService to import * @param importFromId The id of the existing ApiGatewayService that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/api_gateway_service#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the ApiGatewayService 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/api_gateway_service tencentcloud_api_gateway_service} 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 ApiGatewayServiceConfig */ constructor(scope: Construct, id: string, config: ApiGatewayServiceConfig); private _apiList; get apiList(): ApiGatewayServiceApiListStructList; get createTime(): any; private _exclusiveSetName?; get exclusiveSetName(): string; set exclusiveSetName(value: string); resetExclusiveSetName(): void; get exclusiveSetNameInput(): string; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; get innerHttpPort(): any; get innerHttpsPort(): any; private _instanceId?; get instanceId(): string; set instanceId(value: string); resetInstanceId(): void; get instanceIdInput(): string; get internalSubDomain(): any; private _ipVersion?; get ipVersion(): string; set ipVersion(value: string); resetIpVersion(): void; get ipVersionInput(): string; get modifyTime(): any; private _netType?; get netType(): string[]; set netType(value: string[]); get netTypeInput(): string[]; get outerSubDomain(): any; private _preLimit?; get preLimit(): number; set preLimit(value: number); resetPreLimit(): void; get preLimitInput(): number; private _protocol?; get protocol(): string; set protocol(value: string); get protocolInput(): string; private _releaseLimit?; get releaseLimit(): number; set releaseLimit(value: number); resetReleaseLimit(): void; get releaseLimitInput(): number; private _serviceDesc?; get serviceDesc(): string; set serviceDesc(value: string); resetServiceDesc(): void; get serviceDescInput(): string; private _serviceName?; get serviceName(): string; set serviceName(value: string); get serviceNameInput(): string; private _tags?; get tags(): { [key: string]: string; }; set tags(value: { [key: string]: string; }); resetTags(): void; get tagsInput(): { [key: string]: string; }; private _testLimit?; get testLimit(): number; set testLimit(value: number); resetTestLimit(): void; get testLimitInput(): number; private _uniqVpcId?; get uniqVpcId(): string; set uniqVpcId(value: string); resetUniqVpcId(): void; get uniqVpcIdInput(): string; private _usagePlanList; get usagePlanList(): ApiGatewayServiceUsagePlanListStructList; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }