import { Construct } from '@aws-cdk/cdk'; import { FunctionRef } from './lambda-ref'; import { Version } from './lambda.generated'; /** * Properties for a new Lambda version */ export interface FunctionVersionProps { /** * SHA256 of the version of the Lambda source code * * Specify to validate that you're deploying the right version. * * @default No validation is performed */ codeSha256?: string; /** * Description of the version * * @default Description of the Lambda */ description?: string; /** * Function to get the value of */ lambda: FunctionRef; } /** * A single newly-deployed version of a Lambda function. * * This object exists to--at deploy time--query the "then-current" version of * the Lambda function that it refers to. This Version object can then be * used in `Alias` to refer to a particular deployment of a Lambda. * * This means that for every new update you deploy to your Lambda (using the * CDK and Aliases), you must always create a new Version object. In * particular, it must have a different name, so that a new resource is * created. * * If you want to ensure that you're associating the right version with * the right deployment, specify the `codeSha256` property while * creating the `Version. */ export declare class FunctionVersion extends Construct { /** * The most recently deployed version of this function. */ readonly functionVersion: Version; /** * Lambda object this version is associated with */ readonly lambda: FunctionRef; constructor(parent: Construct, name: string, props: FunctionVersionProps); }