# API Reference
## Constructs
### LambdaPowertoolsLayer
Defines a new Lambda Layer with Powertools for python library.
#### Initializers
```typescript
import { LambdaPowertoolsLayer } from 'cdk-lambda-powertools-python-layer'
new LambdaPowertoolsLayer(scope: Construct, id: string, props?: PowertoolsLayerProps)
```
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| [`scope`](#cdklambdapowertoolspythonlayerlambdapowertoolslayerparameterscope)* | [`constructs.Construct`](#constructs.Construct) | *No description.* |
| [`id`](#cdklambdapowertoolspythonlayerlambdapowertoolslayerparameterid)* | `string` | *No description.* |
| [`props`](#cdklambdapowertoolspythonlayerlambdapowertoolslayerparameterprops) | [`cdk-lambda-powertools-python-layer.PowertoolsLayerProps`](#cdk-lambda-powertools-python-layer.PowertoolsLayerProps) | *No description.* |
---
##### `scope`Required
- *Type:* [`constructs.Construct`](#constructs.Construct)
---
##### `id`Required
- *Type:* `string`
---
##### `props`Optional
- *Type:* [`cdk-lambda-powertools-python-layer.PowertoolsLayerProps`](#cdk-lambda-powertools-python-layer.PowertoolsLayerProps)
---
#### Static Functions
| **Name** | **Description** |
| --- | --- |
| [`constructBuildArgs`](#cdklambdapowertoolspythonlayerlambdapowertoolslayerconstructbuildargs) | creates build argument for the Dockerfile. |
---
##### `constructBuildArgs`
```typescript
import { LambdaPowertoolsLayer } from 'cdk-lambda-powertools-python-layer'
LambdaPowertoolsLayer.constructBuildArgs(runtimeFamily: RuntimeFamily, includeExtras?: boolean, version?: string)
```
###### `runtimeFamily`Required
- *Type:* [`aws-cdk-lib.aws_lambda.RuntimeFamily`](#aws-cdk-lib.aws_lambda.RuntimeFamily)
---
###### `includeExtras`Optional
- *Type:* `boolean`
---
###### `version`Optional
- *Type:* `string`
---
## Structs
### PowertoolsLayerProps
Properties for Powertools layer for python.
#### Initializer
```typescript
import { PowertoolsLayerProps } from 'cdk-lambda-powertools-python-layer'
const powertoolsLayerProps: PowertoolsLayerProps = { ... }
```
#### Properties
| **Name** | **Type** | **Description** |
| --- | --- | --- |
| [`includeExtras`](#cdklambdapowertoolspythonlayerpowertoolslayerpropspropertyincludeextras) | `boolean` | A flag for the pydantic extras dependency, used for parsing. |
| [`layerVersionName`](#cdklambdapowertoolspythonlayerpowertoolslayerpropspropertylayerversionname) | `string` | the name of the layer, will be randomised if empty. |
| [`runtimeFamily`](#cdklambdapowertoolspythonlayerpowertoolslayerpropspropertyruntimefamily) | [`aws-cdk-lib.aws_lambda.RuntimeFamily`](#aws-cdk-lib.aws_lambda.RuntimeFamily) | the runtime of the layer. |
| [`version`](#cdklambdapowertoolspythonlayerpowertoolslayerpropspropertyversion) | `string` | The powertools package version from pypi repository. |
---
##### `includeExtras`Optional
```typescript
public readonly includeExtras: boolean;
```
- *Type:* `boolean`
A flag for the pydantic extras dependency, used for parsing.
This will increase the size of the layer significantly. If you don't use parsing, ignore it.
---
##### `layerVersionName`Optional
```typescript
public readonly layerVersionName: string;
```
- *Type:* `string`
the name of the layer, will be randomised if empty.
---
##### `runtimeFamily`Optional
```typescript
public readonly runtimeFamily: RuntimeFamily;
```
- *Type:* [`aws-cdk-lib.aws_lambda.RuntimeFamily`](#aws-cdk-lib.aws_lambda.RuntimeFamily)
the runtime of the layer.
---
##### `version`Optional
```typescript
public readonly version: string;
```
- *Type:* `string`
The powertools package version from pypi repository.
---