import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface ApiGatewayUsagePlanConfig extends cdktf.TerraformMetaArguments { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/api_gateway_usage_plan#id ApiGatewayUsagePlan#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; /** * Total number of requests allowed. Valid values: -1, [1,99999999]. The default value is -1, which indicates no limit. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/api_gateway_usage_plan#max_request_num ApiGatewayUsagePlan#max_request_num} */ readonly maxRequestNum?: number; /** * Limit of requests per second. Valid values: -1, [1,2000]. The default value is -1, which indicates no limit. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/api_gateway_usage_plan#max_request_num_pre_sec ApiGatewayUsagePlan#max_request_num_pre_sec} */ readonly maxRequestNumPreSec?: number; /** * Custom usage plan description. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/api_gateway_usage_plan#usage_plan_desc ApiGatewayUsagePlan#usage_plan_desc} */ readonly usagePlanDesc?: string; /** * Custom usage plan name. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/api_gateway_usage_plan#usage_plan_name ApiGatewayUsagePlan#usage_plan_name} */ readonly usagePlanName: string; } export interface ApiGatewayUsagePlanAttachListStruct { } export declare function apiGatewayUsagePlanAttachListStructToTerraform(struct?: ApiGatewayUsagePlanAttachListStruct): any; export declare function apiGatewayUsagePlanAttachListStructToHclTerraform(struct?: ApiGatewayUsagePlanAttachListStruct): any; export declare class ApiGatewayUsagePlanAttachListStructOutputReference 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(): ApiGatewayUsagePlanAttachListStruct | undefined; set internalValue(value: ApiGatewayUsagePlanAttachListStruct | undefined); get apiId(): any; get apiName(): any; get createTime(): any; get environment(): any; get method(): any; get modifyTime(): any; get path(): any; get serviceId(): any; get serviceName(): any; } export declare class ApiGatewayUsagePlanAttachListStructList 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): ApiGatewayUsagePlanAttachListStructOutputReference; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/api_gateway_usage_plan tencentcloud_api_gateway_usage_plan} */ export declare class ApiGatewayUsagePlan extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_api_gateway_usage_plan"; /** * Generates CDKTF code for importing a ApiGatewayUsagePlan 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 ApiGatewayUsagePlan to import * @param importFromId The id of the existing ApiGatewayUsagePlan that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/api_gateway_usage_plan#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the ApiGatewayUsagePlan 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_usage_plan tencentcloud_api_gateway_usage_plan} 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 ApiGatewayUsagePlanConfig */ constructor(scope: Construct, id: string, config: ApiGatewayUsagePlanConfig); get attachApiKeys(): any; private _attachList; get attachList(): ApiGatewayUsagePlanAttachListStructList; get createTime(): any; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _maxRequestNum?; get maxRequestNum(): number; set maxRequestNum(value: number); resetMaxRequestNum(): void; get maxRequestNumInput(): number; private _maxRequestNumPreSec?; get maxRequestNumPreSec(): number; set maxRequestNumPreSec(value: number); resetMaxRequestNumPreSec(): void; get maxRequestNumPreSecInput(): number; get modifyTime(): any; private _usagePlanDesc?; get usagePlanDesc(): string; set usagePlanDesc(value: string); resetUsagePlanDesc(): void; get usagePlanDescInput(): string; private _usagePlanName?; get usagePlanName(): string; set usagePlanName(value: string); get usagePlanNameInput(): string; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }