# FunctionDefinitionVersionProperty

A function definition version contains a list of functions.

> After you create a function definition version that contains the functions you want to deploy, you must add it to your group version. For more information, see [`AWS::Greengrass::Group`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html) .

In an CloudFormation template, `FunctionDefinitionVersion` is the property type of the `InitialVersion` property in the [`AWS::Greengrass::FunctionDefinition`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinition.html) resource.

- Source: Generated code
- Type last changed: v2.93.0 · 23 Aug 2023

## Example

```ts
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_greengrass as greengrass } from 'aws-cdk-lib';

declare const variables: any;
const functionDefinitionVersionProperty: greengrass.CfnFunctionDefinition.FunctionDefinitionVersionProperty = {
  functions: [{
    functionArn: 'functionArn',
    functionConfiguration: {
      encodingType: 'encodingType',
      environment: {
        accessSysfs: false,
        execution: {
          isolationMode: 'isolationMode',
          runAs: {
            gid: 123,
            uid: 123,
          },
        },
        resourceAccessPolicies: [{
          resourceId: 'resourceId',

          // the properties below are optional
          permission: 'permission',
        }],
        variables: variables,
      },
      execArgs: 'execArgs',
      executable: 'executable',
      memorySize: 123,
      pinned: false,
      timeout: 123,
    },
    id: 'id',
  }],

  // the properties below are optional
  defaultConfig: {
    execution: {
      isolationMode: 'isolationMode',
      runAs: {
        gid: 123,
        uid: 123,
      },
    },
  },
};
```

## Properties

- `defaultConfig`: [IResolvable](/cdk/api/v2/docs/aws-cdk-lib.IResolvable.html) | [CfnFunctionDefinition.DefaultConfigProperty](/cdk/api/v2/docs/aws-cdk-lib.aws_greengrass.CfnFunctionDefinition.DefaultConfigProperty.html) — The default configuration that applies to all Lambda functions in the group.

  Individual Lambda functions can override these settings.

- `functions`: [IResolvable](/cdk/api/v2/docs/aws-cdk-lib.IResolvable.html) | [IResolvable](/cdk/api/v2/docs/aws-cdk-lib.IResolvable.html) | [CfnFunctionDefinition.FunctionProperty](/cdk/api/v2/docs/aws-cdk-lib.aws_greengrass.CfnFunctionDefinition.FunctionProperty.html)[] (required) — The functions in this version.
