import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface ClbFunctionTargetsAttachmentConfig extends cdktf.TerraformMetaArguments { /** * The domain name of the target forwarding rule. If the LocationId parameter has been entered, this parameter will not take effect. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/clb_function_targets_attachment#domain ClbFunctionTargetsAttachment#domain} */ readonly domain?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/clb_function_targets_attachment#id ClbFunctionTargetsAttachment#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; /** * Load Balancer Listener ID. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/clb_function_targets_attachment#listener_id ClbFunctionTargetsAttachment#listener_id} */ readonly listenerId: string; /** * Load Balancer Instance ID. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/clb_function_targets_attachment#load_balancer_id ClbFunctionTargetsAttachment#load_balancer_id} */ readonly loadBalancerId: string; /** * The ID of the target forwarding rule. When binding the cloud function to a layer-7 forwarding rule, this parameter or the Domain+Url parameter must be entered. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/clb_function_targets_attachment#location_id ClbFunctionTargetsAttachment#location_id} */ readonly locationId?: string; /** * The URL of the target forwarding rule. If the LocationId parameter has been entered, this parameter will not take effect. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/clb_function_targets_attachment#url ClbFunctionTargetsAttachment#url} */ readonly url?: string; /** * function_targets block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/clb_function_targets_attachment#function_targets ClbFunctionTargetsAttachment#function_targets} */ readonly functionTargets: ClbFunctionTargetsAttachmentFunctionTargets; } export interface ClbFunctionTargetsAttachmentFunctionTargetsFunction { /** * The name of function. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/clb_function_targets_attachment#function_name ClbFunctionTargetsAttachment#function_name} */ readonly functionName: string; /** * The namespace of function. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/clb_function_targets_attachment#function_namespace ClbFunctionTargetsAttachment#function_namespace} */ readonly functionNamespace: string; /** * The version name or alias of the function. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/clb_function_targets_attachment#function_qualifier ClbFunctionTargetsAttachment#function_qualifier} */ readonly functionQualifier: string; /** * Identifies the type of FunctionQualifier parameter, possible values: VERSION, ALIAS.Note: This field may return null, indicating that no valid value can be obtained. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/clb_function_targets_attachment#function_qualifier_type ClbFunctionTargetsAttachment#function_qualifier_type} */ readonly functionQualifierType?: string; } export declare function clbFunctionTargetsAttachmentFunctionTargetsFunctionToTerraform(struct?: ClbFunctionTargetsAttachmentFunctionTargetsFunctionOutputReference | ClbFunctionTargetsAttachmentFunctionTargetsFunction): any; export declare function clbFunctionTargetsAttachmentFunctionTargetsFunctionToHclTerraform(struct?: ClbFunctionTargetsAttachmentFunctionTargetsFunctionOutputReference | ClbFunctionTargetsAttachmentFunctionTargetsFunction): any; export declare class ClbFunctionTargetsAttachmentFunctionTargetsFunctionOutputReference 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(): ClbFunctionTargetsAttachmentFunctionTargetsFunction | undefined; set internalValue(value: ClbFunctionTargetsAttachmentFunctionTargetsFunction | undefined); private _functionName?; get functionName(): string; set functionName(value: string); get functionNameInput(): string; private _functionNamespace?; get functionNamespace(): string; set functionNamespace(value: string); get functionNamespaceInput(): string; private _functionQualifier?; get functionQualifier(): string; set functionQualifier(value: string); get functionQualifierInput(): string; private _functionQualifierType?; get functionQualifierType(): string; set functionQualifierType(value: string); resetFunctionQualifierType(): void; get functionQualifierTypeInput(): string; } export interface ClbFunctionTargetsAttachmentFunctionTargets { /** * Weight. The default is `10`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/clb_function_targets_attachment#weight ClbFunctionTargetsAttachment#weight} */ readonly weight?: number; /** * function block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/clb_function_targets_attachment#function ClbFunctionTargetsAttachment#function} */ readonly function: ClbFunctionTargetsAttachmentFunctionTargetsFunction; } export declare function clbFunctionTargetsAttachmentFunctionTargetsToTerraform(struct?: ClbFunctionTargetsAttachmentFunctionTargetsOutputReference | ClbFunctionTargetsAttachmentFunctionTargets): any; export declare function clbFunctionTargetsAttachmentFunctionTargetsToHclTerraform(struct?: ClbFunctionTargetsAttachmentFunctionTargetsOutputReference | ClbFunctionTargetsAttachmentFunctionTargets): any; export declare class ClbFunctionTargetsAttachmentFunctionTargetsOutputReference 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(): ClbFunctionTargetsAttachmentFunctionTargets | undefined; set internalValue(value: ClbFunctionTargetsAttachmentFunctionTargets | undefined); private _weight?; get weight(): number; set weight(value: number); resetWeight(): void; get weightInput(): number; private _function; get function(): ClbFunctionTargetsAttachmentFunctionTargetsFunctionOutputReference; putFunction(value: ClbFunctionTargetsAttachmentFunctionTargetsFunction): void; get functionInput(): ClbFunctionTargetsAttachmentFunctionTargetsFunction; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/clb_function_targets_attachment tencentcloud_clb_function_targets_attachment} */ export declare class ClbFunctionTargetsAttachment extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_clb_function_targets_attachment"; /** * Generates CDKTF code for importing a ClbFunctionTargetsAttachment 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 ClbFunctionTargetsAttachment to import * @param importFromId The id of the existing ClbFunctionTargetsAttachment that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/clb_function_targets_attachment#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the ClbFunctionTargetsAttachment 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/clb_function_targets_attachment tencentcloud_clb_function_targets_attachment} 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 ClbFunctionTargetsAttachmentConfig */ constructor(scope: Construct, id: string, config: ClbFunctionTargetsAttachmentConfig); private _domain?; get domain(): string; set domain(value: string); resetDomain(): void; get domainInput(): string; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _listenerId?; get listenerId(): string; set listenerId(value: string); get listenerIdInput(): string; private _loadBalancerId?; get loadBalancerId(): string; set loadBalancerId(value: string); get loadBalancerIdInput(): string; private _locationId?; get locationId(): string; set locationId(value: string); resetLocationId(): void; get locationIdInput(): string; private _url?; get url(): string; set url(value: string); resetUrl(): void; get urlInput(): string; private _functionTargets; get functionTargets(): ClbFunctionTargetsAttachmentFunctionTargetsOutputReference; putFunctionTargets(value: ClbFunctionTargetsAttachmentFunctionTargets): void; get functionTargetsInput(): ClbFunctionTargetsAttachmentFunctionTargets; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }