import * as core from "@terrascript/core"; export interface RoutingConfigArgs extends core.SchemaArgs { additionalVersionWeights?: | core.Map | core.MapOut; } export class RoutingConfig extends core.Schema { @core.attr(Number, { kind: "map" }) public additionalVersionWeights?: | core.Map | core.MapOut; } export interface AliasArgs extends core.ResourceArgs { /** * (Optional) Description of the alias. */ description?: string | core.StringOut; /** * (Required) Lambda Function name or ARN. */ functionName: string | core.StringOut; /** * (Required) Lambda function version for which you are creating the alias. Pattern: `(\$LATEST|[0-9]+) * . */ functionVersion: string | core.StringOut; /** * (Required) Name for the alias you are creating. Pattern: `(?!^[0-9]+$)([a-zA-Z0-9-_]+)` */ name: string | core.StringOut; /** * (Optional) The Lambda alias' route configuration settings. Fields documented below */ routingConfig?: RoutingConfig; } export class Alias extends core.Resource { /** * The Amazon Resource Name (ARN) identifying your Lambda function alias. */ @core.attr(String, { computed: true }) public arn!: string | core.StringOut; /** * (Optional) Description of the alias. */ @core.attr(String) public description?: string | core.StringOut; /** * (Required) Lambda Function name or ARN. */ @core.attr(String) public functionName!: string | core.StringOut; /** * (Required) Lambda function version for which you are creating the alias. Pattern: `(\$LATEST|[0-9]+) * . */ @core.attr(String) public functionVersion!: string | core.StringOut; @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * The ARN to be used for invoking Lambda Function from API Gateway - to be used in [`aws_api_gateway_i * ntegration`](/docs/providers/aws/r/api_gateway_integration.html)'s `uri` */ @core.attr(String, { computed: true }) public invokeArn!: string | core.StringOut; /** * (Required) Name for the alias you are creating. Pattern: `(?!^[0-9]+$)([a-zA-Z0-9-_]+)` */ @core.attr(String) public name!: string | core.StringOut; /** * (Optional) The Lambda alias' route configuration settings. Fields documented below */ @core.attr(RoutingConfig) public routingConfig?: RoutingConfig; constructor(name: string, args?: AliasArgs) { super(name, "aws_lambda_alias", args); } public override getNamespace(): string { return "aws_lambda"; } }