import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface ScfFunctionAliasConfig extends cdktf.TerraformMetaArguments { /** * Alias description information. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/scf_function_alias#description ScfFunctionAlias#description} */ readonly description?: string; /** * Function name. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/scf_function_alias#function_name ScfFunctionAlias#function_name} */ readonly functionName: string; /** * Master version pointed to by the alias. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/scf_function_alias#function_version ScfFunctionAlias#function_version} */ readonly functionVersion: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/scf_function_alias#id ScfFunctionAlias#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; /** * Alias name, which must be unique in the function, can contain 1 to 64 letters, digits, _, and -, and must begin with a letter. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/scf_function_alias#name ScfFunctionAlias#name} */ readonly name: string; /** * Function namespace. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/scf_function_alias#namespace ScfFunctionAlias#namespace} */ readonly namespace?: string; /** * routing_config block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/scf_function_alias#routing_config ScfFunctionAlias#routing_config} */ readonly routingConfig?: ScfFunctionAliasRoutingConfig; } export interface ScfFunctionAliasRoutingConfigAdditionalVersionMatches { /** * Rule requirements for range match:It should be described in an open or closed range, i.e., (a,b) or [a,b], where both a and b are integersRule requirements for exact match:Exact string match. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/scf_function_alias#expression ScfFunctionAlias#expression} */ readonly expression: string; /** * Matching rule key. When the API is called, pass in the key to route the request to the specified version based on the matching ruleHeader method:Enter invoke.headers.User for key and pass in RoutingKey:{User:value} when invoking a function through invoke for invocation based on rule matching. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/scf_function_alias#key ScfFunctionAlias#key} */ readonly key: string; /** * Match method. Valid values:range: Range matchexact: exact string match. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/scf_function_alias#method ScfFunctionAlias#method} */ readonly method: string; /** * Function version name. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/scf_function_alias#version ScfFunctionAlias#version} */ readonly version: string; } export declare function scfFunctionAliasRoutingConfigAdditionalVersionMatchesToTerraform(struct?: ScfFunctionAliasRoutingConfigAdditionalVersionMatches | cdktf.IResolvable): any; export declare function scfFunctionAliasRoutingConfigAdditionalVersionMatchesToHclTerraform(struct?: ScfFunctionAliasRoutingConfigAdditionalVersionMatches | cdktf.IResolvable): any; export declare class ScfFunctionAliasRoutingConfigAdditionalVersionMatchesOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @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(): ScfFunctionAliasRoutingConfigAdditionalVersionMatches | cdktf.IResolvable | undefined; set internalValue(value: ScfFunctionAliasRoutingConfigAdditionalVersionMatches | cdktf.IResolvable | undefined); private _expression?; get expression(): string; set expression(value: string); get expressionInput(): string; private _key?; get key(): string; set key(value: string); get keyInput(): string; private _method?; get method(): string; set method(value: string); get methodInput(): string; private _version?; get version(): string; set version(value: string); get versionInput(): string; } export declare class ScfFunctionAliasRoutingConfigAdditionalVersionMatchesList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: ScfFunctionAliasRoutingConfigAdditionalVersionMatches[] | cdktf.IResolvable; /** * @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): ScfFunctionAliasRoutingConfigAdditionalVersionMatchesOutputReference; } export interface ScfFunctionAliasRoutingConfigAdditionalVersionWeights { /** * Function version name. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/scf_function_alias#version ScfFunctionAlias#version} */ readonly version: string; /** * Version weight. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/scf_function_alias#weight ScfFunctionAlias#weight} */ readonly weight: number; } export declare function scfFunctionAliasRoutingConfigAdditionalVersionWeightsToTerraform(struct?: ScfFunctionAliasRoutingConfigAdditionalVersionWeights | cdktf.IResolvable): any; export declare function scfFunctionAliasRoutingConfigAdditionalVersionWeightsToHclTerraform(struct?: ScfFunctionAliasRoutingConfigAdditionalVersionWeights | cdktf.IResolvable): any; export declare class ScfFunctionAliasRoutingConfigAdditionalVersionWeightsOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @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(): ScfFunctionAliasRoutingConfigAdditionalVersionWeights | cdktf.IResolvable | undefined; set internalValue(value: ScfFunctionAliasRoutingConfigAdditionalVersionWeights | cdktf.IResolvable | undefined); private _version?; get version(): string; set version(value: string); get versionInput(): string; private _weight?; get weight(): number; set weight(value: number); get weightInput(): number; } export declare class ScfFunctionAliasRoutingConfigAdditionalVersionWeightsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: ScfFunctionAliasRoutingConfigAdditionalVersionWeights[] | cdktf.IResolvable; /** * @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): ScfFunctionAliasRoutingConfigAdditionalVersionWeightsOutputReference; } export interface ScfFunctionAliasRoutingConfig { /** * additional_version_matches block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/scf_function_alias#additional_version_matches ScfFunctionAlias#additional_version_matches} */ readonly additionalVersionMatches?: ScfFunctionAliasRoutingConfigAdditionalVersionMatches[] | cdktf.IResolvable; /** * additional_version_weights block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/scf_function_alias#additional_version_weights ScfFunctionAlias#additional_version_weights} */ readonly additionalVersionWeights?: ScfFunctionAliasRoutingConfigAdditionalVersionWeights[] | cdktf.IResolvable; } export declare function scfFunctionAliasRoutingConfigToTerraform(struct?: ScfFunctionAliasRoutingConfigOutputReference | ScfFunctionAliasRoutingConfig): any; export declare function scfFunctionAliasRoutingConfigToHclTerraform(struct?: ScfFunctionAliasRoutingConfigOutputReference | ScfFunctionAliasRoutingConfig): any; export declare class ScfFunctionAliasRoutingConfigOutputReference 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(): ScfFunctionAliasRoutingConfig | undefined; set internalValue(value: ScfFunctionAliasRoutingConfig | undefined); private _additionalVersionMatches; get additionalVersionMatches(): ScfFunctionAliasRoutingConfigAdditionalVersionMatchesList; putAdditionalVersionMatches(value: ScfFunctionAliasRoutingConfigAdditionalVersionMatches[] | cdktf.IResolvable): void; resetAdditionalVersionMatches(): void; get additionalVersionMatchesInput(): any; private _additionalVersionWeights; get additionalVersionWeights(): ScfFunctionAliasRoutingConfigAdditionalVersionWeightsList; putAdditionalVersionWeights(value: ScfFunctionAliasRoutingConfigAdditionalVersionWeights[] | cdktf.IResolvable): void; resetAdditionalVersionWeights(): void; get additionalVersionWeightsInput(): any; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/scf_function_alias tencentcloud_scf_function_alias} */ export declare class ScfFunctionAlias extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_scf_function_alias"; /** * Generates CDKTF code for importing a ScfFunctionAlias 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 ScfFunctionAlias to import * @param importFromId The id of the existing ScfFunctionAlias that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/scf_function_alias#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the ScfFunctionAlias 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/scf_function_alias tencentcloud_scf_function_alias} 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 ScfFunctionAliasConfig */ constructor(scope: Construct, id: string, config: ScfFunctionAliasConfig); private _description?; get description(): string; set description(value: string); resetDescription(): void; get descriptionInput(): string; private _functionName?; get functionName(): string; set functionName(value: string); get functionNameInput(): string; private _functionVersion?; get functionVersion(): string; set functionVersion(value: string); get functionVersionInput(): string; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _name?; get name(): string; set name(value: string); get nameInput(): string; private _namespace?; get namespace(): string; set namespace(value: string); resetNamespace(): void; get namespaceInput(): string; private _routingConfig; get routingConfig(): ScfFunctionAliasRoutingConfigOutputReference; putRoutingConfig(value: ScfFunctionAliasRoutingConfig): void; resetRoutingConfig(): void; get routingConfigInput(): ScfFunctionAliasRoutingConfig; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }