@taimos/projen 0.0.125 → 0.0.129

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/API.md CHANGED
@@ -66,8 +66,9 @@ new PrivateTaimosCdkApp(options: PrivateTaimosCdkAppOptions)
66
66
  * **logging** (<code>[LoggerOptions](#projen-loggeroptions)</code>) Configure logging options such as verbosity. __*Default*__: {}
67
67
  * **outdir** (<code>string</code>) The root directory of the project. __*Default*__: "."
68
68
  * **parent** (<code>[Project](#projen-project)</code>) The parent project, if this project is part of a bigger project. __*Optional*__
69
+ * **projenCommand** (<code>string</code>) The shell command to use in order to run the projen CLI. __*Default*__: "npx projen"
69
70
  * **projenrcJson** (<code>boolean</code>) Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .projenrc.json generation. __*Default*__: false
70
- * **projenrcJsonOptions** (<code>[json.ProjenrcOptions](#projen-json-projenrcoptions)</code>) Options for .projenrc.json. __*Default*__: default options
71
+ * **projenrcJsonOptions** (<code>[ProjenrcOptions](#projen-projenrcoptions)</code>) Options for .projenrc.json. __*Default*__: default options
71
72
  * **autoApproveOptions** (<code>[github.AutoApproveOptions](#projen-github-autoapproveoptions)</code>) Enable and configure the 'auto approve' workflow. __*Default*__: auto approve is disabled
72
73
  * **autoMergeOptions** (<code>[github.AutoMergeOptions](#projen-github-automergeoptions)</code>) Configure options for automatic merging on GitHub. __*Default*__: see defaults in `AutoMergeOptions`
73
74
  * **clobber** (<code>boolean</code>) Add a `clobber` task which resets the repo to origin. __*Default*__: true
@@ -76,6 +77,7 @@ new PrivateTaimosCdkApp(options: PrivateTaimosCdkAppOptions)
76
77
  * **githubOptions** (<code>[github.GitHubOptions](#projen-github-githuboptions)</code>) Options for GitHub integration. __*Default*__: see GitHubOptions
77
78
  * **gitpod** (<code>boolean</code>) Add a Gitpod development environment. __*Default*__: false
78
79
  * **mergify** (<code>boolean</code>) Whether mergify should be enabled on this repository or not. __*Default*__: true
80
+ * **mergifyOptions** (<code>[github.MergifyOptions](#projen-github-mergifyoptions)</code>) Options for mergify. __*Default*__: default options
79
81
  * **projectType** (<code>[ProjectType](#projen-projecttype)</code>) Which type of project this is (library/app). __*Default*__: ProjectType.UNKNOWN
80
82
  * **readme** (<code>[SampleReadmeProps](#projen-samplereadmeprops)</code>) The README setup. __*Default*__: { filename: 'README.md', contents: '# replace this' }
81
83
  * **stale** (<code>boolean</code>) Auto-close of stale issues and pull request. __*Default*__: true
@@ -89,6 +91,7 @@ new PrivateTaimosCdkApp(options: PrivateTaimosCdkAppOptions)
89
91
  * **autoDetectBin** (<code>boolean</code>) Automatically add all executables under the `bin` directory to your `package.json` file under the `bin` section. __*Default*__: true
90
92
  * **bin** (<code>Map<string, string></code>) Binary programs vended with your module. __*Optional*__
91
93
  * **bundledDeps** (<code>Array<string></code>) List of dependencies to bundle into this module. __*Optional*__
94
+ * **codeArtifactOptions** (<code>[javascript.CodeArtifactOptions](#projen-javascript-codeartifactoptions)</code>) Options for publishing npm package to AWS CodeArtifact. __*Default*__: undefined
92
95
  * **deps** (<code>Array<string></code>) Runtime dependencies of this module. __*Default*__: []
93
96
  * **description** (<code>string</code>) The description is just a string that helps people understand the purpose of the package. __*Optional*__
94
97
  * **devDeps** (<code>Array<string></code>) Build dependencies for this module. __*Default*__: []
@@ -99,16 +102,14 @@ new PrivateTaimosCdkApp(options: PrivateTaimosCdkAppOptions)
99
102
  * **licensed** (<code>boolean</code>) Indicates if a license should be added. __*Default*__: true
100
103
  * **maxNodeVersion** (<code>string</code>) Minimum node.js version to require via `engines` (inclusive). __*Default*__: no max
101
104
  * **minNodeVersion** (<code>string</code>) Minimum Node.js version to require via package.json `engines` (inclusive). __*Default*__: no "engines" specified
102
- * **npmAccess** (<code>[NpmAccess](#projen-npmaccess)</code>) Access level of the npm package. __*Default*__: for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.
103
- * **npmDistTag** (<code>string</code>) Tags can be used to provide an alias instead of version numbers. __*Default*__: "latest"
105
+ * **npmAccess** (<code>[javascript.NpmAccess](#projen-javascript-npmaccess)</code>) Access level of the npm package. __*Default*__: for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.
104
106
  * **npmRegistry** (<code>string</code>) The host name of the npm registry to publish to. __*Optional*__
105
107
  * **npmRegistryUrl** (<code>string</code>) The base URL of the npm package registry. __*Default*__: "https://registry.npmjs.org"
106
108
  * **npmTokenSecret** (<code>string</code>) GitHub secret which contains the NPM token to use when publishing packages. __*Default*__: "NPM_TOKEN"
107
- * **packageManager** (<code>[NodePackageManager](#projen-nodepackagemanager)</code>) The Node Package Manager used to execute scripts. __*Default*__: NodePackageManager.YARN
109
+ * **packageManager** (<code>[javascript.NodePackageManager](#projen-javascript-nodepackagemanager)</code>) The Node Package Manager used to execute scripts. __*Default*__: NodePackageManager.YARN
108
110
  * **packageName** (<code>string</code>) The "name" in package.json. __*Default*__: defaults to project name
109
- * **peerDependencyOptions** (<code>[PeerDependencyOptions](#projen-peerdependencyoptions)</code>) Options for `peerDeps`. __*Optional*__
111
+ * **peerDependencyOptions** (<code>[javascript.PeerDependencyOptions](#projen-javascript-peerdependencyoptions)</code>) Options for `peerDeps`. __*Optional*__
110
112
  * **peerDeps** (<code>Array<string></code>) Peer dependencies for this module. __*Default*__: []
111
- * **projenCommand** (<code>string</code>) The shell command to use in order to run the projen CLI. __*Default*__: "npx projen"
112
113
  * **repository** (<code>string</code>) The repository is the location where the actual code for your package lives. __*Optional*__
113
114
  * **repositoryDirectory** (<code>string</code>) If the package.json for your package is not in the root directory (for example if it is part of a monorepo), you can specify the directory in which it lives. __*Optional*__
114
115
  * **scripts** (<code>Map<string, string></code>) npm scripts to include. __*Default*__: {}
@@ -117,8 +118,10 @@ new PrivateTaimosCdkApp(options: PrivateTaimosCdkAppOptions)
117
118
  * **artifactsDirectory** (<code>string</code>) A directory which will contain artifacts to be published to npm. __*Default*__: "dist"
118
119
  * **jsiiReleaseVersion** (<code>string</code>) Version requirement of `jsii-release` which is used to publish modules to npm. __*Default*__: "latest"
119
120
  * **majorVersion** (<code>number</code>) Major version to release from the default branch. __*Default*__: Major version is not enforced.
121
+ * **npmDistTag** (<code>string</code>) The npmDistTag to use when publishing from the default branch. __*Default*__: "latest"
120
122
  * **postBuildSteps** (<code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code>) Steps to execute after build as part of the release workflow. __*Default*__: []
121
123
  * **prerelease** (<code>string</code>) Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre"). __*Default*__: normal semantic versions
124
+ * **publishTasks** (<code>boolean</code>) Define publishing tasks that can be executed manually as well as workflows. __*Default*__: false
122
125
  * **releaseBranches** (<code>Map<string, [release.BranchOptions](#projen-release-branchoptions)></code>) Defines additional release branches. __*Default*__: no additional branches are used for release. you can use `addBranch()` to add additional branches.
123
126
  * **releaseEveryCommit** (<code>boolean</code>) Automatically release new versions every commit to one of branches in `releaseBranches`. __*Default*__: true
124
127
  * **releaseFailureIssue** (<code>boolean</code>) Create a github issue on every failed publishing task. __*Default*__: false
@@ -128,11 +131,14 @@ new PrivateTaimosCdkApp(options: PrivateTaimosCdkAppOptions)
128
131
  * **releaseTrigger** (<code>[release.ReleaseTrigger](#projen-release-releasetrigger)</code>) The release trigger to use. __*Default*__: Continuous releases (`ReleaseTrigger.continuous()`)
129
132
  * **releaseWorkflowName** (<code>string</code>) The name of the default release workflow. __*Default*__: "Release"
130
133
  * **releaseWorkflowSetupSteps** (<code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code>) A set of workflow steps to execute in order to setup the workflow container. __*Optional*__
134
+ * **versionrcOptions** (<code>Map<string, any></code>) Custom configuration used when creating changelog with standard-version package. __*Default*__: standard configuration applicable for GitHub repositories
131
135
  * **workflowContainerImage** (<code>string</code>) Container image to use for GitHub workflows. __*Default*__: default image
136
+ * **workflowRunsOn** (<code>Array<string></code>) Github Runner selection labels. __*Default*__: ["ubuntu-latest"]
132
137
  * **defaultReleaseBranch** (<code>string</code>) The name of the main release branch.
133
138
  * **autoApproveProjenUpgrades** (<code>boolean</code>) Automatically approve projen upgrade PRs, allowing them to be merged by mergify (if configued). __*Default*__: false
134
139
  * **autoApproveUpgrades** (<code>boolean</code>) Automatically approve deps upgrade PRs, allowing them to be merged by mergify (if configued). __*Default*__: true
135
140
  * **buildWorkflow** (<code>boolean</code>) Define a GitHub workflow for building PRs. __*Default*__: true if not a subproject
141
+ * **bundlerOptions** (<code>[javascript.BundlerOptions](#projen-javascript-bundleroptions)</code>) Options for `Bundler`. __*Optional*__
136
142
  * **codeCov** (<code>boolean</code>) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v1 A secret is required for private repos. Configured with @codeCovTokenSecret. __*Default*__: false
137
143
  * **codeCovTokenSecret** (<code>string</code>) Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories. __*Default*__: if this option is not specified, only public repositories are supported
138
144
  * **copyrightOwner** (<code>string</code>) License copyright owner. __*Default*__: defaults to the value of authorName or "" if `authorName` is undefined.
@@ -140,16 +146,14 @@ new PrivateTaimosCdkApp(options: PrivateTaimosCdkAppOptions)
140
146
  * **dependabot** (<code>boolean</code>) Use dependabot to handle dependency upgrades. __*Default*__: false
141
147
  * **dependabotOptions** (<code>[github.DependabotOptions](#projen-github-dependabotoptions)</code>) Options for dependabot. __*Default*__: default options
142
148
  * **depsUpgrade** (<code>boolean</code>) Use github workflows to handle dependency upgrades. __*Default*__: true
143
- * **depsUpgradeOptions** (<code>[UpgradeDependenciesOptions](#projen-upgradedependenciesoptions)</code>) Options for depsUpgrade. __*Default*__: default options
149
+ * **depsUpgradeOptions** (<code>[javascript.UpgradeDependenciesOptions](#projen-javascript-upgradedependenciesoptions)</code>) Options for depsUpgrade. __*Default*__: default options
144
150
  * **gitignore** (<code>Array<string></code>) Additional entries to .gitignore. __*Optional*__
145
151
  * **jest** (<code>boolean</code>) Setup jest unit tests. __*Default*__: true
146
- * **jestOptions** (<code>[JestOptions](#projen-jestoptions)</code>) Jest options. __*Default*__: default options
147
- * **mergifyOptions** (<code>[github.MergifyOptions](#projen-github-mergifyoptions)</code>) Options for mergify. __*Default*__: default options
152
+ * **jestOptions** (<code>[javascript.JestOptions](#projen-javascript-jestoptions)</code>) Jest options. __*Default*__: default options
148
153
  * **mutableBuild** (<code>boolean</code>) Automatically update files modified during builds to pull-request branches. __*Default*__: true
149
154
  * **npmignore** (<code>Array<string></code>) Additional entries to .npmignore. __*Optional*__
150
155
  * **npmignoreEnabled** (<code>boolean</code>) Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs. __*Default*__: true
151
156
  * **projenDevDependency** (<code>boolean</code>) Indicates of "projen" should be installed as a devDependency. __*Default*__: true
152
- * **projenDuringBuild** (<code>boolean</code>) Execute `projen` as the first step of the `build` task to synthesize project files. __*Default*__: true
153
157
  * **projenrcJs** (<code>boolean</code>) Generate (once) .projenrc.js (in JavaScript). Set to `false` in order to disable .projenrc.js generation. __*Default*__: true if projenrcJson is false
154
158
  * **projenrcJsOptions** (<code>[javascript.ProjenrcOptions](#projen-javascript-projenrcoptions)</code>) Options for .projenrc.js. __*Default*__: default options
155
159
  * **projenUpgradeAutoMerge** (<code>boolean</code>) Automatically approve projen upgrade PRs, allowing them to be merged by mergify (if configued). __*Default*__: false
@@ -162,14 +166,14 @@ new PrivateTaimosCdkApp(options: PrivateTaimosCdkAppOptions)
162
166
  * **releaseToNpm** (<code>boolean</code>) Automatically release to npm when new versions are introduced. __*Default*__: false
163
167
  * **releaseWorkflow** (<code>boolean</code>) DEPRECATED: renamed to `release`. __*Default*__: true if not a subproject
164
168
  * **workflowBootstrapSteps** (<code>Array<any></code>) Workflow steps to use in order to bootstrap this repo. __*Default*__: "yarn install --frozen-lockfile && yarn projen"
169
+ * **workflowGitIdentity** (<code>[github.GitIdentity](#projen-github-gitidentity)</code>) The git identity to use in workflows. __*Default*__: GitHub Actions
165
170
  * **workflowNodeVersion** (<code>string</code>) The node version to use in GitHub workflows. __*Default*__: same as `minNodeVersion`
166
- * **compileBeforeTest** (<code>boolean</code>) Compile the code before running tests. __*Default*__: if `testdir` is under `src/**`, the default is `true`, otherwise the default is `false.
167
171
  * **disableTsconfig** (<code>boolean</code>) Do not generate a `tsconfig.json` file (used by jsii projects since tsconfig.json is generated by the jsii compiler). __*Default*__: false
168
172
  * **docgen** (<code>boolean</code>) Docgen by Typedoc. __*Default*__: false
169
173
  * **docsDirectory** (<code>string</code>) Docs directory. __*Default*__: "docs"
170
174
  * **entrypointTypes** (<code>string</code>) The .d.ts file that includes the type declarations for this module. __*Default*__: .d.ts file derived from the project's entrypoint (usually lib/index.d.ts)
171
175
  * **eslint** (<code>boolean</code>) Setup eslint. __*Default*__: true
172
- * **eslintOptions** (<code>[EslintOptions](#projen-eslintoptions)</code>) Eslint options. __*Default*__: opinionated default options
176
+ * **eslintOptions** (<code>[javascript.EslintOptions](#projen-javascript-eslintoptions)</code>) Eslint options. __*Default*__: opinionated default options
173
177
  * **libdir** (<code>string</code>) Typescript artifacts output directory. __*Default*__: "lib"
174
178
  * **package** (<code>boolean</code>) Defines a `yarn package` command that will produce a tarball and place it under `dist/js`. __*Default*__: true
175
179
  * **projenrcTs** (<code>boolean</code>) Use TypeScript for your projenrc file (`.projenrc.ts`). __*Default*__: false
@@ -177,16 +181,28 @@ new PrivateTaimosCdkApp(options: PrivateTaimosCdkAppOptions)
177
181
  * **sampleCode** (<code>boolean</code>) Generate one-time sample in `src/` and `test/` if there are no files there. __*Default*__: true
178
182
  * **srcdir** (<code>string</code>) Typescript sources directory. __*Default*__: "src"
179
183
  * **testdir** (<code>string</code>) Jest tests directory. Tests files should be named `xxx.test.ts`. __*Default*__: "test"
180
- * **tsconfig** (<code>[TypescriptConfigOptions](#projen-typescriptconfigoptions)</code>) Custom TSConfig. __*Default*__: default options
181
- * **tsconfigDev** (<code>[TypescriptConfigOptions](#projen-typescriptconfigoptions)</code>) Custom tsconfig options for the development tsconfig.json file (used for testing). __*Default*__: use the production tsconfig options
184
+ * **tsconfig** (<code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code>) Custom TSConfig. __*Default*__: default options
185
+ * **tsconfigDev** (<code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code>) Custom tsconfig options for the development tsconfig.json file (used for testing). __*Default*__: use the production tsconfig options
182
186
  * **tsconfigDevFile** (<code>string</code>) The name of the development tsconfig.json file. __*Default*__: "tsconfig.dev.json"
183
187
  * **typescriptVersion** (<code>string</code>) TypeScript version to use. __*Default*__: "latest"
184
- * **cdkVersion** (<code>string</code>) AWS CDK version to use.
188
+ * **buildCommand** (<code>string</code>) A command to execute before synthesis. __*Default*__: no build command
189
+ * **cdkout** (<code>string</code>) cdk.out directory. __*Default*__: "cdk.out"
190
+ * **context** (<code>Map<string, string></code>) Additional context to include in `cdk.json`. __*Default*__: no additional context
191
+ * **featureFlags** (<code>boolean</code>) Include all feature flags in cdk.json. __*Default*__: true
192
+ * **requireApproval** (<code>[awscdk.ApprovalLevel](#projen-awscdk-approvallevel)</code>) To protect you against unintended changes that affect your security posture, the AWS CDK Toolkit prompts you to approve security-related changes before deploying them. __*Default*__: ApprovalLevel.BROADENING
193
+ * **watchExcludes** (<code>Array<string></code>) Glob patterns to exclude from `cdk watch`. __*Default*__: []
194
+ * **watchIncludes** (<code>Array<string></code>) Glob patterns to include in `cdk watch`. __*Default*__: []
195
+ * **cdkVersion** (<code>string</code>) Minimum version of the AWS CDK to depend on.
196
+ * **cdkAssert** (<code>boolean</code>) Install the @aws-cdk/assert library? __*Default*__: will be included by default for AWS CDK >= 1.0.0 < 2.0.0
197
+ * **cdkAssertions** (<code>boolean</code>) Install the @aws-cdk/assertions library? __*Default*__: will be included by default for AWS CDK >= 1.111.0 < 2.0.0
198
+ * **cdkDependencies** (<code>Array<string></code>) Which AWS CDK modules (those that start with "@aws-cdk/") does this library require when consumed? __*Optional*__
199
+ * **cdkDependenciesAsDeps** (<code>boolean</code>) If this is enabled (default), all modules declared in `cdkDependencies` will be also added as normal `dependencies` (as well as `peerDependencies`). __*Default*__: true
200
+ * **cdkTestDependencies** (<code>Array<string></code>) AWS CDK modules required for testing. __*Optional*__
201
+ * **cdkVersionPinning** (<code>boolean</code>) Use pinned version instead of caret version for CDK. __*Optional*__
202
+ * **constructsVersion** (<code>string</code>) Minimum version of the `constructs` library to depend on. __*Default*__: for CDK 1.x the default is "3.2.27", for CDK 2.x the default is "10.0.5".
185
203
  * **appEntrypoint** (<code>string</code>) The CDK app's entrypoint (relative to the source directory, which is "src" by default). __*Default*__: "main.ts"
186
- * **cdkDependencies** (<code>Array<string></code>) Which AWS CDK modules (those that start with "@aws-cdk/") this app uses. __*Optional*__
187
- * **cdkVersionPinning** (<code>boolean</code>) Use pinned version instead of caret version for CDK. __*Default*__: false
188
- * **context** (<code>Map<string, string></code>) Additional context to include in `cdk.json`. __*Optional*__
189
- * **requireApproval** (<code>[CdkApprovalLevel](#projen-cdkapprovallevel)</code>) To protect you against unintended changes that affect your security posture, the AWS CDK Toolkit prompts you to approve security-related changes before deploying them. __*Default*__: CdkApprovalLevel.BROADENING
204
+ * **lambdaAutoDiscover** (<code>boolean</code>) Automatically adds an `awscdk.LambdaFunction` for each `.lambda.ts` handler in your source tree. If this is disabled, you can manually add an `awscdk.AutoDiscover` component to your project. __*Default*__: true
205
+ * **lambdaOptions** (<code>[awscdk.LambdaFunctionCommonOptions](#projen-awscdk-lambdafunctioncommonoptions)</code>) Common options for all AWS Lambda functions. __*Default*__: default options
190
206
  * **cdkPipelines** (<code>boolean</code>) Enable CDK pipelines. __*Default*__: false
191
207
  * **sops** (<code>[SopsAspectOptions](#taimos-projen-sopsaspectoptions)</code>) Enable storing secrets using Mozilla SOPS. __*Default*__: no SOPS config
192
208
 
@@ -216,7 +232,7 @@ __Extends__: [Component](#projen-component)
216
232
  new SopsAspect(app: TypeScriptProject, options: SopsAspectOptions)
217
233
  ```
218
234
 
219
- * **app** (<code>[TypeScriptProject](#projen-typescriptproject)</code>) *No description*
235
+ * **app** (<code>[typescript.TypeScriptProject](#projen-typescript-typescriptproject)</code>) *No description*
220
236
  * **options** (<code>[SopsAspectOptions](#taimos-projen-sopsaspectoptions)</code>) *No description*
221
237
  * **secrets** (<code>Map<string, string></code>) Define a mapping of SOPS files to SecretsManager secrets.
222
238
 
@@ -235,7 +251,7 @@ Name | Type | Description
235
251
 
236
252
  AWS CDK app in TypeScript.
237
253
 
238
- __Extends__: [AwsCdkTypeScriptApp](#projen-awscdktypescriptapp)
254
+ __Extends__: [awscdk.AwsCdkTypeScriptApp](#projen-awscdk-awscdktypescriptapp)
239
255
 
240
256
  ### Initializer
241
257
 
@@ -251,8 +267,9 @@ new TaimosCdkApp(options: TaimosCdkAppOptions)
251
267
  * **logging** (<code>[LoggerOptions](#projen-loggeroptions)</code>) Configure logging options such as verbosity. __*Default*__: {}
252
268
  * **outdir** (<code>string</code>) The root directory of the project. __*Default*__: "."
253
269
  * **parent** (<code>[Project](#projen-project)</code>) The parent project, if this project is part of a bigger project. __*Optional*__
270
+ * **projenCommand** (<code>string</code>) The shell command to use in order to run the projen CLI. __*Default*__: "npx projen"
254
271
  * **projenrcJson** (<code>boolean</code>) Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .projenrc.json generation. __*Default*__: false
255
- * **projenrcJsonOptions** (<code>[json.ProjenrcOptions](#projen-json-projenrcoptions)</code>) Options for .projenrc.json. __*Default*__: default options
272
+ * **projenrcJsonOptions** (<code>[ProjenrcOptions](#projen-projenrcoptions)</code>) Options for .projenrc.json. __*Default*__: default options
256
273
  * **autoApproveOptions** (<code>[github.AutoApproveOptions](#projen-github-autoapproveoptions)</code>) Enable and configure the 'auto approve' workflow. __*Default*__: auto approve is disabled
257
274
  * **autoMergeOptions** (<code>[github.AutoMergeOptions](#projen-github-automergeoptions)</code>) Configure options for automatic merging on GitHub. __*Default*__: see defaults in `AutoMergeOptions`
258
275
  * **clobber** (<code>boolean</code>) Add a `clobber` task which resets the repo to origin. __*Default*__: true
@@ -261,6 +278,7 @@ new TaimosCdkApp(options: TaimosCdkAppOptions)
261
278
  * **githubOptions** (<code>[github.GitHubOptions](#projen-github-githuboptions)</code>) Options for GitHub integration. __*Default*__: see GitHubOptions
262
279
  * **gitpod** (<code>boolean</code>) Add a Gitpod development environment. __*Default*__: false
263
280
  * **mergify** (<code>boolean</code>) Whether mergify should be enabled on this repository or not. __*Default*__: true
281
+ * **mergifyOptions** (<code>[github.MergifyOptions](#projen-github-mergifyoptions)</code>) Options for mergify. __*Default*__: default options
264
282
  * **projectType** (<code>[ProjectType](#projen-projecttype)</code>) Which type of project this is (library/app). __*Default*__: ProjectType.UNKNOWN
265
283
  * **readme** (<code>[SampleReadmeProps](#projen-samplereadmeprops)</code>) The README setup. __*Default*__: { filename: 'README.md', contents: '# replace this' }
266
284
  * **stale** (<code>boolean</code>) Auto-close of stale issues and pull request. __*Default*__: true
@@ -274,6 +292,7 @@ new TaimosCdkApp(options: TaimosCdkAppOptions)
274
292
  * **autoDetectBin** (<code>boolean</code>) Automatically add all executables under the `bin` directory to your `package.json` file under the `bin` section. __*Default*__: true
275
293
  * **bin** (<code>Map<string, string></code>) Binary programs vended with your module. __*Optional*__
276
294
  * **bundledDeps** (<code>Array<string></code>) List of dependencies to bundle into this module. __*Optional*__
295
+ * **codeArtifactOptions** (<code>[javascript.CodeArtifactOptions](#projen-javascript-codeartifactoptions)</code>) Options for publishing npm package to AWS CodeArtifact. __*Default*__: undefined
277
296
  * **deps** (<code>Array<string></code>) Runtime dependencies of this module. __*Default*__: []
278
297
  * **description** (<code>string</code>) The description is just a string that helps people understand the purpose of the package. __*Optional*__
279
298
  * **devDeps** (<code>Array<string></code>) Build dependencies for this module. __*Default*__: []
@@ -284,16 +303,14 @@ new TaimosCdkApp(options: TaimosCdkAppOptions)
284
303
  * **licensed** (<code>boolean</code>) Indicates if a license should be added. __*Default*__: true
285
304
  * **maxNodeVersion** (<code>string</code>) Minimum node.js version to require via `engines` (inclusive). __*Default*__: no max
286
305
  * **minNodeVersion** (<code>string</code>) Minimum Node.js version to require via package.json `engines` (inclusive). __*Default*__: no "engines" specified
287
- * **npmAccess** (<code>[NpmAccess](#projen-npmaccess)</code>) Access level of the npm package. __*Default*__: for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.
288
- * **npmDistTag** (<code>string</code>) Tags can be used to provide an alias instead of version numbers. __*Default*__: "latest"
306
+ * **npmAccess** (<code>[javascript.NpmAccess](#projen-javascript-npmaccess)</code>) Access level of the npm package. __*Default*__: for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.
289
307
  * **npmRegistry** (<code>string</code>) The host name of the npm registry to publish to. __*Optional*__
290
308
  * **npmRegistryUrl** (<code>string</code>) The base URL of the npm package registry. __*Default*__: "https://registry.npmjs.org"
291
309
  * **npmTokenSecret** (<code>string</code>) GitHub secret which contains the NPM token to use when publishing packages. __*Default*__: "NPM_TOKEN"
292
- * **packageManager** (<code>[NodePackageManager](#projen-nodepackagemanager)</code>) The Node Package Manager used to execute scripts. __*Default*__: NodePackageManager.YARN
310
+ * **packageManager** (<code>[javascript.NodePackageManager](#projen-javascript-nodepackagemanager)</code>) The Node Package Manager used to execute scripts. __*Default*__: NodePackageManager.YARN
293
311
  * **packageName** (<code>string</code>) The "name" in package.json. __*Default*__: defaults to project name
294
- * **peerDependencyOptions** (<code>[PeerDependencyOptions](#projen-peerdependencyoptions)</code>) Options for `peerDeps`. __*Optional*__
312
+ * **peerDependencyOptions** (<code>[javascript.PeerDependencyOptions](#projen-javascript-peerdependencyoptions)</code>) Options for `peerDeps`. __*Optional*__
295
313
  * **peerDeps** (<code>Array<string></code>) Peer dependencies for this module. __*Default*__: []
296
- * **projenCommand** (<code>string</code>) The shell command to use in order to run the projen CLI. __*Default*__: "npx projen"
297
314
  * **repository** (<code>string</code>) The repository is the location where the actual code for your package lives. __*Optional*__
298
315
  * **repositoryDirectory** (<code>string</code>) If the package.json for your package is not in the root directory (for example if it is part of a monorepo), you can specify the directory in which it lives. __*Optional*__
299
316
  * **scripts** (<code>Map<string, string></code>) npm scripts to include. __*Default*__: {}
@@ -302,8 +319,10 @@ new TaimosCdkApp(options: TaimosCdkAppOptions)
302
319
  * **artifactsDirectory** (<code>string</code>) A directory which will contain artifacts to be published to npm. __*Default*__: "dist"
303
320
  * **jsiiReleaseVersion** (<code>string</code>) Version requirement of `jsii-release` which is used to publish modules to npm. __*Default*__: "latest"
304
321
  * **majorVersion** (<code>number</code>) Major version to release from the default branch. __*Default*__: Major version is not enforced.
322
+ * **npmDistTag** (<code>string</code>) The npmDistTag to use when publishing from the default branch. __*Default*__: "latest"
305
323
  * **postBuildSteps** (<code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code>) Steps to execute after build as part of the release workflow. __*Default*__: []
306
324
  * **prerelease** (<code>string</code>) Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre"). __*Default*__: normal semantic versions
325
+ * **publishTasks** (<code>boolean</code>) Define publishing tasks that can be executed manually as well as workflows. __*Default*__: false
307
326
  * **releaseBranches** (<code>Map<string, [release.BranchOptions](#projen-release-branchoptions)></code>) Defines additional release branches. __*Default*__: no additional branches are used for release. you can use `addBranch()` to add additional branches.
308
327
  * **releaseEveryCommit** (<code>boolean</code>) Automatically release new versions every commit to one of branches in `releaseBranches`. __*Default*__: true
309
328
  * **releaseFailureIssue** (<code>boolean</code>) Create a github issue on every failed publishing task. __*Default*__: false
@@ -313,11 +332,14 @@ new TaimosCdkApp(options: TaimosCdkAppOptions)
313
332
  * **releaseTrigger** (<code>[release.ReleaseTrigger](#projen-release-releasetrigger)</code>) The release trigger to use. __*Default*__: Continuous releases (`ReleaseTrigger.continuous()`)
314
333
  * **releaseWorkflowName** (<code>string</code>) The name of the default release workflow. __*Default*__: "Release"
315
334
  * **releaseWorkflowSetupSteps** (<code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code>) A set of workflow steps to execute in order to setup the workflow container. __*Optional*__
335
+ * **versionrcOptions** (<code>Map<string, any></code>) Custom configuration used when creating changelog with standard-version package. __*Default*__: standard configuration applicable for GitHub repositories
316
336
  * **workflowContainerImage** (<code>string</code>) Container image to use for GitHub workflows. __*Default*__: default image
337
+ * **workflowRunsOn** (<code>Array<string></code>) Github Runner selection labels. __*Default*__: ["ubuntu-latest"]
317
338
  * **defaultReleaseBranch** (<code>string</code>) The name of the main release branch.
318
339
  * **autoApproveProjenUpgrades** (<code>boolean</code>) Automatically approve projen upgrade PRs, allowing them to be merged by mergify (if configued). __*Default*__: false
319
340
  * **autoApproveUpgrades** (<code>boolean</code>) Automatically approve deps upgrade PRs, allowing them to be merged by mergify (if configued). __*Default*__: true
320
341
  * **buildWorkflow** (<code>boolean</code>) Define a GitHub workflow for building PRs. __*Default*__: true if not a subproject
342
+ * **bundlerOptions** (<code>[javascript.BundlerOptions](#projen-javascript-bundleroptions)</code>) Options for `Bundler`. __*Optional*__
321
343
  * **codeCov** (<code>boolean</code>) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v1 A secret is required for private repos. Configured with @codeCovTokenSecret. __*Default*__: false
322
344
  * **codeCovTokenSecret** (<code>string</code>) Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories. __*Default*__: if this option is not specified, only public repositories are supported
323
345
  * **copyrightOwner** (<code>string</code>) License copyright owner. __*Default*__: defaults to the value of authorName or "" if `authorName` is undefined.
@@ -325,16 +347,14 @@ new TaimosCdkApp(options: TaimosCdkAppOptions)
325
347
  * **dependabot** (<code>boolean</code>) Use dependabot to handle dependency upgrades. __*Default*__: false
326
348
  * **dependabotOptions** (<code>[github.DependabotOptions](#projen-github-dependabotoptions)</code>) Options for dependabot. __*Default*__: default options
327
349
  * **depsUpgrade** (<code>boolean</code>) Use github workflows to handle dependency upgrades. __*Default*__: true
328
- * **depsUpgradeOptions** (<code>[UpgradeDependenciesOptions](#projen-upgradedependenciesoptions)</code>) Options for depsUpgrade. __*Default*__: default options
350
+ * **depsUpgradeOptions** (<code>[javascript.UpgradeDependenciesOptions](#projen-javascript-upgradedependenciesoptions)</code>) Options for depsUpgrade. __*Default*__: default options
329
351
  * **gitignore** (<code>Array<string></code>) Additional entries to .gitignore. __*Optional*__
330
352
  * **jest** (<code>boolean</code>) Setup jest unit tests. __*Default*__: true
331
- * **jestOptions** (<code>[JestOptions](#projen-jestoptions)</code>) Jest options. __*Default*__: default options
332
- * **mergifyOptions** (<code>[github.MergifyOptions](#projen-github-mergifyoptions)</code>) Options for mergify. __*Default*__: default options
353
+ * **jestOptions** (<code>[javascript.JestOptions](#projen-javascript-jestoptions)</code>) Jest options. __*Default*__: default options
333
354
  * **mutableBuild** (<code>boolean</code>) Automatically update files modified during builds to pull-request branches. __*Default*__: true
334
355
  * **npmignore** (<code>Array<string></code>) Additional entries to .npmignore. __*Optional*__
335
356
  * **npmignoreEnabled** (<code>boolean</code>) Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs. __*Default*__: true
336
357
  * **projenDevDependency** (<code>boolean</code>) Indicates of "projen" should be installed as a devDependency. __*Default*__: true
337
- * **projenDuringBuild** (<code>boolean</code>) Execute `projen` as the first step of the `build` task to synthesize project files. __*Default*__: true
338
358
  * **projenrcJs** (<code>boolean</code>) Generate (once) .projenrc.js (in JavaScript). Set to `false` in order to disable .projenrc.js generation. __*Default*__: true if projenrcJson is false
339
359
  * **projenrcJsOptions** (<code>[javascript.ProjenrcOptions](#projen-javascript-projenrcoptions)</code>) Options for .projenrc.js. __*Default*__: default options
340
360
  * **projenUpgradeAutoMerge** (<code>boolean</code>) Automatically approve projen upgrade PRs, allowing them to be merged by mergify (if configued). __*Default*__: false
@@ -347,14 +367,14 @@ new TaimosCdkApp(options: TaimosCdkAppOptions)
347
367
  * **releaseToNpm** (<code>boolean</code>) Automatically release to npm when new versions are introduced. __*Default*__: false
348
368
  * **releaseWorkflow** (<code>boolean</code>) DEPRECATED: renamed to `release`. __*Default*__: true if not a subproject
349
369
  * **workflowBootstrapSteps** (<code>Array<any></code>) Workflow steps to use in order to bootstrap this repo. __*Default*__: "yarn install --frozen-lockfile && yarn projen"
370
+ * **workflowGitIdentity** (<code>[github.GitIdentity](#projen-github-gitidentity)</code>) The git identity to use in workflows. __*Default*__: GitHub Actions
350
371
  * **workflowNodeVersion** (<code>string</code>) The node version to use in GitHub workflows. __*Default*__: same as `minNodeVersion`
351
- * **compileBeforeTest** (<code>boolean</code>) Compile the code before running tests. __*Default*__: if `testdir` is under `src/**`, the default is `true`, otherwise the default is `false.
352
372
  * **disableTsconfig** (<code>boolean</code>) Do not generate a `tsconfig.json` file (used by jsii projects since tsconfig.json is generated by the jsii compiler). __*Default*__: false
353
373
  * **docgen** (<code>boolean</code>) Docgen by Typedoc. __*Default*__: false
354
374
  * **docsDirectory** (<code>string</code>) Docs directory. __*Default*__: "docs"
355
375
  * **entrypointTypes** (<code>string</code>) The .d.ts file that includes the type declarations for this module. __*Default*__: .d.ts file derived from the project's entrypoint (usually lib/index.d.ts)
356
376
  * **eslint** (<code>boolean</code>) Setup eslint. __*Default*__: true
357
- * **eslintOptions** (<code>[EslintOptions](#projen-eslintoptions)</code>) Eslint options. __*Default*__: opinionated default options
377
+ * **eslintOptions** (<code>[javascript.EslintOptions](#projen-javascript-eslintoptions)</code>) Eslint options. __*Default*__: opinionated default options
358
378
  * **libdir** (<code>string</code>) Typescript artifacts output directory. __*Default*__: "lib"
359
379
  * **package** (<code>boolean</code>) Defines a `yarn package` command that will produce a tarball and place it under `dist/js`. __*Default*__: true
360
380
  * **projenrcTs** (<code>boolean</code>) Use TypeScript for your projenrc file (`.projenrc.ts`). __*Default*__: false
@@ -362,16 +382,28 @@ new TaimosCdkApp(options: TaimosCdkAppOptions)
362
382
  * **sampleCode** (<code>boolean</code>) Generate one-time sample in `src/` and `test/` if there are no files there. __*Default*__: true
363
383
  * **srcdir** (<code>string</code>) Typescript sources directory. __*Default*__: "src"
364
384
  * **testdir** (<code>string</code>) Jest tests directory. Tests files should be named `xxx.test.ts`. __*Default*__: "test"
365
- * **tsconfig** (<code>[TypescriptConfigOptions](#projen-typescriptconfigoptions)</code>) Custom TSConfig. __*Default*__: default options
366
- * **tsconfigDev** (<code>[TypescriptConfigOptions](#projen-typescriptconfigoptions)</code>) Custom tsconfig options for the development tsconfig.json file (used for testing). __*Default*__: use the production tsconfig options
385
+ * **tsconfig** (<code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code>) Custom TSConfig. __*Default*__: default options
386
+ * **tsconfigDev** (<code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code>) Custom tsconfig options for the development tsconfig.json file (used for testing). __*Default*__: use the production tsconfig options
367
387
  * **tsconfigDevFile** (<code>string</code>) The name of the development tsconfig.json file. __*Default*__: "tsconfig.dev.json"
368
388
  * **typescriptVersion** (<code>string</code>) TypeScript version to use. __*Default*__: "latest"
369
- * **cdkVersion** (<code>string</code>) AWS CDK version to use.
389
+ * **buildCommand** (<code>string</code>) A command to execute before synthesis. __*Default*__: no build command
390
+ * **cdkout** (<code>string</code>) cdk.out directory. __*Default*__: "cdk.out"
391
+ * **context** (<code>Map<string, string></code>) Additional context to include in `cdk.json`. __*Default*__: no additional context
392
+ * **featureFlags** (<code>boolean</code>) Include all feature flags in cdk.json. __*Default*__: true
393
+ * **requireApproval** (<code>[awscdk.ApprovalLevel](#projen-awscdk-approvallevel)</code>) To protect you against unintended changes that affect your security posture, the AWS CDK Toolkit prompts you to approve security-related changes before deploying them. __*Default*__: ApprovalLevel.BROADENING
394
+ * **watchExcludes** (<code>Array<string></code>) Glob patterns to exclude from `cdk watch`. __*Default*__: []
395
+ * **watchIncludes** (<code>Array<string></code>) Glob patterns to include in `cdk watch`. __*Default*__: []
396
+ * **cdkVersion** (<code>string</code>) Minimum version of the AWS CDK to depend on.
397
+ * **cdkAssert** (<code>boolean</code>) Install the @aws-cdk/assert library? __*Default*__: will be included by default for AWS CDK >= 1.0.0 < 2.0.0
398
+ * **cdkAssertions** (<code>boolean</code>) Install the @aws-cdk/assertions library? __*Default*__: will be included by default for AWS CDK >= 1.111.0 < 2.0.0
399
+ * **cdkDependencies** (<code>Array<string></code>) Which AWS CDK modules (those that start with "@aws-cdk/") does this library require when consumed? __*Optional*__
400
+ * **cdkDependenciesAsDeps** (<code>boolean</code>) If this is enabled (default), all modules declared in `cdkDependencies` will be also added as normal `dependencies` (as well as `peerDependencies`). __*Default*__: true
401
+ * **cdkTestDependencies** (<code>Array<string></code>) AWS CDK modules required for testing. __*Optional*__
402
+ * **cdkVersionPinning** (<code>boolean</code>) Use pinned version instead of caret version for CDK. __*Optional*__
403
+ * **constructsVersion** (<code>string</code>) Minimum version of the `constructs` library to depend on. __*Default*__: for CDK 1.x the default is "3.2.27", for CDK 2.x the default is "10.0.5".
370
404
  * **appEntrypoint** (<code>string</code>) The CDK app's entrypoint (relative to the source directory, which is "src" by default). __*Default*__: "main.ts"
371
- * **cdkDependencies** (<code>Array<string></code>) Which AWS CDK modules (those that start with "@aws-cdk/") this app uses. __*Optional*__
372
- * **cdkVersionPinning** (<code>boolean</code>) Use pinned version instead of caret version for CDK. __*Default*__: false
373
- * **context** (<code>Map<string, string></code>) Additional context to include in `cdk.json`. __*Optional*__
374
- * **requireApproval** (<code>[CdkApprovalLevel](#projen-cdkapprovallevel)</code>) To protect you against unintended changes that affect your security posture, the AWS CDK Toolkit prompts you to approve security-related changes before deploying them. __*Default*__: CdkApprovalLevel.BROADENING
405
+ * **lambdaAutoDiscover** (<code>boolean</code>) Automatically adds an `awscdk.LambdaFunction` for each `.lambda.ts` handler in your source tree. If this is disabled, you can manually add an `awscdk.AutoDiscover` component to your project. __*Default*__: true
406
+ * **lambdaOptions** (<code>[awscdk.LambdaFunctionCommonOptions](#projen-awscdk-lambdafunctioncommonoptions)</code>) Common options for all AWS Lambda functions. __*Default*__: default options
375
407
  * **cdkPipelines** (<code>boolean</code>) Enable CDK pipelines. __*Default*__: false
376
408
  * **sops** (<code>[SopsAspectOptions](#taimos-projen-sopsaspectoptions)</code>) Enable storing secrets using Mozilla SOPS. __*Default*__: no SOPS config
377
409
 
@@ -382,7 +414,7 @@ new TaimosCdkApp(options: TaimosCdkAppOptions)
382
414
 
383
415
  TypeScript library.
384
416
 
385
- __Extends__: [AwsCdkConstructLibrary](#projen-awscdkconstructlibrary)
417
+ __Extends__: [awscdk.AwsCdkConstructLibrary](#projen-awscdk-awscdkconstructlibrary)
386
418
 
387
419
  ### Initializer
388
420
 
@@ -398,8 +430,9 @@ new TaimosCdkConstructLibrary(options: TaimosCdkConstructLibraryOptions)
398
430
  * **logging** (<code>[LoggerOptions](#projen-loggeroptions)</code>) Configure logging options such as verbosity. __*Default*__: {}
399
431
  * **outdir** (<code>string</code>) The root directory of the project. __*Default*__: "."
400
432
  * **parent** (<code>[Project](#projen-project)</code>) The parent project, if this project is part of a bigger project. __*Optional*__
433
+ * **projenCommand** (<code>string</code>) The shell command to use in order to run the projen CLI. __*Default*__: "npx projen"
401
434
  * **projenrcJson** (<code>boolean</code>) Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .projenrc.json generation. __*Default*__: false
402
- * **projenrcJsonOptions** (<code>[json.ProjenrcOptions](#projen-json-projenrcoptions)</code>) Options for .projenrc.json. __*Default*__: default options
435
+ * **projenrcJsonOptions** (<code>[ProjenrcOptions](#projen-projenrcoptions)</code>) Options for .projenrc.json. __*Default*__: default options
403
436
  * **autoApproveOptions** (<code>[github.AutoApproveOptions](#projen-github-autoapproveoptions)</code>) Enable and configure the 'auto approve' workflow. __*Default*__: auto approve is disabled
404
437
  * **autoMergeOptions** (<code>[github.AutoMergeOptions](#projen-github-automergeoptions)</code>) Configure options for automatic merging on GitHub. __*Default*__: see defaults in `AutoMergeOptions`
405
438
  * **clobber** (<code>boolean</code>) Add a `clobber` task which resets the repo to origin. __*Default*__: true
@@ -408,6 +441,7 @@ new TaimosCdkConstructLibrary(options: TaimosCdkConstructLibraryOptions)
408
441
  * **githubOptions** (<code>[github.GitHubOptions](#projen-github-githuboptions)</code>) Options for GitHub integration. __*Default*__: see GitHubOptions
409
442
  * **gitpod** (<code>boolean</code>) Add a Gitpod development environment. __*Default*__: false
410
443
  * **mergify** (<code>boolean</code>) Whether mergify should be enabled on this repository or not. __*Default*__: true
444
+ * **mergifyOptions** (<code>[github.MergifyOptions](#projen-github-mergifyoptions)</code>) Options for mergify. __*Default*__: default options
411
445
  * **projectType** (<code>[ProjectType](#projen-projecttype)</code>) Which type of project this is (library/app). __*Default*__: ProjectType.UNKNOWN
412
446
  * **readme** (<code>[SampleReadmeProps](#projen-samplereadmeprops)</code>) The README setup. __*Default*__: { filename: 'README.md', contents: '# replace this' }
413
447
  * **stale** (<code>boolean</code>) Auto-close of stale issues and pull request. __*Default*__: true
@@ -421,6 +455,7 @@ new TaimosCdkConstructLibrary(options: TaimosCdkConstructLibraryOptions)
421
455
  * **autoDetectBin** (<code>boolean</code>) Automatically add all executables under the `bin` directory to your `package.json` file under the `bin` section. __*Default*__: true
422
456
  * **bin** (<code>Map<string, string></code>) Binary programs vended with your module. __*Optional*__
423
457
  * **bundledDeps** (<code>Array<string></code>) List of dependencies to bundle into this module. __*Optional*__
458
+ * **codeArtifactOptions** (<code>[javascript.CodeArtifactOptions](#projen-javascript-codeartifactoptions)</code>) Options for publishing npm package to AWS CodeArtifact. __*Default*__: undefined
424
459
  * **deps** (<code>Array<string></code>) Runtime dependencies of this module. __*Default*__: []
425
460
  * **description** (<code>string</code>) The description is just a string that helps people understand the purpose of the package. __*Optional*__
426
461
  * **devDeps** (<code>Array<string></code>) Build dependencies for this module. __*Default*__: []
@@ -431,16 +466,14 @@ new TaimosCdkConstructLibrary(options: TaimosCdkConstructLibraryOptions)
431
466
  * **licensed** (<code>boolean</code>) Indicates if a license should be added. __*Default*__: true
432
467
  * **maxNodeVersion** (<code>string</code>) Minimum node.js version to require via `engines` (inclusive). __*Default*__: no max
433
468
  * **minNodeVersion** (<code>string</code>) Minimum Node.js version to require via package.json `engines` (inclusive). __*Default*__: no "engines" specified
434
- * **npmAccess** (<code>[NpmAccess](#projen-npmaccess)</code>) Access level of the npm package. __*Default*__: for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.
435
- * **npmDistTag** (<code>string</code>) Tags can be used to provide an alias instead of version numbers. __*Default*__: "latest"
469
+ * **npmAccess** (<code>[javascript.NpmAccess](#projen-javascript-npmaccess)</code>) Access level of the npm package. __*Default*__: for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.
436
470
  * **npmRegistry** (<code>string</code>) The host name of the npm registry to publish to. __*Optional*__
437
471
  * **npmRegistryUrl** (<code>string</code>) The base URL of the npm package registry. __*Default*__: "https://registry.npmjs.org"
438
472
  * **npmTokenSecret** (<code>string</code>) GitHub secret which contains the NPM token to use when publishing packages. __*Default*__: "NPM_TOKEN"
439
- * **packageManager** (<code>[NodePackageManager](#projen-nodepackagemanager)</code>) The Node Package Manager used to execute scripts. __*Default*__: NodePackageManager.YARN
473
+ * **packageManager** (<code>[javascript.NodePackageManager](#projen-javascript-nodepackagemanager)</code>) The Node Package Manager used to execute scripts. __*Default*__: NodePackageManager.YARN
440
474
  * **packageName** (<code>string</code>) The "name" in package.json. __*Default*__: defaults to project name
441
- * **peerDependencyOptions** (<code>[PeerDependencyOptions](#projen-peerdependencyoptions)</code>) Options for `peerDeps`. __*Optional*__
475
+ * **peerDependencyOptions** (<code>[javascript.PeerDependencyOptions](#projen-javascript-peerdependencyoptions)</code>) Options for `peerDeps`. __*Optional*__
442
476
  * **peerDeps** (<code>Array<string></code>) Peer dependencies for this module. __*Default*__: []
443
- * **projenCommand** (<code>string</code>) The shell command to use in order to run the projen CLI. __*Default*__: "npx projen"
444
477
  * **repository** (<code>string</code>) The repository is the location where the actual code for your package lives. __*Optional*__
445
478
  * **repositoryDirectory** (<code>string</code>) If the package.json for your package is not in the root directory (for example if it is part of a monorepo), you can specify the directory in which it lives. __*Optional*__
446
479
  * **scripts** (<code>Map<string, string></code>) npm scripts to include. __*Default*__: {}
@@ -449,8 +482,10 @@ new TaimosCdkConstructLibrary(options: TaimosCdkConstructLibraryOptions)
449
482
  * **artifactsDirectory** (<code>string</code>) A directory which will contain artifacts to be published to npm. __*Default*__: "dist"
450
483
  * **jsiiReleaseVersion** (<code>string</code>) Version requirement of `jsii-release` which is used to publish modules to npm. __*Default*__: "latest"
451
484
  * **majorVersion** (<code>number</code>) Major version to release from the default branch. __*Default*__: Major version is not enforced.
485
+ * **npmDistTag** (<code>string</code>) The npmDistTag to use when publishing from the default branch. __*Default*__: "latest"
452
486
  * **postBuildSteps** (<code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code>) Steps to execute after build as part of the release workflow. __*Default*__: []
453
487
  * **prerelease** (<code>string</code>) Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre"). __*Default*__: normal semantic versions
488
+ * **publishTasks** (<code>boolean</code>) Define publishing tasks that can be executed manually as well as workflows. __*Default*__: false
454
489
  * **releaseBranches** (<code>Map<string, [release.BranchOptions](#projen-release-branchoptions)></code>) Defines additional release branches. __*Default*__: no additional branches are used for release. you can use `addBranch()` to add additional branches.
455
490
  * **releaseEveryCommit** (<code>boolean</code>) Automatically release new versions every commit to one of branches in `releaseBranches`. __*Default*__: true
456
491
  * **releaseFailureIssue** (<code>boolean</code>) Create a github issue on every failed publishing task. __*Default*__: false
@@ -460,11 +495,14 @@ new TaimosCdkConstructLibrary(options: TaimosCdkConstructLibraryOptions)
460
495
  * **releaseTrigger** (<code>[release.ReleaseTrigger](#projen-release-releasetrigger)</code>) The release trigger to use. __*Default*__: Continuous releases (`ReleaseTrigger.continuous()`)
461
496
  * **releaseWorkflowName** (<code>string</code>) The name of the default release workflow. __*Default*__: "Release"
462
497
  * **releaseWorkflowSetupSteps** (<code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code>) A set of workflow steps to execute in order to setup the workflow container. __*Optional*__
498
+ * **versionrcOptions** (<code>Map<string, any></code>) Custom configuration used when creating changelog with standard-version package. __*Default*__: standard configuration applicable for GitHub repositories
463
499
  * **workflowContainerImage** (<code>string</code>) Container image to use for GitHub workflows. __*Default*__: default image
500
+ * **workflowRunsOn** (<code>Array<string></code>) Github Runner selection labels. __*Default*__: ["ubuntu-latest"]
464
501
  * **defaultReleaseBranch** (<code>string</code>) The name of the main release branch.
465
502
  * **autoApproveProjenUpgrades** (<code>boolean</code>) Automatically approve projen upgrade PRs, allowing them to be merged by mergify (if configued). __*Default*__: false
466
503
  * **autoApproveUpgrades** (<code>boolean</code>) Automatically approve deps upgrade PRs, allowing them to be merged by mergify (if configued). __*Default*__: true
467
504
  * **buildWorkflow** (<code>boolean</code>) Define a GitHub workflow for building PRs. __*Default*__: true if not a subproject
505
+ * **bundlerOptions** (<code>[javascript.BundlerOptions](#projen-javascript-bundleroptions)</code>) Options for `Bundler`. __*Optional*__
468
506
  * **codeCov** (<code>boolean</code>) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v1 A secret is required for private repos. Configured with @codeCovTokenSecret. __*Default*__: false
469
507
  * **codeCovTokenSecret** (<code>string</code>) Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories. __*Default*__: if this option is not specified, only public repositories are supported
470
508
  * **copyrightOwner** (<code>string</code>) License copyright owner. __*Default*__: defaults to the value of authorName or "" if `authorName` is undefined.
@@ -472,16 +510,14 @@ new TaimosCdkConstructLibrary(options: TaimosCdkConstructLibraryOptions)
472
510
  * **dependabot** (<code>boolean</code>) Use dependabot to handle dependency upgrades. __*Default*__: false
473
511
  * **dependabotOptions** (<code>[github.DependabotOptions](#projen-github-dependabotoptions)</code>) Options for dependabot. __*Default*__: default options
474
512
  * **depsUpgrade** (<code>boolean</code>) Use github workflows to handle dependency upgrades. __*Default*__: true
475
- * **depsUpgradeOptions** (<code>[UpgradeDependenciesOptions](#projen-upgradedependenciesoptions)</code>) Options for depsUpgrade. __*Default*__: default options
513
+ * **depsUpgradeOptions** (<code>[javascript.UpgradeDependenciesOptions](#projen-javascript-upgradedependenciesoptions)</code>) Options for depsUpgrade. __*Default*__: default options
476
514
  * **gitignore** (<code>Array<string></code>) Additional entries to .gitignore. __*Optional*__
477
515
  * **jest** (<code>boolean</code>) Setup jest unit tests. __*Default*__: true
478
- * **jestOptions** (<code>[JestOptions](#projen-jestoptions)</code>) Jest options. __*Default*__: default options
479
- * **mergifyOptions** (<code>[github.MergifyOptions](#projen-github-mergifyoptions)</code>) Options for mergify. __*Default*__: default options
516
+ * **jestOptions** (<code>[javascript.JestOptions](#projen-javascript-jestoptions)</code>) Jest options. __*Default*__: default options
480
517
  * **mutableBuild** (<code>boolean</code>) Automatically update files modified during builds to pull-request branches. __*Default*__: true
481
518
  * **npmignore** (<code>Array<string></code>) Additional entries to .npmignore. __*Optional*__
482
519
  * **npmignoreEnabled** (<code>boolean</code>) Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs. __*Default*__: true
483
520
  * **projenDevDependency** (<code>boolean</code>) Indicates of "projen" should be installed as a devDependency. __*Default*__: true
484
- * **projenDuringBuild** (<code>boolean</code>) Execute `projen` as the first step of the `build` task to synthesize project files. __*Default*__: true
485
521
  * **projenrcJs** (<code>boolean</code>) Generate (once) .projenrc.js (in JavaScript). Set to `false` in order to disable .projenrc.js generation. __*Default*__: true if projenrcJson is false
486
522
  * **projenrcJsOptions** (<code>[javascript.ProjenrcOptions](#projen-javascript-projenrcoptions)</code>) Options for .projenrc.js. __*Default*__: default options
487
523
  * **projenUpgradeAutoMerge** (<code>boolean</code>) Automatically approve projen upgrade PRs, allowing them to be merged by mergify (if configued). __*Default*__: false
@@ -494,14 +530,14 @@ new TaimosCdkConstructLibrary(options: TaimosCdkConstructLibraryOptions)
494
530
  * **releaseToNpm** (<code>boolean</code>) Automatically release to npm when new versions are introduced. __*Default*__: false
495
531
  * **releaseWorkflow** (<code>boolean</code>) DEPRECATED: renamed to `release`. __*Default*__: true if not a subproject
496
532
  * **workflowBootstrapSteps** (<code>Array<any></code>) Workflow steps to use in order to bootstrap this repo. __*Default*__: "yarn install --frozen-lockfile && yarn projen"
533
+ * **workflowGitIdentity** (<code>[github.GitIdentity](#projen-github-gitidentity)</code>) The git identity to use in workflows. __*Default*__: GitHub Actions
497
534
  * **workflowNodeVersion** (<code>string</code>) The node version to use in GitHub workflows. __*Default*__: same as `minNodeVersion`
498
- * **compileBeforeTest** (<code>boolean</code>) Compile the code before running tests. __*Default*__: if `testdir` is under `src/**`, the default is `true`, otherwise the default is `false.
499
535
  * **disableTsconfig** (<code>boolean</code>) Do not generate a `tsconfig.json` file (used by jsii projects since tsconfig.json is generated by the jsii compiler). __*Default*__: false
500
536
  * **docgen** (<code>boolean</code>) Docgen by Typedoc. __*Default*__: false
501
537
  * **docsDirectory** (<code>string</code>) Docs directory. __*Default*__: "docs"
502
538
  * **entrypointTypes** (<code>string</code>) The .d.ts file that includes the type declarations for this module. __*Default*__: .d.ts file derived from the project's entrypoint (usually lib/index.d.ts)
503
539
  * **eslint** (<code>boolean</code>) Setup eslint. __*Default*__: true
504
- * **eslintOptions** (<code>[EslintOptions](#projen-eslintoptions)</code>) Eslint options. __*Default*__: opinionated default options
540
+ * **eslintOptions** (<code>[javascript.EslintOptions](#projen-javascript-eslintoptions)</code>) Eslint options. __*Default*__: opinionated default options
505
541
  * **libdir** (<code>string</code>) Typescript artifacts output directory. __*Default*__: "lib"
506
542
  * **package** (<code>boolean</code>) Defines a `yarn package` command that will produce a tarball and place it under `dist/js`. __*Default*__: true
507
543
  * **projenrcTs** (<code>boolean</code>) Use TypeScript for your projenrc file (`.projenrc.ts`). __*Default*__: false
@@ -509,8 +545,8 @@ new TaimosCdkConstructLibrary(options: TaimosCdkConstructLibraryOptions)
509
545
  * **sampleCode** (<code>boolean</code>) Generate one-time sample in `src/` and `test/` if there are no files there. __*Default*__: true
510
546
  * **srcdir** (<code>string</code>) Typescript sources directory. __*Default*__: "src"
511
547
  * **testdir** (<code>string</code>) Jest tests directory. Tests files should be named `xxx.test.ts`. __*Default*__: "test"
512
- * **tsconfig** (<code>[TypescriptConfigOptions](#projen-typescriptconfigoptions)</code>) Custom TSConfig. __*Default*__: default options
513
- * **tsconfigDev** (<code>[TypescriptConfigOptions](#projen-typescriptconfigoptions)</code>) Custom tsconfig options for the development tsconfig.json file (used for testing). __*Default*__: use the production tsconfig options
548
+ * **tsconfig** (<code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code>) Custom TSConfig. __*Default*__: default options
549
+ * **tsconfigDev** (<code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code>) Custom tsconfig options for the development tsconfig.json file (used for testing). __*Default*__: use the production tsconfig options
514
550
  * **tsconfigDevFile** (<code>string</code>) The name of the development tsconfig.json file. __*Default*__: "tsconfig.dev.json"
515
551
  * **typescriptVersion** (<code>string</code>) TypeScript version to use. __*Default*__: "latest"
516
552
  * **author** (<code>string</code>) The name of the library author.
@@ -518,22 +554,25 @@ new TaimosCdkConstructLibrary(options: TaimosCdkConstructLibraryOptions)
518
554
  * **repositoryUrl** (<code>string</code>) Git repository URL.
519
555
  * **compat** (<code>boolean</code>) Automatically run API compatibility test against the latest version published to npm after compilation. __*Default*__: false
520
556
  * **compatIgnore** (<code>string</code>) Name of the ignore file for API compatibility tests. __*Default*__: ".compatignore"
521
- * **dotnet** (<code>[JsiiDotNetTarget](#projen-jsiidotnettarget)</code>) *No description* __*Optional*__
557
+ * **dotnet** (<code>[cdk.JsiiDotNetTarget](#projen-cdk-jsiidotnettarget)</code>) *No description* __*Optional*__
522
558
  * **excludeTypescript** (<code>Array<string></code>) Accepts a list of glob patterns. __*Optional*__
523
- * **publishToGo** (<code>[JsiiGoTarget](#projen-jsiigotarget)</code>) Publish Go bindings to a git repository. __*Default*__: no publishing
524
- * **publishToMaven** (<code>[JsiiJavaTarget](#projen-jsiijavatarget)</code>) Publish to maven. __*Default*__: no publishing
525
- * **publishToNuget** (<code>[JsiiDotNetTarget](#projen-jsiidotnettarget)</code>) Publish to NuGet. __*Default*__: no publishing
526
- * **publishToPypi** (<code>[JsiiPythonTarget](#projen-jsiipythontarget)</code>) Publish to pypi. __*Default*__: no publishing
527
- * **python** (<code>[JsiiPythonTarget](#projen-jsiipythontarget)</code>) *No description* __*Optional*__
559
+ * **publishToGo** (<code>[cdk.JsiiGoTarget](#projen-cdk-jsiigotarget)</code>) Publish Go bindings to a git repository. __*Default*__: no publishing
560
+ * **publishToMaven** (<code>[cdk.JsiiJavaTarget](#projen-cdk-jsiijavatarget)</code>) Publish to maven. __*Default*__: no publishing
561
+ * **publishToNuget** (<code>[cdk.JsiiDotNetTarget](#projen-cdk-jsiidotnettarget)</code>) Publish to NuGet. __*Default*__: no publishing
562
+ * **publishToPypi** (<code>[cdk.JsiiPythonTarget](#projen-cdk-jsiipythontarget)</code>) Publish to pypi. __*Default*__: no publishing
563
+ * **python** (<code>[cdk.JsiiPythonTarget](#projen-cdk-jsiipythontarget)</code>) *No description* __*Optional*__
528
564
  * **rootdir** (<code>string</code>) *No description* __*Default*__: "."
529
- * **catalog** (<code>[Catalog](#projen-catalog)</code>) Libraries will be picked up by the construct catalog when they are published to npm as jsii modules and will be published under:. __*Default*__: new version will be announced
530
- * **cdkVersion** (<code>string</code>) Minimum target version this library is tested against.
531
- * **cdkAssert** (<code>boolean</code>) Install the @aws-cdk/assert library? __*Default*__: true
565
+ * **catalog** (<code>[cdk.Catalog](#projen-cdk-catalog)</code>) Libraries will be picked up by the construct catalog when they are published to npm as jsii modules and will be published under:. __*Default*__: new version will be announced
566
+ * **cdkVersion** (<code>string</code>) Minimum version of the AWS CDK to depend on.
567
+ * **cdkAssert** (<code>boolean</code>) Install the @aws-cdk/assert library? __*Default*__: will be included by default for AWS CDK >= 1.0.0 < 2.0.0
568
+ * **cdkAssertions** (<code>boolean</code>) Install the @aws-cdk/assertions library? __*Default*__: will be included by default for AWS CDK >= 1.111.0 < 2.0.0
532
569
  * **cdkDependencies** (<code>Array<string></code>) Which AWS CDK modules (those that start with "@aws-cdk/") does this library require when consumed? __*Optional*__
533
570
  * **cdkDependenciesAsDeps** (<code>boolean</code>) If this is enabled (default), all modules declared in `cdkDependencies` will be also added as normal `dependencies` (as well as `peerDependencies`). __*Default*__: true
534
571
  * **cdkTestDependencies** (<code>Array<string></code>) AWS CDK modules required for testing. __*Optional*__
535
- * **cdkVersionPinning** (<code>boolean</code>) Use pinned version instead of caret version for CDK. __*Default*__: false
536
- * **constructsVersion** (<code>string</code>) Minimum target version of constructs being tested against. If not provided, the default value depends on the configured `cdkVersion`:. __*Default*__: When the default behavior is used, the dependency on `constructs` will only be added as a `peerDependency`. Otherwise, a `devDependency` will also be added, set to the exact version configrued here.
572
+ * **cdkVersionPinning** (<code>boolean</code>) Use pinned version instead of caret version for CDK. __*Optional*__
573
+ * **constructsVersion** (<code>string</code>) Minimum version of the `constructs` library to depend on. __*Default*__: for CDK 1.x the default is "3.2.27", for CDK 2.x the default is "10.0.5".
574
+ * **lambdaAutoDiscover** (<code>boolean</code>) Automatically adds an `aws_lambda.Function` for each `.lambda.ts` handler in your source tree. If this is disabled, you either need to explicitly call `aws_lambda.Function.autoDiscover()` or define a `new aws_lambda.Function()` for each handler. __*Default*__: true
575
+ * **lambdaOptions** (<code>[awscdk.LambdaFunctionCommonOptions](#projen-awscdk-lambdafunctioncommonoptions)</code>) Common options for all AWS Lambda functions. __*Default*__: default options
537
576
 
538
577
 
539
578
 
@@ -558,8 +597,9 @@ new TaimosPrivateTypescriptLibrary(options: TaimosPrivateTypescriptLibraryOption
558
597
  * **logging** (<code>[LoggerOptions](#projen-loggeroptions)</code>) Configure logging options such as verbosity. __*Default*__: {}
559
598
  * **outdir** (<code>string</code>) The root directory of the project. __*Default*__: "."
560
599
  * **parent** (<code>[Project](#projen-project)</code>) The parent project, if this project is part of a bigger project. __*Optional*__
600
+ * **projenCommand** (<code>string</code>) The shell command to use in order to run the projen CLI. __*Default*__: "npx projen"
561
601
  * **projenrcJson** (<code>boolean</code>) Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .projenrc.json generation. __*Default*__: false
562
- * **projenrcJsonOptions** (<code>[json.ProjenrcOptions](#projen-json-projenrcoptions)</code>) Options for .projenrc.json. __*Default*__: default options
602
+ * **projenrcJsonOptions** (<code>[ProjenrcOptions](#projen-projenrcoptions)</code>) Options for .projenrc.json. __*Default*__: default options
563
603
  * **autoApproveOptions** (<code>[github.AutoApproveOptions](#projen-github-autoapproveoptions)</code>) Enable and configure the 'auto approve' workflow. __*Default*__: auto approve is disabled
564
604
  * **autoMergeOptions** (<code>[github.AutoMergeOptions](#projen-github-automergeoptions)</code>) Configure options for automatic merging on GitHub. __*Default*__: see defaults in `AutoMergeOptions`
565
605
  * **clobber** (<code>boolean</code>) Add a `clobber` task which resets the repo to origin. __*Default*__: true
@@ -568,6 +608,7 @@ new TaimosPrivateTypescriptLibrary(options: TaimosPrivateTypescriptLibraryOption
568
608
  * **githubOptions** (<code>[github.GitHubOptions](#projen-github-githuboptions)</code>) Options for GitHub integration. __*Default*__: see GitHubOptions
569
609
  * **gitpod** (<code>boolean</code>) Add a Gitpod development environment. __*Default*__: false
570
610
  * **mergify** (<code>boolean</code>) Whether mergify should be enabled on this repository or not. __*Default*__: true
611
+ * **mergifyOptions** (<code>[github.MergifyOptions](#projen-github-mergifyoptions)</code>) Options for mergify. __*Default*__: default options
571
612
  * **projectType** (<code>[ProjectType](#projen-projecttype)</code>) Which type of project this is (library/app). __*Default*__: ProjectType.UNKNOWN
572
613
  * **readme** (<code>[SampleReadmeProps](#projen-samplereadmeprops)</code>) The README setup. __*Default*__: { filename: 'README.md', contents: '# replace this' }
573
614
  * **stale** (<code>boolean</code>) Auto-close of stale issues and pull request. __*Default*__: true
@@ -581,6 +622,7 @@ new TaimosPrivateTypescriptLibrary(options: TaimosPrivateTypescriptLibraryOption
581
622
  * **autoDetectBin** (<code>boolean</code>) Automatically add all executables under the `bin` directory to your `package.json` file under the `bin` section. __*Default*__: true
582
623
  * **bin** (<code>Map<string, string></code>) Binary programs vended with your module. __*Optional*__
583
624
  * **bundledDeps** (<code>Array<string></code>) List of dependencies to bundle into this module. __*Optional*__
625
+ * **codeArtifactOptions** (<code>[javascript.CodeArtifactOptions](#projen-javascript-codeartifactoptions)</code>) Options for publishing npm package to AWS CodeArtifact. __*Default*__: undefined
584
626
  * **deps** (<code>Array<string></code>) Runtime dependencies of this module. __*Default*__: []
585
627
  * **description** (<code>string</code>) The description is just a string that helps people understand the purpose of the package. __*Optional*__
586
628
  * **devDeps** (<code>Array<string></code>) Build dependencies for this module. __*Default*__: []
@@ -591,16 +633,14 @@ new TaimosPrivateTypescriptLibrary(options: TaimosPrivateTypescriptLibraryOption
591
633
  * **licensed** (<code>boolean</code>) Indicates if a license should be added. __*Default*__: true
592
634
  * **maxNodeVersion** (<code>string</code>) Minimum node.js version to require via `engines` (inclusive). __*Default*__: no max
593
635
  * **minNodeVersion** (<code>string</code>) Minimum Node.js version to require via package.json `engines` (inclusive). __*Default*__: no "engines" specified
594
- * **npmAccess** (<code>[NpmAccess](#projen-npmaccess)</code>) Access level of the npm package. __*Default*__: for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.
595
- * **npmDistTag** (<code>string</code>) Tags can be used to provide an alias instead of version numbers. __*Default*__: "latest"
636
+ * **npmAccess** (<code>[javascript.NpmAccess](#projen-javascript-npmaccess)</code>) Access level of the npm package. __*Default*__: for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.
596
637
  * **npmRegistry** (<code>string</code>) The host name of the npm registry to publish to. __*Optional*__
597
638
  * **npmRegistryUrl** (<code>string</code>) The base URL of the npm package registry. __*Default*__: "https://registry.npmjs.org"
598
639
  * **npmTokenSecret** (<code>string</code>) GitHub secret which contains the NPM token to use when publishing packages. __*Default*__: "NPM_TOKEN"
599
- * **packageManager** (<code>[NodePackageManager](#projen-nodepackagemanager)</code>) The Node Package Manager used to execute scripts. __*Default*__: NodePackageManager.YARN
640
+ * **packageManager** (<code>[javascript.NodePackageManager](#projen-javascript-nodepackagemanager)</code>) The Node Package Manager used to execute scripts. __*Default*__: NodePackageManager.YARN
600
641
  * **packageName** (<code>string</code>) The "name" in package.json. __*Default*__: defaults to project name
601
- * **peerDependencyOptions** (<code>[PeerDependencyOptions](#projen-peerdependencyoptions)</code>) Options for `peerDeps`. __*Optional*__
642
+ * **peerDependencyOptions** (<code>[javascript.PeerDependencyOptions](#projen-javascript-peerdependencyoptions)</code>) Options for `peerDeps`. __*Optional*__
602
643
  * **peerDeps** (<code>Array<string></code>) Peer dependencies for this module. __*Default*__: []
603
- * **projenCommand** (<code>string</code>) The shell command to use in order to run the projen CLI. __*Default*__: "npx projen"
604
644
  * **repository** (<code>string</code>) The repository is the location where the actual code for your package lives. __*Optional*__
605
645
  * **repositoryDirectory** (<code>string</code>) If the package.json for your package is not in the root directory (for example if it is part of a monorepo), you can specify the directory in which it lives. __*Optional*__
606
646
  * **scripts** (<code>Map<string, string></code>) npm scripts to include. __*Default*__: {}
@@ -609,8 +649,10 @@ new TaimosPrivateTypescriptLibrary(options: TaimosPrivateTypescriptLibraryOption
609
649
  * **artifactsDirectory** (<code>string</code>) A directory which will contain artifacts to be published to npm. __*Default*__: "dist"
610
650
  * **jsiiReleaseVersion** (<code>string</code>) Version requirement of `jsii-release` which is used to publish modules to npm. __*Default*__: "latest"
611
651
  * **majorVersion** (<code>number</code>) Major version to release from the default branch. __*Default*__: Major version is not enforced.
652
+ * **npmDistTag** (<code>string</code>) The npmDistTag to use when publishing from the default branch. __*Default*__: "latest"
612
653
  * **postBuildSteps** (<code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code>) Steps to execute after build as part of the release workflow. __*Default*__: []
613
654
  * **prerelease** (<code>string</code>) Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre"). __*Default*__: normal semantic versions
655
+ * **publishTasks** (<code>boolean</code>) Define publishing tasks that can be executed manually as well as workflows. __*Default*__: false
614
656
  * **releaseBranches** (<code>Map<string, [release.BranchOptions](#projen-release-branchoptions)></code>) Defines additional release branches. __*Default*__: no additional branches are used for release. you can use `addBranch()` to add additional branches.
615
657
  * **releaseEveryCommit** (<code>boolean</code>) Automatically release new versions every commit to one of branches in `releaseBranches`. __*Default*__: true
616
658
  * **releaseFailureIssue** (<code>boolean</code>) Create a github issue on every failed publishing task. __*Default*__: false
@@ -620,11 +662,14 @@ new TaimosPrivateTypescriptLibrary(options: TaimosPrivateTypescriptLibraryOption
620
662
  * **releaseTrigger** (<code>[release.ReleaseTrigger](#projen-release-releasetrigger)</code>) The release trigger to use. __*Default*__: Continuous releases (`ReleaseTrigger.continuous()`)
621
663
  * **releaseWorkflowName** (<code>string</code>) The name of the default release workflow. __*Default*__: "Release"
622
664
  * **releaseWorkflowSetupSteps** (<code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code>) A set of workflow steps to execute in order to setup the workflow container. __*Optional*__
665
+ * **versionrcOptions** (<code>Map<string, any></code>) Custom configuration used when creating changelog with standard-version package. __*Default*__: standard configuration applicable for GitHub repositories
623
666
  * **workflowContainerImage** (<code>string</code>) Container image to use for GitHub workflows. __*Default*__: default image
667
+ * **workflowRunsOn** (<code>Array<string></code>) Github Runner selection labels. __*Default*__: ["ubuntu-latest"]
624
668
  * **defaultReleaseBranch** (<code>string</code>) The name of the main release branch.
625
669
  * **autoApproveProjenUpgrades** (<code>boolean</code>) Automatically approve projen upgrade PRs, allowing them to be merged by mergify (if configued). __*Default*__: false
626
670
  * **autoApproveUpgrades** (<code>boolean</code>) Automatically approve deps upgrade PRs, allowing them to be merged by mergify (if configued). __*Default*__: true
627
671
  * **buildWorkflow** (<code>boolean</code>) Define a GitHub workflow for building PRs. __*Default*__: true if not a subproject
672
+ * **bundlerOptions** (<code>[javascript.BundlerOptions](#projen-javascript-bundleroptions)</code>) Options for `Bundler`. __*Optional*__
628
673
  * **codeCov** (<code>boolean</code>) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v1 A secret is required for private repos. Configured with @codeCovTokenSecret. __*Default*__: false
629
674
  * **codeCovTokenSecret** (<code>string</code>) Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories. __*Default*__: if this option is not specified, only public repositories are supported
630
675
  * **copyrightOwner** (<code>string</code>) License copyright owner. __*Default*__: defaults to the value of authorName or "" if `authorName` is undefined.
@@ -632,16 +677,14 @@ new TaimosPrivateTypescriptLibrary(options: TaimosPrivateTypescriptLibraryOption
632
677
  * **dependabot** (<code>boolean</code>) Use dependabot to handle dependency upgrades. __*Default*__: false
633
678
  * **dependabotOptions** (<code>[github.DependabotOptions](#projen-github-dependabotoptions)</code>) Options for dependabot. __*Default*__: default options
634
679
  * **depsUpgrade** (<code>boolean</code>) Use github workflows to handle dependency upgrades. __*Default*__: true
635
- * **depsUpgradeOptions** (<code>[UpgradeDependenciesOptions](#projen-upgradedependenciesoptions)</code>) Options for depsUpgrade. __*Default*__: default options
680
+ * **depsUpgradeOptions** (<code>[javascript.UpgradeDependenciesOptions](#projen-javascript-upgradedependenciesoptions)</code>) Options for depsUpgrade. __*Default*__: default options
636
681
  * **gitignore** (<code>Array<string></code>) Additional entries to .gitignore. __*Optional*__
637
682
  * **jest** (<code>boolean</code>) Setup jest unit tests. __*Default*__: true
638
- * **jestOptions** (<code>[JestOptions](#projen-jestoptions)</code>) Jest options. __*Default*__: default options
639
- * **mergifyOptions** (<code>[github.MergifyOptions](#projen-github-mergifyoptions)</code>) Options for mergify. __*Default*__: default options
683
+ * **jestOptions** (<code>[javascript.JestOptions](#projen-javascript-jestoptions)</code>) Jest options. __*Default*__: default options
640
684
  * **mutableBuild** (<code>boolean</code>) Automatically update files modified during builds to pull-request branches. __*Default*__: true
641
685
  * **npmignore** (<code>Array<string></code>) Additional entries to .npmignore. __*Optional*__
642
686
  * **npmignoreEnabled** (<code>boolean</code>) Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs. __*Default*__: true
643
687
  * **projenDevDependency** (<code>boolean</code>) Indicates of "projen" should be installed as a devDependency. __*Default*__: true
644
- * **projenDuringBuild** (<code>boolean</code>) Execute `projen` as the first step of the `build` task to synthesize project files. __*Default*__: true
645
688
  * **projenrcJs** (<code>boolean</code>) Generate (once) .projenrc.js (in JavaScript). Set to `false` in order to disable .projenrc.js generation. __*Default*__: true if projenrcJson is false
646
689
  * **projenrcJsOptions** (<code>[javascript.ProjenrcOptions](#projen-javascript-projenrcoptions)</code>) Options for .projenrc.js. __*Default*__: default options
647
690
  * **projenUpgradeAutoMerge** (<code>boolean</code>) Automatically approve projen upgrade PRs, allowing them to be merged by mergify (if configued). __*Default*__: false
@@ -654,14 +697,14 @@ new TaimosPrivateTypescriptLibrary(options: TaimosPrivateTypescriptLibraryOption
654
697
  * **releaseToNpm** (<code>boolean</code>) Automatically release to npm when new versions are introduced. __*Default*__: false
655
698
  * **releaseWorkflow** (<code>boolean</code>) DEPRECATED: renamed to `release`. __*Default*__: true if not a subproject
656
699
  * **workflowBootstrapSteps** (<code>Array<any></code>) Workflow steps to use in order to bootstrap this repo. __*Default*__: "yarn install --frozen-lockfile && yarn projen"
700
+ * **workflowGitIdentity** (<code>[github.GitIdentity](#projen-github-gitidentity)</code>) The git identity to use in workflows. __*Default*__: GitHub Actions
657
701
  * **workflowNodeVersion** (<code>string</code>) The node version to use in GitHub workflows. __*Default*__: same as `minNodeVersion`
658
- * **compileBeforeTest** (<code>boolean</code>) Compile the code before running tests. __*Default*__: if `testdir` is under `src/**`, the default is `true`, otherwise the default is `false.
659
702
  * **disableTsconfig** (<code>boolean</code>) Do not generate a `tsconfig.json` file (used by jsii projects since tsconfig.json is generated by the jsii compiler). __*Default*__: false
660
703
  * **docgen** (<code>boolean</code>) Docgen by Typedoc. __*Default*__: false
661
704
  * **docsDirectory** (<code>string</code>) Docs directory. __*Default*__: "docs"
662
705
  * **entrypointTypes** (<code>string</code>) The .d.ts file that includes the type declarations for this module. __*Default*__: .d.ts file derived from the project's entrypoint (usually lib/index.d.ts)
663
706
  * **eslint** (<code>boolean</code>) Setup eslint. __*Default*__: true
664
- * **eslintOptions** (<code>[EslintOptions](#projen-eslintoptions)</code>) Eslint options. __*Default*__: opinionated default options
707
+ * **eslintOptions** (<code>[javascript.EslintOptions](#projen-javascript-eslintoptions)</code>) Eslint options. __*Default*__: opinionated default options
665
708
  * **libdir** (<code>string</code>) Typescript artifacts output directory. __*Default*__: "lib"
666
709
  * **package** (<code>boolean</code>) Defines a `yarn package` command that will produce a tarball and place it under `dist/js`. __*Default*__: true
667
710
  * **projenrcTs** (<code>boolean</code>) Use TypeScript for your projenrc file (`.projenrc.ts`). __*Default*__: false
@@ -669,19 +712,27 @@ new TaimosPrivateTypescriptLibrary(options: TaimosPrivateTypescriptLibraryOption
669
712
  * **sampleCode** (<code>boolean</code>) Generate one-time sample in `src/` and `test/` if there are no files there. __*Default*__: true
670
713
  * **srcdir** (<code>string</code>) Typescript sources directory. __*Default*__: "src"
671
714
  * **testdir** (<code>string</code>) Jest tests directory. Tests files should be named `xxx.test.ts`. __*Default*__: "test"
672
- * **tsconfig** (<code>[TypescriptConfigOptions](#projen-typescriptconfigoptions)</code>) Custom TSConfig. __*Default*__: default options
673
- * **tsconfigDev** (<code>[TypescriptConfigOptions](#projen-typescriptconfigoptions)</code>) Custom tsconfig options for the development tsconfig.json file (used for testing). __*Default*__: use the production tsconfig options
715
+ * **tsconfig** (<code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code>) Custom TSConfig. __*Default*__: default options
716
+ * **tsconfigDev** (<code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code>) Custom tsconfig options for the development tsconfig.json file (used for testing). __*Default*__: use the production tsconfig options
674
717
  * **tsconfigDevFile** (<code>string</code>) The name of the development tsconfig.json file. __*Default*__: "tsconfig.dev.json"
675
718
  * **typescriptVersion** (<code>string</code>) TypeScript version to use. __*Default*__: "latest"
676
719
 
677
720
 
678
721
 
722
+ ### Properties
723
+
724
+
725
+ Name | Type | Description
726
+ -----|------|-------------
727
+ **npmConfig** | <code>[javascript.NpmConfig](#projen-javascript-npmconfig)</code> | <span></span>
728
+
729
+
679
730
 
680
731
  ## class TaimosTypescriptLibrary <a id="taimos-projen-taimostypescriptlibrary"></a>
681
732
 
682
733
  TypeScript library.
683
734
 
684
- __Extends__: [TypeScriptProject](#projen-typescriptproject)
735
+ __Extends__: [typescript.TypeScriptProject](#projen-typescript-typescriptproject)
685
736
 
686
737
  ### Initializer
687
738
 
@@ -697,8 +748,9 @@ new TaimosTypescriptLibrary(options: TaimosTypescriptLibraryOptions)
697
748
  * **logging** (<code>[LoggerOptions](#projen-loggeroptions)</code>) Configure logging options such as verbosity. __*Default*__: {}
698
749
  * **outdir** (<code>string</code>) The root directory of the project. __*Default*__: "."
699
750
  * **parent** (<code>[Project](#projen-project)</code>) The parent project, if this project is part of a bigger project. __*Optional*__
751
+ * **projenCommand** (<code>string</code>) The shell command to use in order to run the projen CLI. __*Default*__: "npx projen"
700
752
  * **projenrcJson** (<code>boolean</code>) Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .projenrc.json generation. __*Default*__: false
701
- * **projenrcJsonOptions** (<code>[json.ProjenrcOptions](#projen-json-projenrcoptions)</code>) Options for .projenrc.json. __*Default*__: default options
753
+ * **projenrcJsonOptions** (<code>[ProjenrcOptions](#projen-projenrcoptions)</code>) Options for .projenrc.json. __*Default*__: default options
702
754
  * **autoApproveOptions** (<code>[github.AutoApproveOptions](#projen-github-autoapproveoptions)</code>) Enable and configure the 'auto approve' workflow. __*Default*__: auto approve is disabled
703
755
  * **autoMergeOptions** (<code>[github.AutoMergeOptions](#projen-github-automergeoptions)</code>) Configure options for automatic merging on GitHub. __*Default*__: see defaults in `AutoMergeOptions`
704
756
  * **clobber** (<code>boolean</code>) Add a `clobber` task which resets the repo to origin. __*Default*__: true
@@ -707,6 +759,7 @@ new TaimosTypescriptLibrary(options: TaimosTypescriptLibraryOptions)
707
759
  * **githubOptions** (<code>[github.GitHubOptions](#projen-github-githuboptions)</code>) Options for GitHub integration. __*Default*__: see GitHubOptions
708
760
  * **gitpod** (<code>boolean</code>) Add a Gitpod development environment. __*Default*__: false
709
761
  * **mergify** (<code>boolean</code>) Whether mergify should be enabled on this repository or not. __*Default*__: true
762
+ * **mergifyOptions** (<code>[github.MergifyOptions](#projen-github-mergifyoptions)</code>) Options for mergify. __*Default*__: default options
710
763
  * **projectType** (<code>[ProjectType](#projen-projecttype)</code>) Which type of project this is (library/app). __*Default*__: ProjectType.UNKNOWN
711
764
  * **readme** (<code>[SampleReadmeProps](#projen-samplereadmeprops)</code>) The README setup. __*Default*__: { filename: 'README.md', contents: '# replace this' }
712
765
  * **stale** (<code>boolean</code>) Auto-close of stale issues and pull request. __*Default*__: true
@@ -720,6 +773,7 @@ new TaimosTypescriptLibrary(options: TaimosTypescriptLibraryOptions)
720
773
  * **autoDetectBin** (<code>boolean</code>) Automatically add all executables under the `bin` directory to your `package.json` file under the `bin` section. __*Default*__: true
721
774
  * **bin** (<code>Map<string, string></code>) Binary programs vended with your module. __*Optional*__
722
775
  * **bundledDeps** (<code>Array<string></code>) List of dependencies to bundle into this module. __*Optional*__
776
+ * **codeArtifactOptions** (<code>[javascript.CodeArtifactOptions](#projen-javascript-codeartifactoptions)</code>) Options for publishing npm package to AWS CodeArtifact. __*Default*__: undefined
723
777
  * **deps** (<code>Array<string></code>) Runtime dependencies of this module. __*Default*__: []
724
778
  * **description** (<code>string</code>) The description is just a string that helps people understand the purpose of the package. __*Optional*__
725
779
  * **devDeps** (<code>Array<string></code>) Build dependencies for this module. __*Default*__: []
@@ -730,16 +784,14 @@ new TaimosTypescriptLibrary(options: TaimosTypescriptLibraryOptions)
730
784
  * **licensed** (<code>boolean</code>) Indicates if a license should be added. __*Default*__: true
731
785
  * **maxNodeVersion** (<code>string</code>) Minimum node.js version to require via `engines` (inclusive). __*Default*__: no max
732
786
  * **minNodeVersion** (<code>string</code>) Minimum Node.js version to require via package.json `engines` (inclusive). __*Default*__: no "engines" specified
733
- * **npmAccess** (<code>[NpmAccess](#projen-npmaccess)</code>) Access level of the npm package. __*Default*__: for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.
734
- * **npmDistTag** (<code>string</code>) Tags can be used to provide an alias instead of version numbers. __*Default*__: "latest"
787
+ * **npmAccess** (<code>[javascript.NpmAccess](#projen-javascript-npmaccess)</code>) Access level of the npm package. __*Default*__: for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.
735
788
  * **npmRegistry** (<code>string</code>) The host name of the npm registry to publish to. __*Optional*__
736
789
  * **npmRegistryUrl** (<code>string</code>) The base URL of the npm package registry. __*Default*__: "https://registry.npmjs.org"
737
790
  * **npmTokenSecret** (<code>string</code>) GitHub secret which contains the NPM token to use when publishing packages. __*Default*__: "NPM_TOKEN"
738
- * **packageManager** (<code>[NodePackageManager](#projen-nodepackagemanager)</code>) The Node Package Manager used to execute scripts. __*Default*__: NodePackageManager.YARN
791
+ * **packageManager** (<code>[javascript.NodePackageManager](#projen-javascript-nodepackagemanager)</code>) The Node Package Manager used to execute scripts. __*Default*__: NodePackageManager.YARN
739
792
  * **packageName** (<code>string</code>) The "name" in package.json. __*Default*__: defaults to project name
740
- * **peerDependencyOptions** (<code>[PeerDependencyOptions](#projen-peerdependencyoptions)</code>) Options for `peerDeps`. __*Optional*__
793
+ * **peerDependencyOptions** (<code>[javascript.PeerDependencyOptions](#projen-javascript-peerdependencyoptions)</code>) Options for `peerDeps`. __*Optional*__
741
794
  * **peerDeps** (<code>Array<string></code>) Peer dependencies for this module. __*Default*__: []
742
- * **projenCommand** (<code>string</code>) The shell command to use in order to run the projen CLI. __*Default*__: "npx projen"
743
795
  * **repository** (<code>string</code>) The repository is the location where the actual code for your package lives. __*Optional*__
744
796
  * **repositoryDirectory** (<code>string</code>) If the package.json for your package is not in the root directory (for example if it is part of a monorepo), you can specify the directory in which it lives. __*Optional*__
745
797
  * **scripts** (<code>Map<string, string></code>) npm scripts to include. __*Default*__: {}
@@ -748,8 +800,10 @@ new TaimosTypescriptLibrary(options: TaimosTypescriptLibraryOptions)
748
800
  * **artifactsDirectory** (<code>string</code>) A directory which will contain artifacts to be published to npm. __*Default*__: "dist"
749
801
  * **jsiiReleaseVersion** (<code>string</code>) Version requirement of `jsii-release` which is used to publish modules to npm. __*Default*__: "latest"
750
802
  * **majorVersion** (<code>number</code>) Major version to release from the default branch. __*Default*__: Major version is not enforced.
803
+ * **npmDistTag** (<code>string</code>) The npmDistTag to use when publishing from the default branch. __*Default*__: "latest"
751
804
  * **postBuildSteps** (<code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code>) Steps to execute after build as part of the release workflow. __*Default*__: []
752
805
  * **prerelease** (<code>string</code>) Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre"). __*Default*__: normal semantic versions
806
+ * **publishTasks** (<code>boolean</code>) Define publishing tasks that can be executed manually as well as workflows. __*Default*__: false
753
807
  * **releaseBranches** (<code>Map<string, [release.BranchOptions](#projen-release-branchoptions)></code>) Defines additional release branches. __*Default*__: no additional branches are used for release. you can use `addBranch()` to add additional branches.
754
808
  * **releaseEveryCommit** (<code>boolean</code>) Automatically release new versions every commit to one of branches in `releaseBranches`. __*Default*__: true
755
809
  * **releaseFailureIssue** (<code>boolean</code>) Create a github issue on every failed publishing task. __*Default*__: false
@@ -759,11 +813,14 @@ new TaimosTypescriptLibrary(options: TaimosTypescriptLibraryOptions)
759
813
  * **releaseTrigger** (<code>[release.ReleaseTrigger](#projen-release-releasetrigger)</code>) The release trigger to use. __*Default*__: Continuous releases (`ReleaseTrigger.continuous()`)
760
814
  * **releaseWorkflowName** (<code>string</code>) The name of the default release workflow. __*Default*__: "Release"
761
815
  * **releaseWorkflowSetupSteps** (<code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code>) A set of workflow steps to execute in order to setup the workflow container. __*Optional*__
816
+ * **versionrcOptions** (<code>Map<string, any></code>) Custom configuration used when creating changelog with standard-version package. __*Default*__: standard configuration applicable for GitHub repositories
762
817
  * **workflowContainerImage** (<code>string</code>) Container image to use for GitHub workflows. __*Default*__: default image
818
+ * **workflowRunsOn** (<code>Array<string></code>) Github Runner selection labels. __*Default*__: ["ubuntu-latest"]
763
819
  * **defaultReleaseBranch** (<code>string</code>) The name of the main release branch.
764
820
  * **autoApproveProjenUpgrades** (<code>boolean</code>) Automatically approve projen upgrade PRs, allowing them to be merged by mergify (if configued). __*Default*__: false
765
821
  * **autoApproveUpgrades** (<code>boolean</code>) Automatically approve deps upgrade PRs, allowing them to be merged by mergify (if configued). __*Default*__: true
766
822
  * **buildWorkflow** (<code>boolean</code>) Define a GitHub workflow for building PRs. __*Default*__: true if not a subproject
823
+ * **bundlerOptions** (<code>[javascript.BundlerOptions](#projen-javascript-bundleroptions)</code>) Options for `Bundler`. __*Optional*__
767
824
  * **codeCov** (<code>boolean</code>) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v1 A secret is required for private repos. Configured with @codeCovTokenSecret. __*Default*__: false
768
825
  * **codeCovTokenSecret** (<code>string</code>) Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories. __*Default*__: if this option is not specified, only public repositories are supported
769
826
  * **copyrightOwner** (<code>string</code>) License copyright owner. __*Default*__: defaults to the value of authorName or "" if `authorName` is undefined.
@@ -771,16 +828,14 @@ new TaimosTypescriptLibrary(options: TaimosTypescriptLibraryOptions)
771
828
  * **dependabot** (<code>boolean</code>) Use dependabot to handle dependency upgrades. __*Default*__: false
772
829
  * **dependabotOptions** (<code>[github.DependabotOptions](#projen-github-dependabotoptions)</code>) Options for dependabot. __*Default*__: default options
773
830
  * **depsUpgrade** (<code>boolean</code>) Use github workflows to handle dependency upgrades. __*Default*__: true
774
- * **depsUpgradeOptions** (<code>[UpgradeDependenciesOptions](#projen-upgradedependenciesoptions)</code>) Options for depsUpgrade. __*Default*__: default options
831
+ * **depsUpgradeOptions** (<code>[javascript.UpgradeDependenciesOptions](#projen-javascript-upgradedependenciesoptions)</code>) Options for depsUpgrade. __*Default*__: default options
775
832
  * **gitignore** (<code>Array<string></code>) Additional entries to .gitignore. __*Optional*__
776
833
  * **jest** (<code>boolean</code>) Setup jest unit tests. __*Default*__: true
777
- * **jestOptions** (<code>[JestOptions](#projen-jestoptions)</code>) Jest options. __*Default*__: default options
778
- * **mergifyOptions** (<code>[github.MergifyOptions](#projen-github-mergifyoptions)</code>) Options for mergify. __*Default*__: default options
834
+ * **jestOptions** (<code>[javascript.JestOptions](#projen-javascript-jestoptions)</code>) Jest options. __*Default*__: default options
779
835
  * **mutableBuild** (<code>boolean</code>) Automatically update files modified during builds to pull-request branches. __*Default*__: true
780
836
  * **npmignore** (<code>Array<string></code>) Additional entries to .npmignore. __*Optional*__
781
837
  * **npmignoreEnabled** (<code>boolean</code>) Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs. __*Default*__: true
782
838
  * **projenDevDependency** (<code>boolean</code>) Indicates of "projen" should be installed as a devDependency. __*Default*__: true
783
- * **projenDuringBuild** (<code>boolean</code>) Execute `projen` as the first step of the `build` task to synthesize project files. __*Default*__: true
784
839
  * **projenrcJs** (<code>boolean</code>) Generate (once) .projenrc.js (in JavaScript). Set to `false` in order to disable .projenrc.js generation. __*Default*__: true if projenrcJson is false
785
840
  * **projenrcJsOptions** (<code>[javascript.ProjenrcOptions](#projen-javascript-projenrcoptions)</code>) Options for .projenrc.js. __*Default*__: default options
786
841
  * **projenUpgradeAutoMerge** (<code>boolean</code>) Automatically approve projen upgrade PRs, allowing them to be merged by mergify (if configued). __*Default*__: false
@@ -793,14 +848,14 @@ new TaimosTypescriptLibrary(options: TaimosTypescriptLibraryOptions)
793
848
  * **releaseToNpm** (<code>boolean</code>) Automatically release to npm when new versions are introduced. __*Default*__: false
794
849
  * **releaseWorkflow** (<code>boolean</code>) DEPRECATED: renamed to `release`. __*Default*__: true if not a subproject
795
850
  * **workflowBootstrapSteps** (<code>Array<any></code>) Workflow steps to use in order to bootstrap this repo. __*Default*__: "yarn install --frozen-lockfile && yarn projen"
851
+ * **workflowGitIdentity** (<code>[github.GitIdentity](#projen-github-gitidentity)</code>) The git identity to use in workflows. __*Default*__: GitHub Actions
796
852
  * **workflowNodeVersion** (<code>string</code>) The node version to use in GitHub workflows. __*Default*__: same as `minNodeVersion`
797
- * **compileBeforeTest** (<code>boolean</code>) Compile the code before running tests. __*Default*__: if `testdir` is under `src/**`, the default is `true`, otherwise the default is `false.
798
853
  * **disableTsconfig** (<code>boolean</code>) Do not generate a `tsconfig.json` file (used by jsii projects since tsconfig.json is generated by the jsii compiler). __*Default*__: false
799
854
  * **docgen** (<code>boolean</code>) Docgen by Typedoc. __*Default*__: false
800
855
  * **docsDirectory** (<code>string</code>) Docs directory. __*Default*__: "docs"
801
856
  * **entrypointTypes** (<code>string</code>) The .d.ts file that includes the type declarations for this module. __*Default*__: .d.ts file derived from the project's entrypoint (usually lib/index.d.ts)
802
857
  * **eslint** (<code>boolean</code>) Setup eslint. __*Default*__: true
803
- * **eslintOptions** (<code>[EslintOptions](#projen-eslintoptions)</code>) Eslint options. __*Default*__: opinionated default options
858
+ * **eslintOptions** (<code>[javascript.EslintOptions](#projen-javascript-eslintoptions)</code>) Eslint options. __*Default*__: opinionated default options
804
859
  * **libdir** (<code>string</code>) Typescript artifacts output directory. __*Default*__: "lib"
805
860
  * **package** (<code>boolean</code>) Defines a `yarn package` command that will produce a tarball and place it under `dist/js`. __*Default*__: true
806
861
  * **projenrcTs** (<code>boolean</code>) Use TypeScript for your projenrc file (`.projenrc.ts`). __*Default*__: false
@@ -808,8 +863,8 @@ new TaimosTypescriptLibrary(options: TaimosTypescriptLibraryOptions)
808
863
  * **sampleCode** (<code>boolean</code>) Generate one-time sample in `src/` and `test/` if there are no files there. __*Default*__: true
809
864
  * **srcdir** (<code>string</code>) Typescript sources directory. __*Default*__: "src"
810
865
  * **testdir** (<code>string</code>) Jest tests directory. Tests files should be named `xxx.test.ts`. __*Default*__: "test"
811
- * **tsconfig** (<code>[TypescriptConfigOptions](#projen-typescriptconfigoptions)</code>) Custom TSConfig. __*Default*__: default options
812
- * **tsconfigDev** (<code>[TypescriptConfigOptions](#projen-typescriptconfigoptions)</code>) Custom tsconfig options for the development tsconfig.json file (used for testing). __*Default*__: use the production tsconfig options
866
+ * **tsconfig** (<code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code>) Custom TSConfig. __*Default*__: default options
867
+ * **tsconfigDev** (<code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code>) Custom tsconfig options for the development tsconfig.json file (used for testing). __*Default*__: use the production tsconfig options
813
868
  * **tsconfigDevFile** (<code>string</code>) The name of the development tsconfig.json file. __*Default*__: "tsconfig.dev.json"
814
869
  * **typescriptVersion** (<code>string</code>) TypeScript version to use. __*Default*__: "latest"
815
870
 
@@ -825,7 +880,7 @@ new TaimosTypescriptLibrary(options: TaimosTypescriptLibraryOptions)
825
880
 
826
881
  Name | Type | Description
827
882
  -----|------|-------------
828
- **cdkVersion**🔹 | <code>string</code> | AWS CDK version to use.
883
+ **cdkVersion**🔹 | <code>string</code> | Minimum version of the AWS CDK to depend on.
829
884
  **defaultReleaseBranch**🔹 | <code>string</code> | The name of the main release branch.
830
885
  **name**🔹 | <code>string</code> | This is the name of your project.
831
886
  **allowLibraryDependencies**?🔹 | <code>boolean</code> | Allow the project to include `peerDependencies` and `bundledDependencies`.<br/>__*Default*__: true
@@ -842,23 +897,31 @@ Name | Type | Description
842
897
  **autoDetectBin**?🔹 | <code>boolean</code> | Automatically add all executables under the `bin` directory to your `package.json` file under the `bin` section.<br/>__*Default*__: true
843
898
  **autoMergeOptions**?🔹 | <code>[github.AutoMergeOptions](#projen-github-automergeoptions)</code> | Configure options for automatic merging on GitHub.<br/>__*Default*__: see defaults in `AutoMergeOptions`
844
899
  **bin**?🔹 | <code>Map<string, string></code> | Binary programs vended with your module.<br/>__*Optional*__
900
+ **buildCommand**?🔹 | <code>string</code> | A command to execute before synthesis.<br/>__*Default*__: no build command
845
901
  **buildWorkflow**?🔹 | <code>boolean</code> | Define a GitHub workflow for building PRs.<br/>__*Default*__: true if not a subproject
846
902
  **bundledDeps**?🔹 | <code>Array<string></code> | List of dependencies to bundle into this module.<br/>__*Optional*__
847
- **cdkDependencies**?🔹 | <code>Array<string></code> | Which AWS CDK modules (those that start with "@aws-cdk/") this app uses.<br/>__*Optional*__
903
+ **bundlerOptions**?🔹 | <code>[javascript.BundlerOptions](#projen-javascript-bundleroptions)</code> | Options for `Bundler`.<br/>__*Optional*__
904
+ **cdkAssert**?⚠️ | <code>boolean</code> | Install the @aws-cdk/assert library?<br/>__*Default*__: will be included by default for AWS CDK >= 1.0.0 < 2.0.0
905
+ **cdkAssertions**?🔹 | <code>boolean</code> | Install the @aws-cdk/assertions library?<br/>__*Default*__: will be included by default for AWS CDK >= 1.111.0 < 2.0.0
906
+ **cdkDependencies**?⚠️ | <code>Array<string></code> | Which AWS CDK modules (those that start with "@aws-cdk/") does this library require when consumed?<br/>__*Optional*__
907
+ **cdkDependenciesAsDeps**?⚠️ | <code>boolean</code> | If this is enabled (default), all modules declared in `cdkDependencies` will be also added as normal `dependencies` (as well as `peerDependencies`).<br/>__*Default*__: true
848
908
  **cdkPipelines**? | <code>boolean</code> | Enable CDK pipelines.<br/>__*Default*__: false
849
- **cdkVersionPinning**?🔹 | <code>boolean</code> | Use pinned version instead of caret version for CDK.<br/>__*Default*__: false
909
+ **cdkTestDependencies**?⚠️ | <code>Array<string></code> | AWS CDK modules required for testing.<br/>__*Optional*__
910
+ **cdkVersionPinning**?🔹 | <code>boolean</code> | Use pinned version instead of caret version for CDK.<br/>__*Optional*__
911
+ **cdkout**?🔹 | <code>string</code> | cdk.out directory.<br/>__*Default*__: "cdk.out"
850
912
  **clobber**?🔹 | <code>boolean</code> | Add a `clobber` task which resets the repo to origin.<br/>__*Default*__: true
913
+ **codeArtifactOptions**?🔹 | <code>[javascript.CodeArtifactOptions](#projen-javascript-codeartifactoptions)</code> | Options for publishing npm package to AWS CodeArtifact.<br/>__*Default*__: undefined
851
914
  **codeCov**?🔹 | <code>boolean</code> | Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v1 A secret is required for private repos. Configured with @codeCovTokenSecret.<br/>__*Default*__: false
852
915
  **codeCovTokenSecret**?🔹 | <code>string</code> | Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories.<br/>__*Default*__: if this option is not specified, only public repositories are supported
853
- **compileBeforeTest**?🔹 | <code>boolean</code> | Compile the code before running tests.<br/>__*Default*__: if `testdir` is under `src/**`, the default is `true`, otherwise the default is `false.
854
- **context**?🔹 | <code>Map<string, string></code> | Additional context to include in `cdk.json`.<br/>__*Optional*__
916
+ **constructsVersion**?🔹 | <code>string</code> | Minimum version of the `constructs` library to depend on.<br/>__*Default*__: for CDK 1.x the default is "3.2.27", for CDK 2.x the default is "10.0.5".
917
+ **context**?🔹 | <code>Map<string, string></code> | Additional context to include in `cdk.json`.<br/>__*Default*__: no additional context
855
918
  **copyrightOwner**?🔹 | <code>string</code> | License copyright owner.<br/>__*Default*__: defaults to the value of authorName or "" if `authorName` is undefined.
856
919
  **copyrightPeriod**?🔹 | <code>string</code> | The copyright years to put in the LICENSE file.<br/>__*Default*__: current year
857
920
  **dependabot**?🔹 | <code>boolean</code> | Use dependabot to handle dependency upgrades.<br/>__*Default*__: false
858
921
  **dependabotOptions**?🔹 | <code>[github.DependabotOptions](#projen-github-dependabotoptions)</code> | Options for dependabot.<br/>__*Default*__: default options
859
922
  **deps**?🔹 | <code>Array<string></code> | Runtime dependencies of this module.<br/>__*Default*__: []
860
923
  **depsUpgrade**?🔹 | <code>boolean</code> | Use github workflows to handle dependency upgrades.<br/>__*Default*__: true
861
- **depsUpgradeOptions**?🔹 | <code>[UpgradeDependenciesOptions](#projen-upgradedependenciesoptions)</code> | Options for depsUpgrade.<br/>__*Default*__: default options
924
+ **depsUpgradeOptions**?🔹 | <code>[javascript.UpgradeDependenciesOptions](#projen-javascript-upgradedependenciesoptions)</code> | Options for depsUpgrade.<br/>__*Default*__: default options
862
925
  **description**?🔹 | <code>string</code> | The description is just a string that helps people understand the purpose of the package.<br/>__*Optional*__
863
926
  **devContainer**?🔹 | <code>boolean</code> | Add a VSCode development environment (used for GitHub Codespaces).<br/>__*Default*__: false
864
927
  **devDeps**?🔹 | <code>Array<string></code> | Build dependencies for this module.<br/>__*Default*__: []
@@ -868,16 +931,19 @@ Name | Type | Description
868
931
  **entrypoint**?🔹 | <code>string</code> | Module entrypoint (`main` in `package.json`).<br/>__*Default*__: "lib/index.js"
869
932
  **entrypointTypes**?🔹 | <code>string</code> | The .d.ts file that includes the type declarations for this module.<br/>__*Default*__: .d.ts file derived from the project's entrypoint (usually lib/index.d.ts)
870
933
  **eslint**?🔹 | <code>boolean</code> | Setup eslint.<br/>__*Default*__: true
871
- **eslintOptions**?🔹 | <code>[EslintOptions](#projen-eslintoptions)</code> | Eslint options.<br/>__*Default*__: opinionated default options
934
+ **eslintOptions**?🔹 | <code>[javascript.EslintOptions](#projen-javascript-eslintoptions)</code> | Eslint options.<br/>__*Default*__: opinionated default options
935
+ **featureFlags**?🔹 | <code>boolean</code> | Include all feature flags in cdk.json.<br/>__*Default*__: true
872
936
  **github**?🔹 | <code>boolean</code> | Enable GitHub integration.<br/>__*Default*__: true
873
937
  **githubOptions**?🔹 | <code>[github.GitHubOptions](#projen-github-githuboptions)</code> | Options for GitHub integration.<br/>__*Default*__: see GitHubOptions
874
938
  **gitignore**?🔹 | <code>Array<string></code> | Additional entries to .gitignore.<br/>__*Optional*__
875
939
  **gitpod**?🔹 | <code>boolean</code> | Add a Gitpod development environment.<br/>__*Default*__: false
876
940
  **homepage**?🔹 | <code>string</code> | Package's Homepage / Website.<br/>__*Optional*__
877
941
  **jest**?🔹 | <code>boolean</code> | Setup jest unit tests.<br/>__*Default*__: true
878
- **jestOptions**?🔹 | <code>[JestOptions](#projen-jestoptions)</code> | Jest options.<br/>__*Default*__: default options
942
+ **jestOptions**?🔹 | <code>[javascript.JestOptions](#projen-javascript-jestoptions)</code> | Jest options.<br/>__*Default*__: default options
879
943
  **jsiiReleaseVersion**?🔹 | <code>string</code> | Version requirement of `jsii-release` which is used to publish modules to npm.<br/>__*Default*__: "latest"
880
944
  **keywords**?🔹 | <code>Array<string></code> | Keywords to include in `package.json`.<br/>__*Optional*__
945
+ **lambdaAutoDiscover**?🔹 | <code>boolean</code> | Automatically adds an `awscdk.LambdaFunction` for each `.lambda.ts` handler in your source tree. If this is disabled, you can manually add an `awscdk.AutoDiscover` component to your project.<br/>__*Default*__: true
946
+ **lambdaOptions**?🔹 | <code>[awscdk.LambdaFunctionCommonOptions](#projen-awscdk-lambdafunctioncommonoptions)</code> | Common options for all AWS Lambda functions.<br/>__*Default*__: default options
881
947
  **libdir**?🔹 | <code>string</code> | Typescript artifacts output directory.<br/>__*Default*__: "lib"
882
948
  **license**?🔹 | <code>string</code> | License's SPDX identifier.<br/>__*Default*__: "Apache-2.0"
883
949
  **licensed**?🔹 | <code>boolean</code> | Indicates if a license should be added.<br/>__*Default*__: true
@@ -885,11 +951,11 @@ Name | Type | Description
885
951
  **majorVersion**?🔹 | <code>number</code> | Major version to release from the default branch.<br/>__*Default*__: Major version is not enforced.
886
952
  **maxNodeVersion**?🔹 | <code>string</code> | Minimum node.js version to require via `engines` (inclusive).<br/>__*Default*__: no max
887
953
  **mergify**?⚠️ | <code>boolean</code> | Whether mergify should be enabled on this repository or not.<br/>__*Default*__: true
888
- **mergifyOptions**?🔹 | <code>[github.MergifyOptions](#projen-github-mergifyoptions)</code> | Options for mergify.<br/>__*Default*__: default options
954
+ **mergifyOptions**?⚠️ | <code>[github.MergifyOptions](#projen-github-mergifyoptions)</code> | Options for mergify.<br/>__*Default*__: default options
889
955
  **minNodeVersion**?🔹 | <code>string</code> | Minimum Node.js version to require via package.json `engines` (inclusive).<br/>__*Default*__: no "engines" specified
890
956
  **mutableBuild**?🔹 | <code>boolean</code> | Automatically update files modified during builds to pull-request branches.<br/>__*Default*__: true
891
- **npmAccess**?🔹 | <code>[NpmAccess](#projen-npmaccess)</code> | Access level of the npm package.<br/>__*Default*__: for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.
892
- **npmDistTag**?🔹 | <code>string</code> | Tags can be used to provide an alias instead of version numbers.<br/>__*Default*__: "latest"
957
+ **npmAccess**?🔹 | <code>[javascript.NpmAccess](#projen-javascript-npmaccess)</code> | Access level of the npm package.<br/>__*Default*__: for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.
958
+ **npmDistTag**?🔹 | <code>string</code> | The npmDistTag to use when publishing from the default branch.<br/>__*Default*__: "latest"
893
959
  **npmRegistry**?⚠️ | <code>string</code> | The host name of the npm registry to publish to.<br/>__*Optional*__
894
960
  **npmRegistryUrl**?🔹 | <code>string</code> | The base URL of the npm package registry.<br/>__*Default*__: "https://registry.npmjs.org"
895
961
  **npmTokenSecret**?🔹 | <code>string</code> | GitHub secret which contains the NPM token to use when publishing packages.<br/>__*Default*__: "NPM_TOKEN"
@@ -897,17 +963,16 @@ Name | Type | Description
897
963
  **npmignoreEnabled**?🔹 | <code>boolean</code> | Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs.<br/>__*Default*__: true
898
964
  **outdir**?🔹 | <code>string</code> | The root directory of the project.<br/>__*Default*__: "."
899
965
  **package**?🔹 | <code>boolean</code> | Defines a `yarn package` command that will produce a tarball and place it under `dist/js`.<br/>__*Default*__: true
900
- **packageManager**?🔹 | <code>[NodePackageManager](#projen-nodepackagemanager)</code> | The Node Package Manager used to execute scripts.<br/>__*Default*__: NodePackageManager.YARN
966
+ **packageManager**?🔹 | <code>[javascript.NodePackageManager](#projen-javascript-nodepackagemanager)</code> | The Node Package Manager used to execute scripts.<br/>__*Default*__: NodePackageManager.YARN
901
967
  **packageName**?🔹 | <code>string</code> | The "name" in package.json.<br/>__*Default*__: defaults to project name
902
968
  **parent**?🔹 | <code>[Project](#projen-project)</code> | The parent project, if this project is part of a bigger project.<br/>__*Optional*__
903
- **peerDependencyOptions**?🔹 | <code>[PeerDependencyOptions](#projen-peerdependencyoptions)</code> | Options for `peerDeps`.<br/>__*Optional*__
969
+ **peerDependencyOptions**?🔹 | <code>[javascript.PeerDependencyOptions](#projen-javascript-peerdependencyoptions)</code> | Options for `peerDeps`.<br/>__*Optional*__
904
970
  **peerDeps**?🔹 | <code>Array<string></code> | Peer dependencies for this module.<br/>__*Default*__: []
905
971
  **postBuildSteps**?🔹 | <code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code> | Steps to execute after build as part of the release workflow.<br/>__*Default*__: []
906
972
  **prerelease**?🔹 | <code>string</code> | Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre").<br/>__*Default*__: normal semantic versions
907
973
  **projectType**?⚠️ | <code>[ProjectType](#projen-projecttype)</code> | Which type of project this is (library/app).<br/>__*Default*__: ProjectType.UNKNOWN
908
974
  **projenCommand**?🔹 | <code>string</code> | The shell command to use in order to run the projen CLI.<br/>__*Default*__: "npx projen"
909
975
  **projenDevDependency**?🔹 | <code>boolean</code> | Indicates of "projen" should be installed as a devDependency.<br/>__*Default*__: true
910
- **projenDuringBuild**?🔹 | <code>boolean</code> | Execute `projen` as the first step of the `build` task to synthesize project files.<br/>__*Default*__: true
911
976
  **projenUpgradeAutoMerge**?⚠️ | <code>boolean</code> | Automatically approve projen upgrade PRs, allowing them to be merged by mergify (if configued).<br/>__*Default*__: false
912
977
  **projenUpgradeSchedule**?🔹 | <code>Array<string></code> | Customize the projenUpgrade schedule in cron expression.<br/>__*Default*__: [ "0 6 * * *" ]
913
978
  **projenUpgradeSecret**?🔹 | <code>string</code> | Periodically submits a pull request for projen upgrades (executes `yarn projen:upgrade`).<br/>__*Default*__: no automatic projen upgrade pull requests
@@ -915,9 +980,10 @@ Name | Type | Description
915
980
  **projenrcJs**?🔹 | <code>boolean</code> | Generate (once) .projenrc.js (in JavaScript). Set to `false` in order to disable .projenrc.js generation.<br/>__*Default*__: true if projenrcJson is false
916
981
  **projenrcJsOptions**?🔹 | <code>[javascript.ProjenrcOptions](#projen-javascript-projenrcoptions)</code> | Options for .projenrc.js.<br/>__*Default*__: default options
917
982
  **projenrcJson**?🔹 | <code>boolean</code> | Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .projenrc.json generation.<br/>__*Default*__: false
918
- **projenrcJsonOptions**?🔹 | <code>[json.ProjenrcOptions](#projen-json-projenrcoptions)</code> | Options for .projenrc.json.<br/>__*Default*__: default options
983
+ **projenrcJsonOptions**?🔹 | <code>[ProjenrcOptions](#projen-projenrcoptions)</code> | Options for .projenrc.json.<br/>__*Default*__: default options
919
984
  **projenrcTs**?🔹 | <code>boolean</code> | Use TypeScript for your projenrc file (`.projenrc.ts`).<br/>__*Default*__: false
920
985
  **projenrcTsOptions**?🔹 | <code>[typescript.ProjenrcOptions](#projen-typescript-projenrcoptions)</code> | Options for .projenrc.ts.<br/>__*Optional*__
986
+ **publishTasks**?🔹 | <code>boolean</code> | Define publishing tasks that can be executed manually as well as workflows.<br/>__*Default*__: false
921
987
  **pullRequestTemplate**?🔹 | <code>boolean</code> | Include a GitHub pull request template.<br/>__*Default*__: true
922
988
  **pullRequestTemplateContents**?🔹 | <code>Array<string></code> | The contents of the pull request template.<br/>__*Default*__: default content
923
989
  **readme**?🔹 | <code>[SampleReadmeProps](#projen-samplereadmeprops)</code> | The README setup.<br/>__*Default*__: { filename: 'README.md', contents: '# replace this' }
@@ -935,7 +1001,7 @@ Name | Type | Description
935
1001
  **releaseWorkflowSetupSteps**?🔹 | <code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code> | A set of workflow steps to execute in order to setup the workflow container.<br/>__*Optional*__
936
1002
  **repository**?🔹 | <code>string</code> | The repository is the location where the actual code for your package lives.<br/>__*Optional*__
937
1003
  **repositoryDirectory**?🔹 | <code>string</code> | If the package.json for your package is not in the root directory (for example if it is part of a monorepo), you can specify the directory in which it lives.<br/>__*Optional*__
938
- **requireApproval**?🔹 | <code>[CdkApprovalLevel](#projen-cdkapprovallevel)</code> | To protect you against unintended changes that affect your security posture, the AWS CDK Toolkit prompts you to approve security-related changes before deploying them.<br/>__*Default*__: CdkApprovalLevel.BROADENING
1004
+ **requireApproval**?🔹 | <code>[awscdk.ApprovalLevel](#projen-awscdk-approvallevel)</code> | To protect you against unintended changes that affect your security posture, the AWS CDK Toolkit prompts you to approve security-related changes before deploying them.<br/>__*Default*__: ApprovalLevel.BROADENING
939
1005
  **sampleCode**?🔹 | <code>boolean</code> | Generate one-time sample in `src/` and `test/` if there are no files there.<br/>__*Default*__: true
940
1006
  **scripts**?🔹 | <code>Map<string, string></code> | npm scripts to include.<br/>__*Default*__: {}
941
1007
  **sops**? | <code>[SopsAspectOptions](#taimos-projen-sopsaspectoptions)</code> | Enable storing secrets using Mozilla SOPS.<br/>__*Default*__: no SOPS config
@@ -944,14 +1010,19 @@ Name | Type | Description
944
1010
  **stale**?🔹 | <code>boolean</code> | Auto-close of stale issues and pull request.<br/>__*Default*__: true
945
1011
  **staleOptions**?🔹 | <code>[github.StaleOptions](#projen-github-staleoptions)</code> | Auto-close stale issues and pull requests.<br/>__*Default*__: see defaults in `StaleOptions`
946
1012
  **testdir**?🔹 | <code>string</code> | Jest tests directory. Tests files should be named `xxx.test.ts`.<br/>__*Default*__: "test"
947
- **tsconfig**?🔹 | <code>[TypescriptConfigOptions](#projen-typescriptconfigoptions)</code> | Custom TSConfig.<br/>__*Default*__: default options
948
- **tsconfigDev**?🔹 | <code>[TypescriptConfigOptions](#projen-typescriptconfigoptions)</code> | Custom tsconfig options for the development tsconfig.json file (used for testing).<br/>__*Default*__: use the production tsconfig options
1013
+ **tsconfig**?🔹 | <code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code> | Custom TSConfig.<br/>__*Default*__: default options
1014
+ **tsconfigDev**?🔹 | <code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code> | Custom tsconfig options for the development tsconfig.json file (used for testing).<br/>__*Default*__: use the production tsconfig options
949
1015
  **tsconfigDevFile**?🔹 | <code>string</code> | The name of the development tsconfig.json file.<br/>__*Default*__: "tsconfig.dev.json"
950
1016
  **typescriptVersion**?🔹 | <code>string</code> | TypeScript version to use.<br/>__*Default*__: "latest"
1017
+ **versionrcOptions**?🔹 | <code>Map<string, any></code> | Custom configuration used when creating changelog with standard-version package.<br/>__*Default*__: standard configuration applicable for GitHub repositories
951
1018
  **vscode**?🔹 | <code>boolean</code> | Enable VSCode integration.<br/>__*Default*__: true
1019
+ **watchExcludes**?🔹 | <code>Array<string></code> | Glob patterns to exclude from `cdk watch`.<br/>__*Default*__: []
1020
+ **watchIncludes**?🔹 | <code>Array<string></code> | Glob patterns to include in `cdk watch`.<br/>__*Default*__: []
952
1021
  **workflowBootstrapSteps**?🔹 | <code>Array<any></code> | Workflow steps to use in order to bootstrap this repo.<br/>__*Default*__: "yarn install --frozen-lockfile && yarn projen"
953
1022
  **workflowContainerImage**?🔹 | <code>string</code> | Container image to use for GitHub workflows.<br/>__*Default*__: default image
1023
+ **workflowGitIdentity**?🔹 | <code>[github.GitIdentity](#projen-github-gitidentity)</code> | The git identity to use in workflows.<br/>__*Default*__: GitHub Actions
954
1024
  **workflowNodeVersion**?🔹 | <code>string</code> | The node version to use in GitHub workflows.<br/>__*Default*__: same as `minNodeVersion`
1025
+ **workflowRunsOn**?🔹 | <code>Array<string></code> | Github Runner selection labels.<br/>__*Default*__: ["ubuntu-latest"]
955
1026
 
956
1027
 
957
1028
 
@@ -977,7 +1048,7 @@ Name | Type | Description
977
1048
 
978
1049
  Name | Type | Description
979
1050
  -----|------|-------------
980
- **cdkVersion**🔹 | <code>string</code> | AWS CDK version to use.
1051
+ **cdkVersion**🔹 | <code>string</code> | Minimum version of the AWS CDK to depend on.
981
1052
  **defaultReleaseBranch**🔹 | <code>string</code> | The name of the main release branch.
982
1053
  **name**🔹 | <code>string</code> | This is the name of your project.
983
1054
  **allowLibraryDependencies**?🔹 | <code>boolean</code> | Allow the project to include `peerDependencies` and `bundledDependencies`.<br/>__*Default*__: true
@@ -994,23 +1065,31 @@ Name | Type | Description
994
1065
  **autoDetectBin**?🔹 | <code>boolean</code> | Automatically add all executables under the `bin` directory to your `package.json` file under the `bin` section.<br/>__*Default*__: true
995
1066
  **autoMergeOptions**?🔹 | <code>[github.AutoMergeOptions](#projen-github-automergeoptions)</code> | Configure options for automatic merging on GitHub.<br/>__*Default*__: see defaults in `AutoMergeOptions`
996
1067
  **bin**?🔹 | <code>Map<string, string></code> | Binary programs vended with your module.<br/>__*Optional*__
1068
+ **buildCommand**?🔹 | <code>string</code> | A command to execute before synthesis.<br/>__*Default*__: no build command
997
1069
  **buildWorkflow**?🔹 | <code>boolean</code> | Define a GitHub workflow for building PRs.<br/>__*Default*__: true if not a subproject
998
1070
  **bundledDeps**?🔹 | <code>Array<string></code> | List of dependencies to bundle into this module.<br/>__*Optional*__
999
- **cdkDependencies**?🔹 | <code>Array<string></code> | Which AWS CDK modules (those that start with "@aws-cdk/") this app uses.<br/>__*Optional*__
1071
+ **bundlerOptions**?🔹 | <code>[javascript.BundlerOptions](#projen-javascript-bundleroptions)</code> | Options for `Bundler`.<br/>__*Optional*__
1072
+ **cdkAssert**?⚠️ | <code>boolean</code> | Install the @aws-cdk/assert library?<br/>__*Default*__: will be included by default for AWS CDK >= 1.0.0 < 2.0.0
1073
+ **cdkAssertions**?🔹 | <code>boolean</code> | Install the @aws-cdk/assertions library?<br/>__*Default*__: will be included by default for AWS CDK >= 1.111.0 < 2.0.0
1074
+ **cdkDependencies**?⚠️ | <code>Array<string></code> | Which AWS CDK modules (those that start with "@aws-cdk/") does this library require when consumed?<br/>__*Optional*__
1075
+ **cdkDependenciesAsDeps**?⚠️ | <code>boolean</code> | If this is enabled (default), all modules declared in `cdkDependencies` will be also added as normal `dependencies` (as well as `peerDependencies`).<br/>__*Default*__: true
1000
1076
  **cdkPipelines**? | <code>boolean</code> | Enable CDK pipelines.<br/>__*Default*__: false
1001
- **cdkVersionPinning**?🔹 | <code>boolean</code> | Use pinned version instead of caret version for CDK.<br/>__*Default*__: false
1077
+ **cdkTestDependencies**?⚠️ | <code>Array<string></code> | AWS CDK modules required for testing.<br/>__*Optional*__
1078
+ **cdkVersionPinning**?🔹 | <code>boolean</code> | Use pinned version instead of caret version for CDK.<br/>__*Optional*__
1079
+ **cdkout**?🔹 | <code>string</code> | cdk.out directory.<br/>__*Default*__: "cdk.out"
1002
1080
  **clobber**?🔹 | <code>boolean</code> | Add a `clobber` task which resets the repo to origin.<br/>__*Default*__: true
1081
+ **codeArtifactOptions**?🔹 | <code>[javascript.CodeArtifactOptions](#projen-javascript-codeartifactoptions)</code> | Options for publishing npm package to AWS CodeArtifact.<br/>__*Default*__: undefined
1003
1082
  **codeCov**?🔹 | <code>boolean</code> | Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v1 A secret is required for private repos. Configured with @codeCovTokenSecret.<br/>__*Default*__: false
1004
1083
  **codeCovTokenSecret**?🔹 | <code>string</code> | Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories.<br/>__*Default*__: if this option is not specified, only public repositories are supported
1005
- **compileBeforeTest**?🔹 | <code>boolean</code> | Compile the code before running tests.<br/>__*Default*__: if `testdir` is under `src/**`, the default is `true`, otherwise the default is `false.
1006
- **context**?🔹 | <code>Map<string, string></code> | Additional context to include in `cdk.json`.<br/>__*Optional*__
1084
+ **constructsVersion**?🔹 | <code>string</code> | Minimum version of the `constructs` library to depend on.<br/>__*Default*__: for CDK 1.x the default is "3.2.27", for CDK 2.x the default is "10.0.5".
1085
+ **context**?🔹 | <code>Map<string, string></code> | Additional context to include in `cdk.json`.<br/>__*Default*__: no additional context
1007
1086
  **copyrightOwner**?🔹 | <code>string</code> | License copyright owner.<br/>__*Default*__: defaults to the value of authorName or "" if `authorName` is undefined.
1008
1087
  **copyrightPeriod**?🔹 | <code>string</code> | The copyright years to put in the LICENSE file.<br/>__*Default*__: current year
1009
1088
  **dependabot**?🔹 | <code>boolean</code> | Use dependabot to handle dependency upgrades.<br/>__*Default*__: false
1010
1089
  **dependabotOptions**?🔹 | <code>[github.DependabotOptions](#projen-github-dependabotoptions)</code> | Options for dependabot.<br/>__*Default*__: default options
1011
1090
  **deps**?🔹 | <code>Array<string></code> | Runtime dependencies of this module.<br/>__*Default*__: []
1012
1091
  **depsUpgrade**?🔹 | <code>boolean</code> | Use github workflows to handle dependency upgrades.<br/>__*Default*__: true
1013
- **depsUpgradeOptions**?🔹 | <code>[UpgradeDependenciesOptions](#projen-upgradedependenciesoptions)</code> | Options for depsUpgrade.<br/>__*Default*__: default options
1092
+ **depsUpgradeOptions**?🔹 | <code>[javascript.UpgradeDependenciesOptions](#projen-javascript-upgradedependenciesoptions)</code> | Options for depsUpgrade.<br/>__*Default*__: default options
1014
1093
  **description**?🔹 | <code>string</code> | The description is just a string that helps people understand the purpose of the package.<br/>__*Optional*__
1015
1094
  **devContainer**?🔹 | <code>boolean</code> | Add a VSCode development environment (used for GitHub Codespaces).<br/>__*Default*__: false
1016
1095
  **devDeps**?🔹 | <code>Array<string></code> | Build dependencies for this module.<br/>__*Default*__: []
@@ -1020,16 +1099,19 @@ Name | Type | Description
1020
1099
  **entrypoint**?🔹 | <code>string</code> | Module entrypoint (`main` in `package.json`).<br/>__*Default*__: "lib/index.js"
1021
1100
  **entrypointTypes**?🔹 | <code>string</code> | The .d.ts file that includes the type declarations for this module.<br/>__*Default*__: .d.ts file derived from the project's entrypoint (usually lib/index.d.ts)
1022
1101
  **eslint**?🔹 | <code>boolean</code> | Setup eslint.<br/>__*Default*__: true
1023
- **eslintOptions**?🔹 | <code>[EslintOptions](#projen-eslintoptions)</code> | Eslint options.<br/>__*Default*__: opinionated default options
1102
+ **eslintOptions**?🔹 | <code>[javascript.EslintOptions](#projen-javascript-eslintoptions)</code> | Eslint options.<br/>__*Default*__: opinionated default options
1103
+ **featureFlags**?🔹 | <code>boolean</code> | Include all feature flags in cdk.json.<br/>__*Default*__: true
1024
1104
  **github**?🔹 | <code>boolean</code> | Enable GitHub integration.<br/>__*Default*__: true
1025
1105
  **githubOptions**?🔹 | <code>[github.GitHubOptions](#projen-github-githuboptions)</code> | Options for GitHub integration.<br/>__*Default*__: see GitHubOptions
1026
1106
  **gitignore**?🔹 | <code>Array<string></code> | Additional entries to .gitignore.<br/>__*Optional*__
1027
1107
  **gitpod**?🔹 | <code>boolean</code> | Add a Gitpod development environment.<br/>__*Default*__: false
1028
1108
  **homepage**?🔹 | <code>string</code> | Package's Homepage / Website.<br/>__*Optional*__
1029
1109
  **jest**?🔹 | <code>boolean</code> | Setup jest unit tests.<br/>__*Default*__: true
1030
- **jestOptions**?🔹 | <code>[JestOptions](#projen-jestoptions)</code> | Jest options.<br/>__*Default*__: default options
1110
+ **jestOptions**?🔹 | <code>[javascript.JestOptions](#projen-javascript-jestoptions)</code> | Jest options.<br/>__*Default*__: default options
1031
1111
  **jsiiReleaseVersion**?🔹 | <code>string</code> | Version requirement of `jsii-release` which is used to publish modules to npm.<br/>__*Default*__: "latest"
1032
1112
  **keywords**?🔹 | <code>Array<string></code> | Keywords to include in `package.json`.<br/>__*Optional*__
1113
+ **lambdaAutoDiscover**?🔹 | <code>boolean</code> | Automatically adds an `awscdk.LambdaFunction` for each `.lambda.ts` handler in your source tree. If this is disabled, you can manually add an `awscdk.AutoDiscover` component to your project.<br/>__*Default*__: true
1114
+ **lambdaOptions**?🔹 | <code>[awscdk.LambdaFunctionCommonOptions](#projen-awscdk-lambdafunctioncommonoptions)</code> | Common options for all AWS Lambda functions.<br/>__*Default*__: default options
1033
1115
  **libdir**?🔹 | <code>string</code> | Typescript artifacts output directory.<br/>__*Default*__: "lib"
1034
1116
  **license**?🔹 | <code>string</code> | License's SPDX identifier.<br/>__*Default*__: "Apache-2.0"
1035
1117
  **licensed**?🔹 | <code>boolean</code> | Indicates if a license should be added.<br/>__*Default*__: true
@@ -1037,11 +1119,11 @@ Name | Type | Description
1037
1119
  **majorVersion**?🔹 | <code>number</code> | Major version to release from the default branch.<br/>__*Default*__: Major version is not enforced.
1038
1120
  **maxNodeVersion**?🔹 | <code>string</code> | Minimum node.js version to require via `engines` (inclusive).<br/>__*Default*__: no max
1039
1121
  **mergify**?⚠️ | <code>boolean</code> | Whether mergify should be enabled on this repository or not.<br/>__*Default*__: true
1040
- **mergifyOptions**?🔹 | <code>[github.MergifyOptions](#projen-github-mergifyoptions)</code> | Options for mergify.<br/>__*Default*__: default options
1122
+ **mergifyOptions**?⚠️ | <code>[github.MergifyOptions](#projen-github-mergifyoptions)</code> | Options for mergify.<br/>__*Default*__: default options
1041
1123
  **minNodeVersion**?🔹 | <code>string</code> | Minimum Node.js version to require via package.json `engines` (inclusive).<br/>__*Default*__: no "engines" specified
1042
1124
  **mutableBuild**?🔹 | <code>boolean</code> | Automatically update files modified during builds to pull-request branches.<br/>__*Default*__: true
1043
- **npmAccess**?🔹 | <code>[NpmAccess](#projen-npmaccess)</code> | Access level of the npm package.<br/>__*Default*__: for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.
1044
- **npmDistTag**?🔹 | <code>string</code> | Tags can be used to provide an alias instead of version numbers.<br/>__*Default*__: "latest"
1125
+ **npmAccess**?🔹 | <code>[javascript.NpmAccess](#projen-javascript-npmaccess)</code> | Access level of the npm package.<br/>__*Default*__: for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.
1126
+ **npmDistTag**?🔹 | <code>string</code> | The npmDistTag to use when publishing from the default branch.<br/>__*Default*__: "latest"
1045
1127
  **npmRegistry**?⚠️ | <code>string</code> | The host name of the npm registry to publish to.<br/>__*Optional*__
1046
1128
  **npmRegistryUrl**?🔹 | <code>string</code> | The base URL of the npm package registry.<br/>__*Default*__: "https://registry.npmjs.org"
1047
1129
  **npmTokenSecret**?🔹 | <code>string</code> | GitHub secret which contains the NPM token to use when publishing packages.<br/>__*Default*__: "NPM_TOKEN"
@@ -1049,17 +1131,16 @@ Name | Type | Description
1049
1131
  **npmignoreEnabled**?🔹 | <code>boolean</code> | Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs.<br/>__*Default*__: true
1050
1132
  **outdir**?🔹 | <code>string</code> | The root directory of the project.<br/>__*Default*__: "."
1051
1133
  **package**?🔹 | <code>boolean</code> | Defines a `yarn package` command that will produce a tarball and place it under `dist/js`.<br/>__*Default*__: true
1052
- **packageManager**?🔹 | <code>[NodePackageManager](#projen-nodepackagemanager)</code> | The Node Package Manager used to execute scripts.<br/>__*Default*__: NodePackageManager.YARN
1134
+ **packageManager**?🔹 | <code>[javascript.NodePackageManager](#projen-javascript-nodepackagemanager)</code> | The Node Package Manager used to execute scripts.<br/>__*Default*__: NodePackageManager.YARN
1053
1135
  **packageName**?🔹 | <code>string</code> | The "name" in package.json.<br/>__*Default*__: defaults to project name
1054
1136
  **parent**?🔹 | <code>[Project](#projen-project)</code> | The parent project, if this project is part of a bigger project.<br/>__*Optional*__
1055
- **peerDependencyOptions**?🔹 | <code>[PeerDependencyOptions](#projen-peerdependencyoptions)</code> | Options for `peerDeps`.<br/>__*Optional*__
1137
+ **peerDependencyOptions**?🔹 | <code>[javascript.PeerDependencyOptions](#projen-javascript-peerdependencyoptions)</code> | Options for `peerDeps`.<br/>__*Optional*__
1056
1138
  **peerDeps**?🔹 | <code>Array<string></code> | Peer dependencies for this module.<br/>__*Default*__: []
1057
1139
  **postBuildSteps**?🔹 | <code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code> | Steps to execute after build as part of the release workflow.<br/>__*Default*__: []
1058
1140
  **prerelease**?🔹 | <code>string</code> | Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre").<br/>__*Default*__: normal semantic versions
1059
1141
  **projectType**?⚠️ | <code>[ProjectType](#projen-projecttype)</code> | Which type of project this is (library/app).<br/>__*Default*__: ProjectType.UNKNOWN
1060
1142
  **projenCommand**?🔹 | <code>string</code> | The shell command to use in order to run the projen CLI.<br/>__*Default*__: "npx projen"
1061
1143
  **projenDevDependency**?🔹 | <code>boolean</code> | Indicates of "projen" should be installed as a devDependency.<br/>__*Default*__: true
1062
- **projenDuringBuild**?🔹 | <code>boolean</code> | Execute `projen` as the first step of the `build` task to synthesize project files.<br/>__*Default*__: true
1063
1144
  **projenUpgradeAutoMerge**?⚠️ | <code>boolean</code> | Automatically approve projen upgrade PRs, allowing them to be merged by mergify (if configued).<br/>__*Default*__: false
1064
1145
  **projenUpgradeSchedule**?🔹 | <code>Array<string></code> | Customize the projenUpgrade schedule in cron expression.<br/>__*Default*__: [ "0 6 * * *" ]
1065
1146
  **projenUpgradeSecret**?🔹 | <code>string</code> | Periodically submits a pull request for projen upgrades (executes `yarn projen:upgrade`).<br/>__*Default*__: no automatic projen upgrade pull requests
@@ -1067,9 +1148,10 @@ Name | Type | Description
1067
1148
  **projenrcJs**?🔹 | <code>boolean</code> | Generate (once) .projenrc.js (in JavaScript). Set to `false` in order to disable .projenrc.js generation.<br/>__*Default*__: true if projenrcJson is false
1068
1149
  **projenrcJsOptions**?🔹 | <code>[javascript.ProjenrcOptions](#projen-javascript-projenrcoptions)</code> | Options for .projenrc.js.<br/>__*Default*__: default options
1069
1150
  **projenrcJson**?🔹 | <code>boolean</code> | Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .projenrc.json generation.<br/>__*Default*__: false
1070
- **projenrcJsonOptions**?🔹 | <code>[json.ProjenrcOptions](#projen-json-projenrcoptions)</code> | Options for .projenrc.json.<br/>__*Default*__: default options
1151
+ **projenrcJsonOptions**?🔹 | <code>[ProjenrcOptions](#projen-projenrcoptions)</code> | Options for .projenrc.json.<br/>__*Default*__: default options
1071
1152
  **projenrcTs**?🔹 | <code>boolean</code> | Use TypeScript for your projenrc file (`.projenrc.ts`).<br/>__*Default*__: false
1072
1153
  **projenrcTsOptions**?🔹 | <code>[typescript.ProjenrcOptions](#projen-typescript-projenrcoptions)</code> | Options for .projenrc.ts.<br/>__*Optional*__
1154
+ **publishTasks**?🔹 | <code>boolean</code> | Define publishing tasks that can be executed manually as well as workflows.<br/>__*Default*__: false
1073
1155
  **pullRequestTemplate**?🔹 | <code>boolean</code> | Include a GitHub pull request template.<br/>__*Default*__: true
1074
1156
  **pullRequestTemplateContents**?🔹 | <code>Array<string></code> | The contents of the pull request template.<br/>__*Default*__: default content
1075
1157
  **readme**?🔹 | <code>[SampleReadmeProps](#projen-samplereadmeprops)</code> | The README setup.<br/>__*Default*__: { filename: 'README.md', contents: '# replace this' }
@@ -1087,7 +1169,7 @@ Name | Type | Description
1087
1169
  **releaseWorkflowSetupSteps**?🔹 | <code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code> | A set of workflow steps to execute in order to setup the workflow container.<br/>__*Optional*__
1088
1170
  **repository**?🔹 | <code>string</code> | The repository is the location where the actual code for your package lives.<br/>__*Optional*__
1089
1171
  **repositoryDirectory**?🔹 | <code>string</code> | If the package.json for your package is not in the root directory (for example if it is part of a monorepo), you can specify the directory in which it lives.<br/>__*Optional*__
1090
- **requireApproval**?🔹 | <code>[CdkApprovalLevel](#projen-cdkapprovallevel)</code> | To protect you against unintended changes that affect your security posture, the AWS CDK Toolkit prompts you to approve security-related changes before deploying them.<br/>__*Default*__: CdkApprovalLevel.BROADENING
1172
+ **requireApproval**?🔹 | <code>[awscdk.ApprovalLevel](#projen-awscdk-approvallevel)</code> | To protect you against unintended changes that affect your security posture, the AWS CDK Toolkit prompts you to approve security-related changes before deploying them.<br/>__*Default*__: ApprovalLevel.BROADENING
1091
1173
  **sampleCode**?🔹 | <code>boolean</code> | Generate one-time sample in `src/` and `test/` if there are no files there.<br/>__*Default*__: true
1092
1174
  **scripts**?🔹 | <code>Map<string, string></code> | npm scripts to include.<br/>__*Default*__: {}
1093
1175
  **sops**? | <code>[SopsAspectOptions](#taimos-projen-sopsaspectoptions)</code> | Enable storing secrets using Mozilla SOPS.<br/>__*Default*__: no SOPS config
@@ -1096,14 +1178,19 @@ Name | Type | Description
1096
1178
  **stale**?🔹 | <code>boolean</code> | Auto-close of stale issues and pull request.<br/>__*Default*__: true
1097
1179
  **staleOptions**?🔹 | <code>[github.StaleOptions](#projen-github-staleoptions)</code> | Auto-close stale issues and pull requests.<br/>__*Default*__: see defaults in `StaleOptions`
1098
1180
  **testdir**?🔹 | <code>string</code> | Jest tests directory. Tests files should be named `xxx.test.ts`.<br/>__*Default*__: "test"
1099
- **tsconfig**?🔹 | <code>[TypescriptConfigOptions](#projen-typescriptconfigoptions)</code> | Custom TSConfig.<br/>__*Default*__: default options
1100
- **tsconfigDev**?🔹 | <code>[TypescriptConfigOptions](#projen-typescriptconfigoptions)</code> | Custom tsconfig options for the development tsconfig.json file (used for testing).<br/>__*Default*__: use the production tsconfig options
1181
+ **tsconfig**?🔹 | <code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code> | Custom TSConfig.<br/>__*Default*__: default options
1182
+ **tsconfigDev**?🔹 | <code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code> | Custom tsconfig options for the development tsconfig.json file (used for testing).<br/>__*Default*__: use the production tsconfig options
1101
1183
  **tsconfigDevFile**?🔹 | <code>string</code> | The name of the development tsconfig.json file.<br/>__*Default*__: "tsconfig.dev.json"
1102
1184
  **typescriptVersion**?🔹 | <code>string</code> | TypeScript version to use.<br/>__*Default*__: "latest"
1185
+ **versionrcOptions**?🔹 | <code>Map<string, any></code> | Custom configuration used when creating changelog with standard-version package.<br/>__*Default*__: standard configuration applicable for GitHub repositories
1103
1186
  **vscode**?🔹 | <code>boolean</code> | Enable VSCode integration.<br/>__*Default*__: true
1187
+ **watchExcludes**?🔹 | <code>Array<string></code> | Glob patterns to exclude from `cdk watch`.<br/>__*Default*__: []
1188
+ **watchIncludes**?🔹 | <code>Array<string></code> | Glob patterns to include in `cdk watch`.<br/>__*Default*__: []
1104
1189
  **workflowBootstrapSteps**?🔹 | <code>Array<any></code> | Workflow steps to use in order to bootstrap this repo.<br/>__*Default*__: "yarn install --frozen-lockfile && yarn projen"
1105
1190
  **workflowContainerImage**?🔹 | <code>string</code> | Container image to use for GitHub workflows.<br/>__*Default*__: default image
1191
+ **workflowGitIdentity**?🔹 | <code>[github.GitIdentity](#projen-github-gitidentity)</code> | The git identity to use in workflows.<br/>__*Default*__: GitHub Actions
1106
1192
  **workflowNodeVersion**?🔹 | <code>string</code> | The node version to use in GitHub workflows.<br/>__*Default*__: same as `minNodeVersion`
1193
+ **workflowRunsOn**?🔹 | <code>Array<string></code> | Github Runner selection labels.<br/>__*Default*__: ["ubuntu-latest"]
1107
1194
 
1108
1195
 
1109
1196
 
@@ -1118,7 +1205,7 @@ Name | Type | Description
1118
1205
  -----|------|-------------
1119
1206
  **author**🔹 | <code>string</code> | The name of the library author.
1120
1207
  **authorAddress**🔹 | <code>string</code> | Email or URL of the library author.
1121
- **cdkVersion**🔹 | <code>string</code> | Minimum target version this library is tested against.
1208
+ **cdkVersion**🔹 | <code>string</code> | Minimum version of the AWS CDK to depend on.
1122
1209
  **defaultReleaseBranch**🔹 | <code>string</code> | The name of the main release branch.
1123
1210
  **name**🔹 | <code>string</code> | This is the name of your project.
1124
1211
  **repositoryUrl**🔹 | <code>string</code> | Git repository URL.
@@ -1137,37 +1224,39 @@ Name | Type | Description
1137
1224
  **bin**?🔹 | <code>Map<string, string></code> | Binary programs vended with your module.<br/>__*Optional*__
1138
1225
  **buildWorkflow**?🔹 | <code>boolean</code> | Define a GitHub workflow for building PRs.<br/>__*Default*__: true if not a subproject
1139
1226
  **bundledDeps**?🔹 | <code>Array<string></code> | List of dependencies to bundle into this module.<br/>__*Optional*__
1140
- **catalog**?🔹 | <code>[Catalog](#projen-catalog)</code> | Libraries will be picked up by the construct catalog when they are published to npm as jsii modules and will be published under:.<br/>__*Default*__: new version will be announced
1141
- **cdkAssert**?🔹 | <code>boolean</code> | Install the @aws-cdk/assert library?<br/>__*Default*__: true
1142
- **cdkDependencies**?🔹 | <code>Array<string></code> | Which AWS CDK modules (those that start with "@aws-cdk/") does this library require when consumed?<br/>__*Optional*__
1143
- **cdkDependenciesAsDeps**?🔹 | <code>boolean</code> | If this is enabled (default), all modules declared in `cdkDependencies` will be also added as normal `dependencies` (as well as `peerDependencies`).<br/>__*Default*__: true
1144
- **cdkTestDependencies**?🔹 | <code>Array<string></code> | AWS CDK modules required for testing.<br/>__*Optional*__
1145
- **cdkVersionPinning**?🔹 | <code>boolean</code> | Use pinned version instead of caret version for CDK.<br/>__*Default*__: false
1227
+ **bundlerOptions**?🔹 | <code>[javascript.BundlerOptions](#projen-javascript-bundleroptions)</code> | Options for `Bundler`.<br/>__*Optional*__
1228
+ **catalog**?🔹 | <code>[cdk.Catalog](#projen-cdk-catalog)</code> | Libraries will be picked up by the construct catalog when they are published to npm as jsii modules and will be published under:.<br/>__*Default*__: new version will be announced
1229
+ **cdkAssert**?⚠️ | <code>boolean</code> | Install the @aws-cdk/assert library?<br/>__*Default*__: will be included by default for AWS CDK >= 1.0.0 < 2.0.0
1230
+ **cdkAssertions**?🔹 | <code>boolean</code> | Install the @aws-cdk/assertions library?<br/>__*Default*__: will be included by default for AWS CDK >= 1.111.0 < 2.0.0
1231
+ **cdkDependencies**?⚠️ | <code>Array<string></code> | Which AWS CDK modules (those that start with "@aws-cdk/") does this library require when consumed?<br/>__*Optional*__
1232
+ **cdkDependenciesAsDeps**?⚠️ | <code>boolean</code> | If this is enabled (default), all modules declared in `cdkDependencies` will be also added as normal `dependencies` (as well as `peerDependencies`).<br/>__*Default*__: true
1233
+ **cdkTestDependencies**?⚠️ | <code>Array<string></code> | AWS CDK modules required for testing.<br/>__*Optional*__
1234
+ **cdkVersionPinning**?🔹 | <code>boolean</code> | Use pinned version instead of caret version for CDK.<br/>__*Optional*__
1146
1235
  **clobber**?🔹 | <code>boolean</code> | Add a `clobber` task which resets the repo to origin.<br/>__*Default*__: true
1236
+ **codeArtifactOptions**?🔹 | <code>[javascript.CodeArtifactOptions](#projen-javascript-codeartifactoptions)</code> | Options for publishing npm package to AWS CodeArtifact.<br/>__*Default*__: undefined
1147
1237
  **codeCov**?🔹 | <code>boolean</code> | Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v1 A secret is required for private repos. Configured with @codeCovTokenSecret.<br/>__*Default*__: false
1148
1238
  **codeCovTokenSecret**?🔹 | <code>string</code> | Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories.<br/>__*Default*__: if this option is not specified, only public repositories are supported
1149
1239
  **compat**?🔹 | <code>boolean</code> | Automatically run API compatibility test against the latest version published to npm after compilation.<br/>__*Default*__: false
1150
1240
  **compatIgnore**?🔹 | <code>string</code> | Name of the ignore file for API compatibility tests.<br/>__*Default*__: ".compatignore"
1151
- **compileBeforeTest**?🔹 | <code>boolean</code> | Compile the code before running tests.<br/>__*Default*__: if `testdir` is under `src/**`, the default is `true`, otherwise the default is `false.
1152
- **constructsVersion**?🔹 | <code>string</code> | Minimum target version of constructs being tested against. If not provided, the default value depends on the configured `cdkVersion`:.<br/>__*Default*__: When the default behavior is used, the dependency on `constructs` will only be added as a `peerDependency`. Otherwise, a `devDependency` will also be added, set to the exact version configrued here.
1241
+ **constructsVersion**?🔹 | <code>string</code> | Minimum version of the `constructs` library to depend on.<br/>__*Default*__: for CDK 1.x the default is "3.2.27", for CDK 2.x the default is "10.0.5".
1153
1242
  **copyrightOwner**?🔹 | <code>string</code> | License copyright owner.<br/>__*Default*__: defaults to the value of authorName or "" if `authorName` is undefined.
1154
1243
  **copyrightPeriod**?🔹 | <code>string</code> | The copyright years to put in the LICENSE file.<br/>__*Default*__: current year
1155
1244
  **dependabot**?🔹 | <code>boolean</code> | Use dependabot to handle dependency upgrades.<br/>__*Default*__: false
1156
1245
  **dependabotOptions**?🔹 | <code>[github.DependabotOptions](#projen-github-dependabotoptions)</code> | Options for dependabot.<br/>__*Default*__: default options
1157
1246
  **deps**?🔹 | <code>Array<string></code> | Runtime dependencies of this module.<br/>__*Default*__: []
1158
1247
  **depsUpgrade**?🔹 | <code>boolean</code> | Use github workflows to handle dependency upgrades.<br/>__*Default*__: true
1159
- **depsUpgradeOptions**?🔹 | <code>[UpgradeDependenciesOptions](#projen-upgradedependenciesoptions)</code> | Options for depsUpgrade.<br/>__*Default*__: default options
1248
+ **depsUpgradeOptions**?🔹 | <code>[javascript.UpgradeDependenciesOptions](#projen-javascript-upgradedependenciesoptions)</code> | Options for depsUpgrade.<br/>__*Default*__: default options
1160
1249
  **description**?🔹 | <code>string</code> | The description is just a string that helps people understand the purpose of the package.<br/>__*Optional*__
1161
1250
  **devContainer**?🔹 | <code>boolean</code> | Add a VSCode development environment (used for GitHub Codespaces).<br/>__*Default*__: false
1162
1251
  **devDeps**?🔹 | <code>Array<string></code> | Build dependencies for this module.<br/>__*Default*__: []
1163
1252
  **disableTsconfig**?🔹 | <code>boolean</code> | Do not generate a `tsconfig.json` file (used by jsii projects since tsconfig.json is generated by the jsii compiler).<br/>__*Default*__: false
1164
1253
  **docgen**?🔹 | <code>boolean</code> | Docgen by Typedoc.<br/>__*Default*__: false
1165
1254
  **docsDirectory**?🔹 | <code>string</code> | Docs directory.<br/>__*Default*__: "docs"
1166
- **dotnet**?⚠️ | <code>[JsiiDotNetTarget](#projen-jsiidotnettarget)</code> | __*Optional*__
1255
+ **dotnet**?⚠️ | <code>[cdk.JsiiDotNetTarget](#projen-cdk-jsiidotnettarget)</code> | __*Optional*__
1167
1256
  **entrypoint**?🔹 | <code>string</code> | Module entrypoint (`main` in `package.json`).<br/>__*Default*__: "lib/index.js"
1168
1257
  **entrypointTypes**?🔹 | <code>string</code> | The .d.ts file that includes the type declarations for this module.<br/>__*Default*__: .d.ts file derived from the project's entrypoint (usually lib/index.d.ts)
1169
1258
  **eslint**?🔹 | <code>boolean</code> | Setup eslint.<br/>__*Default*__: true
1170
- **eslintOptions**?🔹 | <code>[EslintOptions](#projen-eslintoptions)</code> | Eslint options.<br/>__*Default*__: opinionated default options
1259
+ **eslintOptions**?🔹 | <code>[javascript.EslintOptions](#projen-javascript-eslintoptions)</code> | Eslint options.<br/>__*Default*__: opinionated default options
1171
1260
  **excludeTypescript**?🔹 | <code>Array<string></code> | Accepts a list of glob patterns.<br/>__*Optional*__
1172
1261
  **github**?🔹 | <code>boolean</code> | Enable GitHub integration.<br/>__*Default*__: true
1173
1262
  **githubOptions**?🔹 | <code>[github.GitHubOptions](#projen-github-githuboptions)</code> | Options for GitHub integration.<br/>__*Default*__: see GitHubOptions
@@ -1175,9 +1264,11 @@ Name | Type | Description
1175
1264
  **gitpod**?🔹 | <code>boolean</code> | Add a Gitpod development environment.<br/>__*Default*__: false
1176
1265
  **homepage**?🔹 | <code>string</code> | Package's Homepage / Website.<br/>__*Optional*__
1177
1266
  **jest**?🔹 | <code>boolean</code> | Setup jest unit tests.<br/>__*Default*__: true
1178
- **jestOptions**?🔹 | <code>[JestOptions](#projen-jestoptions)</code> | Jest options.<br/>__*Default*__: default options
1267
+ **jestOptions**?🔹 | <code>[javascript.JestOptions](#projen-javascript-jestoptions)</code> | Jest options.<br/>__*Default*__: default options
1179
1268
  **jsiiReleaseVersion**?🔹 | <code>string</code> | Version requirement of `jsii-release` which is used to publish modules to npm.<br/>__*Default*__: "latest"
1180
1269
  **keywords**?🔹 | <code>Array<string></code> | Keywords to include in `package.json`.<br/>__*Optional*__
1270
+ **lambdaAutoDiscover**?🔹 | <code>boolean</code> | Automatically adds an `aws_lambda.Function` for each `.lambda.ts` handler in your source tree. If this is disabled, you either need to explicitly call `aws_lambda.Function.autoDiscover()` or define a `new aws_lambda.Function()` for each handler.<br/>__*Default*__: true
1271
+ **lambdaOptions**?🔹 | <code>[awscdk.LambdaFunctionCommonOptions](#projen-awscdk-lambdafunctioncommonoptions)</code> | Common options for all AWS Lambda functions.<br/>__*Default*__: default options
1181
1272
  **libdir**?🔹 | <code>string</code> | Typescript artifacts output directory.<br/>__*Default*__: "lib"
1182
1273
  **license**?🔹 | <code>string</code> | License's SPDX identifier.<br/>__*Default*__: "Apache-2.0"
1183
1274
  **licensed**?🔹 | <code>boolean</code> | Indicates if a license should be added.<br/>__*Default*__: true
@@ -1185,11 +1276,11 @@ Name | Type | Description
1185
1276
  **majorVersion**?🔹 | <code>number</code> | Major version to release from the default branch.<br/>__*Default*__: Major version is not enforced.
1186
1277
  **maxNodeVersion**?🔹 | <code>string</code> | Minimum node.js version to require via `engines` (inclusive).<br/>__*Default*__: no max
1187
1278
  **mergify**?⚠️ | <code>boolean</code> | Whether mergify should be enabled on this repository or not.<br/>__*Default*__: true
1188
- **mergifyOptions**?🔹 | <code>[github.MergifyOptions](#projen-github-mergifyoptions)</code> | Options for mergify.<br/>__*Default*__: default options
1279
+ **mergifyOptions**?⚠️ | <code>[github.MergifyOptions](#projen-github-mergifyoptions)</code> | Options for mergify.<br/>__*Default*__: default options
1189
1280
  **minNodeVersion**?🔹 | <code>string</code> | Minimum Node.js version to require via package.json `engines` (inclusive).<br/>__*Default*__: no "engines" specified
1190
1281
  **mutableBuild**?🔹 | <code>boolean</code> | Automatically update files modified during builds to pull-request branches.<br/>__*Default*__: true
1191
- **npmAccess**?🔹 | <code>[NpmAccess](#projen-npmaccess)</code> | Access level of the npm package.<br/>__*Default*__: for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.
1192
- **npmDistTag**?🔹 | <code>string</code> | Tags can be used to provide an alias instead of version numbers.<br/>__*Default*__: "latest"
1282
+ **npmAccess**?🔹 | <code>[javascript.NpmAccess](#projen-javascript-npmaccess)</code> | Access level of the npm package.<br/>__*Default*__: for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.
1283
+ **npmDistTag**?🔹 | <code>string</code> | The npmDistTag to use when publishing from the default branch.<br/>__*Default*__: "latest"
1193
1284
  **npmRegistry**?⚠️ | <code>string</code> | The host name of the npm registry to publish to.<br/>__*Optional*__
1194
1285
  **npmRegistryUrl**?🔹 | <code>string</code> | The base URL of the npm package registry.<br/>__*Default*__: "https://registry.npmjs.org"
1195
1286
  **npmTokenSecret**?🔹 | <code>string</code> | GitHub secret which contains the NPM token to use when publishing packages.<br/>__*Default*__: "NPM_TOKEN"
@@ -1197,17 +1288,16 @@ Name | Type | Description
1197
1288
  **npmignoreEnabled**?🔹 | <code>boolean</code> | Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs.<br/>__*Default*__: true
1198
1289
  **outdir**?🔹 | <code>string</code> | The root directory of the project.<br/>__*Default*__: "."
1199
1290
  **package**?🔹 | <code>boolean</code> | Defines a `yarn package` command that will produce a tarball and place it under `dist/js`.<br/>__*Default*__: true
1200
- **packageManager**?🔹 | <code>[NodePackageManager](#projen-nodepackagemanager)</code> | The Node Package Manager used to execute scripts.<br/>__*Default*__: NodePackageManager.YARN
1291
+ **packageManager**?🔹 | <code>[javascript.NodePackageManager](#projen-javascript-nodepackagemanager)</code> | The Node Package Manager used to execute scripts.<br/>__*Default*__: NodePackageManager.YARN
1201
1292
  **packageName**?🔹 | <code>string</code> | The "name" in package.json.<br/>__*Default*__: defaults to project name
1202
1293
  **parent**?🔹 | <code>[Project](#projen-project)</code> | The parent project, if this project is part of a bigger project.<br/>__*Optional*__
1203
- **peerDependencyOptions**?🔹 | <code>[PeerDependencyOptions](#projen-peerdependencyoptions)</code> | Options for `peerDeps`.<br/>__*Optional*__
1294
+ **peerDependencyOptions**?🔹 | <code>[javascript.PeerDependencyOptions](#projen-javascript-peerdependencyoptions)</code> | Options for `peerDeps`.<br/>__*Optional*__
1204
1295
  **peerDeps**?🔹 | <code>Array<string></code> | Peer dependencies for this module.<br/>__*Default*__: []
1205
1296
  **postBuildSteps**?🔹 | <code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code> | Steps to execute after build as part of the release workflow.<br/>__*Default*__: []
1206
1297
  **prerelease**?🔹 | <code>string</code> | Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre").<br/>__*Default*__: normal semantic versions
1207
1298
  **projectType**?⚠️ | <code>[ProjectType](#projen-projecttype)</code> | Which type of project this is (library/app).<br/>__*Default*__: ProjectType.UNKNOWN
1208
1299
  **projenCommand**?🔹 | <code>string</code> | The shell command to use in order to run the projen CLI.<br/>__*Default*__: "npx projen"
1209
1300
  **projenDevDependency**?🔹 | <code>boolean</code> | Indicates of "projen" should be installed as a devDependency.<br/>__*Default*__: true
1210
- **projenDuringBuild**?🔹 | <code>boolean</code> | Execute `projen` as the first step of the `build` task to synthesize project files.<br/>__*Default*__: true
1211
1301
  **projenUpgradeAutoMerge**?⚠️ | <code>boolean</code> | Automatically approve projen upgrade PRs, allowing them to be merged by mergify (if configued).<br/>__*Default*__: false
1212
1302
  **projenUpgradeSchedule**?🔹 | <code>Array<string></code> | Customize the projenUpgrade schedule in cron expression.<br/>__*Default*__: [ "0 6 * * *" ]
1213
1303
  **projenUpgradeSecret**?🔹 | <code>string</code> | Periodically submits a pull request for projen upgrades (executes `yarn projen:upgrade`).<br/>__*Default*__: no automatic projen upgrade pull requests
@@ -1215,16 +1305,17 @@ Name | Type | Description
1215
1305
  **projenrcJs**?🔹 | <code>boolean</code> | Generate (once) .projenrc.js (in JavaScript). Set to `false` in order to disable .projenrc.js generation.<br/>__*Default*__: true if projenrcJson is false
1216
1306
  **projenrcJsOptions**?🔹 | <code>[javascript.ProjenrcOptions](#projen-javascript-projenrcoptions)</code> | Options for .projenrc.js.<br/>__*Default*__: default options
1217
1307
  **projenrcJson**?🔹 | <code>boolean</code> | Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .projenrc.json generation.<br/>__*Default*__: false
1218
- **projenrcJsonOptions**?🔹 | <code>[json.ProjenrcOptions](#projen-json-projenrcoptions)</code> | Options for .projenrc.json.<br/>__*Default*__: default options
1308
+ **projenrcJsonOptions**?🔹 | <code>[ProjenrcOptions](#projen-projenrcoptions)</code> | Options for .projenrc.json.<br/>__*Default*__: default options
1219
1309
  **projenrcTs**?🔹 | <code>boolean</code> | Use TypeScript for your projenrc file (`.projenrc.ts`).<br/>__*Default*__: false
1220
1310
  **projenrcTsOptions**?🔹 | <code>[typescript.ProjenrcOptions](#projen-typescript-projenrcoptions)</code> | Options for .projenrc.ts.<br/>__*Optional*__
1221
- **publishToGo**?🔹 | <code>[JsiiGoTarget](#projen-jsiigotarget)</code> | Publish Go bindings to a git repository.<br/>__*Default*__: no publishing
1222
- **publishToMaven**?🔹 | <code>[JsiiJavaTarget](#projen-jsiijavatarget)</code> | Publish to maven.<br/>__*Default*__: no publishing
1223
- **publishToNuget**?🔹 | <code>[JsiiDotNetTarget](#projen-jsiidotnettarget)</code> | Publish to NuGet.<br/>__*Default*__: no publishing
1224
- **publishToPypi**?🔹 | <code>[JsiiPythonTarget](#projen-jsiipythontarget)</code> | Publish to pypi.<br/>__*Default*__: no publishing
1311
+ **publishTasks**?🔹 | <code>boolean</code> | Define publishing tasks that can be executed manually as well as workflows.<br/>__*Default*__: false
1312
+ **publishToGo**?🔹 | <code>[cdk.JsiiGoTarget](#projen-cdk-jsiigotarget)</code> | Publish Go bindings to a git repository.<br/>__*Default*__: no publishing
1313
+ **publishToMaven**?🔹 | <code>[cdk.JsiiJavaTarget](#projen-cdk-jsiijavatarget)</code> | Publish to maven.<br/>__*Default*__: no publishing
1314
+ **publishToNuget**?🔹 | <code>[cdk.JsiiDotNetTarget](#projen-cdk-jsiidotnettarget)</code> | Publish to NuGet.<br/>__*Default*__: no publishing
1315
+ **publishToPypi**?🔹 | <code>[cdk.JsiiPythonTarget](#projen-cdk-jsiipythontarget)</code> | Publish to pypi.<br/>__*Default*__: no publishing
1225
1316
  **pullRequestTemplate**?🔹 | <code>boolean</code> | Include a GitHub pull request template.<br/>__*Default*__: true
1226
1317
  **pullRequestTemplateContents**?🔹 | <code>Array<string></code> | The contents of the pull request template.<br/>__*Default*__: default content
1227
- **python**?⚠️ | <code>[JsiiPythonTarget](#projen-jsiipythontarget)</code> | __*Optional*__
1318
+ **python**?⚠️ | <code>[cdk.JsiiPythonTarget](#projen-cdk-jsiipythontarget)</code> | __*Optional*__
1228
1319
  **readme**?🔹 | <code>[SampleReadmeProps](#projen-samplereadmeprops)</code> | The README setup.<br/>__*Default*__: { filename: 'README.md', contents: '# replace this' }
1229
1320
  **release**?🔹 | <code>boolean</code> | Add release management to this project.<br/>__*Default*__: true (false for subprojects)
1230
1321
  **releaseBranches**?🔹 | <code>Map<string, [release.BranchOptions](#projen-release-branchoptions)></code> | Defines additional release branches.<br/>__*Default*__: no additional branches are used for release. you can use `addBranch()` to add additional branches.
@@ -1248,14 +1339,17 @@ Name | Type | Description
1248
1339
  **stale**?🔹 | <code>boolean</code> | Auto-close of stale issues and pull request.<br/>__*Default*__: true
1249
1340
  **staleOptions**?🔹 | <code>[github.StaleOptions](#projen-github-staleoptions)</code> | Auto-close stale issues and pull requests.<br/>__*Default*__: see defaults in `StaleOptions`
1250
1341
  **testdir**?🔹 | <code>string</code> | Jest tests directory. Tests files should be named `xxx.test.ts`.<br/>__*Default*__: "test"
1251
- **tsconfig**?🔹 | <code>[TypescriptConfigOptions](#projen-typescriptconfigoptions)</code> | Custom TSConfig.<br/>__*Default*__: default options
1252
- **tsconfigDev**?🔹 | <code>[TypescriptConfigOptions](#projen-typescriptconfigoptions)</code> | Custom tsconfig options for the development tsconfig.json file (used for testing).<br/>__*Default*__: use the production tsconfig options
1342
+ **tsconfig**?🔹 | <code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code> | Custom TSConfig.<br/>__*Default*__: default options
1343
+ **tsconfigDev**?🔹 | <code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code> | Custom tsconfig options for the development tsconfig.json file (used for testing).<br/>__*Default*__: use the production tsconfig options
1253
1344
  **tsconfigDevFile**?🔹 | <code>string</code> | The name of the development tsconfig.json file.<br/>__*Default*__: "tsconfig.dev.json"
1254
1345
  **typescriptVersion**?🔹 | <code>string</code> | TypeScript version to use.<br/>__*Default*__: "latest"
1346
+ **versionrcOptions**?🔹 | <code>Map<string, any></code> | Custom configuration used when creating changelog with standard-version package.<br/>__*Default*__: standard configuration applicable for GitHub repositories
1255
1347
  **vscode**?🔹 | <code>boolean</code> | Enable VSCode integration.<br/>__*Default*__: true
1256
1348
  **workflowBootstrapSteps**?🔹 | <code>Array<any></code> | Workflow steps to use in order to bootstrap this repo.<br/>__*Default*__: "yarn install --frozen-lockfile && yarn projen"
1257
1349
  **workflowContainerImage**?🔹 | <code>string</code> | Container image to use for GitHub workflows.<br/>__*Default*__: default image
1350
+ **workflowGitIdentity**?🔹 | <code>[github.GitIdentity](#projen-github-gitidentity)</code> | The git identity to use in workflows.<br/>__*Default*__: GitHub Actions
1258
1351
  **workflowNodeVersion**?🔹 | <code>string</code> | The node version to use in GitHub workflows.<br/>__*Default*__: same as `minNodeVersion`
1352
+ **workflowRunsOn**?🔹 | <code>Array<string></code> | Github Runner selection labels.<br/>__*Default*__: ["ubuntu-latest"]
1259
1353
 
1260
1354
 
1261
1355
 
@@ -1285,17 +1379,18 @@ Name | Type | Description
1285
1379
  **bin**?🔹 | <code>Map<string, string></code> | Binary programs vended with your module.<br/>__*Optional*__
1286
1380
  **buildWorkflow**?🔹 | <code>boolean</code> | Define a GitHub workflow for building PRs.<br/>__*Default*__: true if not a subproject
1287
1381
  **bundledDeps**?🔹 | <code>Array<string></code> | List of dependencies to bundle into this module.<br/>__*Optional*__
1382
+ **bundlerOptions**?🔹 | <code>[javascript.BundlerOptions](#projen-javascript-bundleroptions)</code> | Options for `Bundler`.<br/>__*Optional*__
1288
1383
  **clobber**?🔹 | <code>boolean</code> | Add a `clobber` task which resets the repo to origin.<br/>__*Default*__: true
1384
+ **codeArtifactOptions**?🔹 | <code>[javascript.CodeArtifactOptions](#projen-javascript-codeartifactoptions)</code> | Options for publishing npm package to AWS CodeArtifact.<br/>__*Default*__: undefined
1289
1385
  **codeCov**?🔹 | <code>boolean</code> | Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v1 A secret is required for private repos. Configured with @codeCovTokenSecret.<br/>__*Default*__: false
1290
1386
  **codeCovTokenSecret**?🔹 | <code>string</code> | Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories.<br/>__*Default*__: if this option is not specified, only public repositories are supported
1291
- **compileBeforeTest**?🔹 | <code>boolean</code> | Compile the code before running tests.<br/>__*Default*__: if `testdir` is under `src/**`, the default is `true`, otherwise the default is `false.
1292
1387
  **copyrightOwner**?🔹 | <code>string</code> | License copyright owner.<br/>__*Default*__: defaults to the value of authorName or "" if `authorName` is undefined.
1293
1388
  **copyrightPeriod**?🔹 | <code>string</code> | The copyright years to put in the LICENSE file.<br/>__*Default*__: current year
1294
1389
  **dependabot**?🔹 | <code>boolean</code> | Use dependabot to handle dependency upgrades.<br/>__*Default*__: false
1295
1390
  **dependabotOptions**?🔹 | <code>[github.DependabotOptions](#projen-github-dependabotoptions)</code> | Options for dependabot.<br/>__*Default*__: default options
1296
1391
  **deps**?🔹 | <code>Array<string></code> | Runtime dependencies of this module.<br/>__*Default*__: []
1297
1392
  **depsUpgrade**?🔹 | <code>boolean</code> | Use github workflows to handle dependency upgrades.<br/>__*Default*__: true
1298
- **depsUpgradeOptions**?🔹 | <code>[UpgradeDependenciesOptions](#projen-upgradedependenciesoptions)</code> | Options for depsUpgrade.<br/>__*Default*__: default options
1393
+ **depsUpgradeOptions**?🔹 | <code>[javascript.UpgradeDependenciesOptions](#projen-javascript-upgradedependenciesoptions)</code> | Options for depsUpgrade.<br/>__*Default*__: default options
1299
1394
  **description**?🔹 | <code>string</code> | The description is just a string that helps people understand the purpose of the package.<br/>__*Optional*__
1300
1395
  **devContainer**?🔹 | <code>boolean</code> | Add a VSCode development environment (used for GitHub Codespaces).<br/>__*Default*__: false
1301
1396
  **devDeps**?🔹 | <code>Array<string></code> | Build dependencies for this module.<br/>__*Default*__: []
@@ -1305,14 +1400,14 @@ Name | Type | Description
1305
1400
  **entrypoint**?🔹 | <code>string</code> | Module entrypoint (`main` in `package.json`).<br/>__*Default*__: "lib/index.js"
1306
1401
  **entrypointTypes**?🔹 | <code>string</code> | The .d.ts file that includes the type declarations for this module.<br/>__*Default*__: .d.ts file derived from the project's entrypoint (usually lib/index.d.ts)
1307
1402
  **eslint**?🔹 | <code>boolean</code> | Setup eslint.<br/>__*Default*__: true
1308
- **eslintOptions**?🔹 | <code>[EslintOptions](#projen-eslintoptions)</code> | Eslint options.<br/>__*Default*__: opinionated default options
1403
+ **eslintOptions**?🔹 | <code>[javascript.EslintOptions](#projen-javascript-eslintoptions)</code> | Eslint options.<br/>__*Default*__: opinionated default options
1309
1404
  **github**?🔹 | <code>boolean</code> | Enable GitHub integration.<br/>__*Default*__: true
1310
1405
  **githubOptions**?🔹 | <code>[github.GitHubOptions](#projen-github-githuboptions)</code> | Options for GitHub integration.<br/>__*Default*__: see GitHubOptions
1311
1406
  **gitignore**?🔹 | <code>Array<string></code> | Additional entries to .gitignore.<br/>__*Optional*__
1312
1407
  **gitpod**?🔹 | <code>boolean</code> | Add a Gitpod development environment.<br/>__*Default*__: false
1313
1408
  **homepage**?🔹 | <code>string</code> | Package's Homepage / Website.<br/>__*Optional*__
1314
1409
  **jest**?🔹 | <code>boolean</code> | Setup jest unit tests.<br/>__*Default*__: true
1315
- **jestOptions**?🔹 | <code>[JestOptions](#projen-jestoptions)</code> | Jest options.<br/>__*Default*__: default options
1410
+ **jestOptions**?🔹 | <code>[javascript.JestOptions](#projen-javascript-jestoptions)</code> | Jest options.<br/>__*Default*__: default options
1316
1411
  **jsiiReleaseVersion**?🔹 | <code>string</code> | Version requirement of `jsii-release` which is used to publish modules to npm.<br/>__*Default*__: "latest"
1317
1412
  **keywords**?🔹 | <code>Array<string></code> | Keywords to include in `package.json`.<br/>__*Optional*__
1318
1413
  **libdir**?🔹 | <code>string</code> | Typescript artifacts output directory.<br/>__*Default*__: "lib"
@@ -1322,11 +1417,11 @@ Name | Type | Description
1322
1417
  **majorVersion**?🔹 | <code>number</code> | Major version to release from the default branch.<br/>__*Default*__: Major version is not enforced.
1323
1418
  **maxNodeVersion**?🔹 | <code>string</code> | Minimum node.js version to require via `engines` (inclusive).<br/>__*Default*__: no max
1324
1419
  **mergify**?⚠️ | <code>boolean</code> | Whether mergify should be enabled on this repository or not.<br/>__*Default*__: true
1325
- **mergifyOptions**?🔹 | <code>[github.MergifyOptions](#projen-github-mergifyoptions)</code> | Options for mergify.<br/>__*Default*__: default options
1420
+ **mergifyOptions**?⚠️ | <code>[github.MergifyOptions](#projen-github-mergifyoptions)</code> | Options for mergify.<br/>__*Default*__: default options
1326
1421
  **minNodeVersion**?🔹 | <code>string</code> | Minimum Node.js version to require via package.json `engines` (inclusive).<br/>__*Default*__: no "engines" specified
1327
1422
  **mutableBuild**?🔹 | <code>boolean</code> | Automatically update files modified during builds to pull-request branches.<br/>__*Default*__: true
1328
- **npmAccess**?🔹 | <code>[NpmAccess](#projen-npmaccess)</code> | Access level of the npm package.<br/>__*Default*__: for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.
1329
- **npmDistTag**?🔹 | <code>string</code> | Tags can be used to provide an alias instead of version numbers.<br/>__*Default*__: "latest"
1423
+ **npmAccess**?🔹 | <code>[javascript.NpmAccess](#projen-javascript-npmaccess)</code> | Access level of the npm package.<br/>__*Default*__: for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.
1424
+ **npmDistTag**?🔹 | <code>string</code> | The npmDistTag to use when publishing from the default branch.<br/>__*Default*__: "latest"
1330
1425
  **npmRegistry**?⚠️ | <code>string</code> | The host name of the npm registry to publish to.<br/>__*Optional*__
1331
1426
  **npmRegistryUrl**?🔹 | <code>string</code> | The base URL of the npm package registry.<br/>__*Default*__: "https://registry.npmjs.org"
1332
1427
  **npmTokenSecret**?🔹 | <code>string</code> | GitHub secret which contains the NPM token to use when publishing packages.<br/>__*Default*__: "NPM_TOKEN"
@@ -1334,17 +1429,16 @@ Name | Type | Description
1334
1429
  **npmignoreEnabled**?🔹 | <code>boolean</code> | Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs.<br/>__*Default*__: true
1335
1430
  **outdir**?🔹 | <code>string</code> | The root directory of the project.<br/>__*Default*__: "."
1336
1431
  **package**?🔹 | <code>boolean</code> | Defines a `yarn package` command that will produce a tarball and place it under `dist/js`.<br/>__*Default*__: true
1337
- **packageManager**?🔹 | <code>[NodePackageManager](#projen-nodepackagemanager)</code> | The Node Package Manager used to execute scripts.<br/>__*Default*__: NodePackageManager.YARN
1432
+ **packageManager**?🔹 | <code>[javascript.NodePackageManager](#projen-javascript-nodepackagemanager)</code> | The Node Package Manager used to execute scripts.<br/>__*Default*__: NodePackageManager.YARN
1338
1433
  **packageName**?🔹 | <code>string</code> | The "name" in package.json.<br/>__*Default*__: defaults to project name
1339
1434
  **parent**?🔹 | <code>[Project](#projen-project)</code> | The parent project, if this project is part of a bigger project.<br/>__*Optional*__
1340
- **peerDependencyOptions**?🔹 | <code>[PeerDependencyOptions](#projen-peerdependencyoptions)</code> | Options for `peerDeps`.<br/>__*Optional*__
1435
+ **peerDependencyOptions**?🔹 | <code>[javascript.PeerDependencyOptions](#projen-javascript-peerdependencyoptions)</code> | Options for `peerDeps`.<br/>__*Optional*__
1341
1436
  **peerDeps**?🔹 | <code>Array<string></code> | Peer dependencies for this module.<br/>__*Default*__: []
1342
1437
  **postBuildSteps**?🔹 | <code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code> | Steps to execute after build as part of the release workflow.<br/>__*Default*__: []
1343
1438
  **prerelease**?🔹 | <code>string</code> | Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre").<br/>__*Default*__: normal semantic versions
1344
1439
  **projectType**?⚠️ | <code>[ProjectType](#projen-projecttype)</code> | Which type of project this is (library/app).<br/>__*Default*__: ProjectType.UNKNOWN
1345
1440
  **projenCommand**?🔹 | <code>string</code> | The shell command to use in order to run the projen CLI.<br/>__*Default*__: "npx projen"
1346
1441
  **projenDevDependency**?🔹 | <code>boolean</code> | Indicates of "projen" should be installed as a devDependency.<br/>__*Default*__: true
1347
- **projenDuringBuild**?🔹 | <code>boolean</code> | Execute `projen` as the first step of the `build` task to synthesize project files.<br/>__*Default*__: true
1348
1442
  **projenUpgradeAutoMerge**?⚠️ | <code>boolean</code> | Automatically approve projen upgrade PRs, allowing them to be merged by mergify (if configued).<br/>__*Default*__: false
1349
1443
  **projenUpgradeSchedule**?🔹 | <code>Array<string></code> | Customize the projenUpgrade schedule in cron expression.<br/>__*Default*__: [ "0 6 * * *" ]
1350
1444
  **projenUpgradeSecret**?🔹 | <code>string</code> | Periodically submits a pull request for projen upgrades (executes `yarn projen:upgrade`).<br/>__*Default*__: no automatic projen upgrade pull requests
@@ -1352,9 +1446,10 @@ Name | Type | Description
1352
1446
  **projenrcJs**?🔹 | <code>boolean</code> | Generate (once) .projenrc.js (in JavaScript). Set to `false` in order to disable .projenrc.js generation.<br/>__*Default*__: true if projenrcJson is false
1353
1447
  **projenrcJsOptions**?🔹 | <code>[javascript.ProjenrcOptions](#projen-javascript-projenrcoptions)</code> | Options for .projenrc.js.<br/>__*Default*__: default options
1354
1448
  **projenrcJson**?🔹 | <code>boolean</code> | Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .projenrc.json generation.<br/>__*Default*__: false
1355
- **projenrcJsonOptions**?🔹 | <code>[json.ProjenrcOptions](#projen-json-projenrcoptions)</code> | Options for .projenrc.json.<br/>__*Default*__: default options
1449
+ **projenrcJsonOptions**?🔹 | <code>[ProjenrcOptions](#projen-projenrcoptions)</code> | Options for .projenrc.json.<br/>__*Default*__: default options
1356
1450
  **projenrcTs**?🔹 | <code>boolean</code> | Use TypeScript for your projenrc file (`.projenrc.ts`).<br/>__*Default*__: false
1357
1451
  **projenrcTsOptions**?🔹 | <code>[typescript.ProjenrcOptions](#projen-typescript-projenrcoptions)</code> | Options for .projenrc.ts.<br/>__*Optional*__
1452
+ **publishTasks**?🔹 | <code>boolean</code> | Define publishing tasks that can be executed manually as well as workflows.<br/>__*Default*__: false
1358
1453
  **pullRequestTemplate**?🔹 | <code>boolean</code> | Include a GitHub pull request template.<br/>__*Default*__: true
1359
1454
  **pullRequestTemplateContents**?🔹 | <code>Array<string></code> | The contents of the pull request template.<br/>__*Default*__: default content
1360
1455
  **readme**?🔹 | <code>[SampleReadmeProps](#projen-samplereadmeprops)</code> | The README setup.<br/>__*Default*__: { filename: 'README.md', contents: '# replace this' }
@@ -1379,14 +1474,17 @@ Name | Type | Description
1379
1474
  **stale**?🔹 | <code>boolean</code> | Auto-close of stale issues and pull request.<br/>__*Default*__: true
1380
1475
  **staleOptions**?🔹 | <code>[github.StaleOptions](#projen-github-staleoptions)</code> | Auto-close stale issues and pull requests.<br/>__*Default*__: see defaults in `StaleOptions`
1381
1476
  **testdir**?🔹 | <code>string</code> | Jest tests directory. Tests files should be named `xxx.test.ts`.<br/>__*Default*__: "test"
1382
- **tsconfig**?🔹 | <code>[TypescriptConfigOptions](#projen-typescriptconfigoptions)</code> | Custom TSConfig.<br/>__*Default*__: default options
1383
- **tsconfigDev**?🔹 | <code>[TypescriptConfigOptions](#projen-typescriptconfigoptions)</code> | Custom tsconfig options for the development tsconfig.json file (used for testing).<br/>__*Default*__: use the production tsconfig options
1477
+ **tsconfig**?🔹 | <code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code> | Custom TSConfig.<br/>__*Default*__: default options
1478
+ **tsconfigDev**?🔹 | <code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code> | Custom tsconfig options for the development tsconfig.json file (used for testing).<br/>__*Default*__: use the production tsconfig options
1384
1479
  **tsconfigDevFile**?🔹 | <code>string</code> | The name of the development tsconfig.json file.<br/>__*Default*__: "tsconfig.dev.json"
1385
1480
  **typescriptVersion**?🔹 | <code>string</code> | TypeScript version to use.<br/>__*Default*__: "latest"
1481
+ **versionrcOptions**?🔹 | <code>Map<string, any></code> | Custom configuration used when creating changelog with standard-version package.<br/>__*Default*__: standard configuration applicable for GitHub repositories
1386
1482
  **vscode**?🔹 | <code>boolean</code> | Enable VSCode integration.<br/>__*Default*__: true
1387
1483
  **workflowBootstrapSteps**?🔹 | <code>Array<any></code> | Workflow steps to use in order to bootstrap this repo.<br/>__*Default*__: "yarn install --frozen-lockfile && yarn projen"
1388
1484
  **workflowContainerImage**?🔹 | <code>string</code> | Container image to use for GitHub workflows.<br/>__*Default*__: default image
1485
+ **workflowGitIdentity**?🔹 | <code>[github.GitIdentity](#projen-github-gitidentity)</code> | The git identity to use in workflows.<br/>__*Default*__: GitHub Actions
1389
1486
  **workflowNodeVersion**?🔹 | <code>string</code> | The node version to use in GitHub workflows.<br/>__*Default*__: same as `minNodeVersion`
1487
+ **workflowRunsOn**?🔹 | <code>Array<string></code> | Github Runner selection labels.<br/>__*Default*__: ["ubuntu-latest"]
1390
1488
 
1391
1489
 
1392
1490
 
@@ -1416,17 +1514,18 @@ Name | Type | Description
1416
1514
  **bin**?🔹 | <code>Map<string, string></code> | Binary programs vended with your module.<br/>__*Optional*__
1417
1515
  **buildWorkflow**?🔹 | <code>boolean</code> | Define a GitHub workflow for building PRs.<br/>__*Default*__: true if not a subproject
1418
1516
  **bundledDeps**?🔹 | <code>Array<string></code> | List of dependencies to bundle into this module.<br/>__*Optional*__
1517
+ **bundlerOptions**?🔹 | <code>[javascript.BundlerOptions](#projen-javascript-bundleroptions)</code> | Options for `Bundler`.<br/>__*Optional*__
1419
1518
  **clobber**?🔹 | <code>boolean</code> | Add a `clobber` task which resets the repo to origin.<br/>__*Default*__: true
1519
+ **codeArtifactOptions**?🔹 | <code>[javascript.CodeArtifactOptions](#projen-javascript-codeartifactoptions)</code> | Options for publishing npm package to AWS CodeArtifact.<br/>__*Default*__: undefined
1420
1520
  **codeCov**?🔹 | <code>boolean</code> | Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v1 A secret is required for private repos. Configured with @codeCovTokenSecret.<br/>__*Default*__: false
1421
1521
  **codeCovTokenSecret**?🔹 | <code>string</code> | Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories.<br/>__*Default*__: if this option is not specified, only public repositories are supported
1422
- **compileBeforeTest**?🔹 | <code>boolean</code> | Compile the code before running tests.<br/>__*Default*__: if `testdir` is under `src/**`, the default is `true`, otherwise the default is `false.
1423
1522
  **copyrightOwner**?🔹 | <code>string</code> | License copyright owner.<br/>__*Default*__: defaults to the value of authorName or "" if `authorName` is undefined.
1424
1523
  **copyrightPeriod**?🔹 | <code>string</code> | The copyright years to put in the LICENSE file.<br/>__*Default*__: current year
1425
1524
  **dependabot**?🔹 | <code>boolean</code> | Use dependabot to handle dependency upgrades.<br/>__*Default*__: false
1426
1525
  **dependabotOptions**?🔹 | <code>[github.DependabotOptions](#projen-github-dependabotoptions)</code> | Options for dependabot.<br/>__*Default*__: default options
1427
1526
  **deps**?🔹 | <code>Array<string></code> | Runtime dependencies of this module.<br/>__*Default*__: []
1428
1527
  **depsUpgrade**?🔹 | <code>boolean</code> | Use github workflows to handle dependency upgrades.<br/>__*Default*__: true
1429
- **depsUpgradeOptions**?🔹 | <code>[UpgradeDependenciesOptions](#projen-upgradedependenciesoptions)</code> | Options for depsUpgrade.<br/>__*Default*__: default options
1528
+ **depsUpgradeOptions**?🔹 | <code>[javascript.UpgradeDependenciesOptions](#projen-javascript-upgradedependenciesoptions)</code> | Options for depsUpgrade.<br/>__*Default*__: default options
1430
1529
  **description**?🔹 | <code>string</code> | The description is just a string that helps people understand the purpose of the package.<br/>__*Optional*__
1431
1530
  **devContainer**?🔹 | <code>boolean</code> | Add a VSCode development environment (used for GitHub Codespaces).<br/>__*Default*__: false
1432
1531
  **devDeps**?🔹 | <code>Array<string></code> | Build dependencies for this module.<br/>__*Default*__: []
@@ -1436,14 +1535,14 @@ Name | Type | Description
1436
1535
  **entrypoint**?🔹 | <code>string</code> | Module entrypoint (`main` in `package.json`).<br/>__*Default*__: "lib/index.js"
1437
1536
  **entrypointTypes**?🔹 | <code>string</code> | The .d.ts file that includes the type declarations for this module.<br/>__*Default*__: .d.ts file derived from the project's entrypoint (usually lib/index.d.ts)
1438
1537
  **eslint**?🔹 | <code>boolean</code> | Setup eslint.<br/>__*Default*__: true
1439
- **eslintOptions**?🔹 | <code>[EslintOptions](#projen-eslintoptions)</code> | Eslint options.<br/>__*Default*__: opinionated default options
1538
+ **eslintOptions**?🔹 | <code>[javascript.EslintOptions](#projen-javascript-eslintoptions)</code> | Eslint options.<br/>__*Default*__: opinionated default options
1440
1539
  **github**?🔹 | <code>boolean</code> | Enable GitHub integration.<br/>__*Default*__: true
1441
1540
  **githubOptions**?🔹 | <code>[github.GitHubOptions](#projen-github-githuboptions)</code> | Options for GitHub integration.<br/>__*Default*__: see GitHubOptions
1442
1541
  **gitignore**?🔹 | <code>Array<string></code> | Additional entries to .gitignore.<br/>__*Optional*__
1443
1542
  **gitpod**?🔹 | <code>boolean</code> | Add a Gitpod development environment.<br/>__*Default*__: false
1444
1543
  **homepage**?🔹 | <code>string</code> | Package's Homepage / Website.<br/>__*Optional*__
1445
1544
  **jest**?🔹 | <code>boolean</code> | Setup jest unit tests.<br/>__*Default*__: true
1446
- **jestOptions**?🔹 | <code>[JestOptions](#projen-jestoptions)</code> | Jest options.<br/>__*Default*__: default options
1545
+ **jestOptions**?🔹 | <code>[javascript.JestOptions](#projen-javascript-jestoptions)</code> | Jest options.<br/>__*Default*__: default options
1447
1546
  **jsiiReleaseVersion**?🔹 | <code>string</code> | Version requirement of `jsii-release` which is used to publish modules to npm.<br/>__*Default*__: "latest"
1448
1547
  **keywords**?🔹 | <code>Array<string></code> | Keywords to include in `package.json`.<br/>__*Optional*__
1449
1548
  **libdir**?🔹 | <code>string</code> | Typescript artifacts output directory.<br/>__*Default*__: "lib"
@@ -1453,11 +1552,11 @@ Name | Type | Description
1453
1552
  **majorVersion**?🔹 | <code>number</code> | Major version to release from the default branch.<br/>__*Default*__: Major version is not enforced.
1454
1553
  **maxNodeVersion**?🔹 | <code>string</code> | Minimum node.js version to require via `engines` (inclusive).<br/>__*Default*__: no max
1455
1554
  **mergify**?⚠️ | <code>boolean</code> | Whether mergify should be enabled on this repository or not.<br/>__*Default*__: true
1456
- **mergifyOptions**?🔹 | <code>[github.MergifyOptions](#projen-github-mergifyoptions)</code> | Options for mergify.<br/>__*Default*__: default options
1555
+ **mergifyOptions**?⚠️ | <code>[github.MergifyOptions](#projen-github-mergifyoptions)</code> | Options for mergify.<br/>__*Default*__: default options
1457
1556
  **minNodeVersion**?🔹 | <code>string</code> | Minimum Node.js version to require via package.json `engines` (inclusive).<br/>__*Default*__: no "engines" specified
1458
1557
  **mutableBuild**?🔹 | <code>boolean</code> | Automatically update files modified during builds to pull-request branches.<br/>__*Default*__: true
1459
- **npmAccess**?🔹 | <code>[NpmAccess](#projen-npmaccess)</code> | Access level of the npm package.<br/>__*Default*__: for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.
1460
- **npmDistTag**?🔹 | <code>string</code> | Tags can be used to provide an alias instead of version numbers.<br/>__*Default*__: "latest"
1558
+ **npmAccess**?🔹 | <code>[javascript.NpmAccess](#projen-javascript-npmaccess)</code> | Access level of the npm package.<br/>__*Default*__: for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.
1559
+ **npmDistTag**?🔹 | <code>string</code> | The npmDistTag to use when publishing from the default branch.<br/>__*Default*__: "latest"
1461
1560
  **npmRegistry**?⚠️ | <code>string</code> | The host name of the npm registry to publish to.<br/>__*Optional*__
1462
1561
  **npmRegistryUrl**?🔹 | <code>string</code> | The base URL of the npm package registry.<br/>__*Default*__: "https://registry.npmjs.org"
1463
1562
  **npmTokenSecret**?🔹 | <code>string</code> | GitHub secret which contains the NPM token to use when publishing packages.<br/>__*Default*__: "NPM_TOKEN"
@@ -1465,17 +1564,16 @@ Name | Type | Description
1465
1564
  **npmignoreEnabled**?🔹 | <code>boolean</code> | Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs.<br/>__*Default*__: true
1466
1565
  **outdir**?🔹 | <code>string</code> | The root directory of the project.<br/>__*Default*__: "."
1467
1566
  **package**?🔹 | <code>boolean</code> | Defines a `yarn package` command that will produce a tarball and place it under `dist/js`.<br/>__*Default*__: true
1468
- **packageManager**?🔹 | <code>[NodePackageManager](#projen-nodepackagemanager)</code> | The Node Package Manager used to execute scripts.<br/>__*Default*__: NodePackageManager.YARN
1567
+ **packageManager**?🔹 | <code>[javascript.NodePackageManager](#projen-javascript-nodepackagemanager)</code> | The Node Package Manager used to execute scripts.<br/>__*Default*__: NodePackageManager.YARN
1469
1568
  **packageName**?🔹 | <code>string</code> | The "name" in package.json.<br/>__*Default*__: defaults to project name
1470
1569
  **parent**?🔹 | <code>[Project](#projen-project)</code> | The parent project, if this project is part of a bigger project.<br/>__*Optional*__
1471
- **peerDependencyOptions**?🔹 | <code>[PeerDependencyOptions](#projen-peerdependencyoptions)</code> | Options for `peerDeps`.<br/>__*Optional*__
1570
+ **peerDependencyOptions**?🔹 | <code>[javascript.PeerDependencyOptions](#projen-javascript-peerdependencyoptions)</code> | Options for `peerDeps`.<br/>__*Optional*__
1472
1571
  **peerDeps**?🔹 | <code>Array<string></code> | Peer dependencies for this module.<br/>__*Default*__: []
1473
1572
  **postBuildSteps**?🔹 | <code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code> | Steps to execute after build as part of the release workflow.<br/>__*Default*__: []
1474
1573
  **prerelease**?🔹 | <code>string</code> | Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre").<br/>__*Default*__: normal semantic versions
1475
1574
  **projectType**?⚠️ | <code>[ProjectType](#projen-projecttype)</code> | Which type of project this is (library/app).<br/>__*Default*__: ProjectType.UNKNOWN
1476
1575
  **projenCommand**?🔹 | <code>string</code> | The shell command to use in order to run the projen CLI.<br/>__*Default*__: "npx projen"
1477
1576
  **projenDevDependency**?🔹 | <code>boolean</code> | Indicates of "projen" should be installed as a devDependency.<br/>__*Default*__: true
1478
- **projenDuringBuild**?🔹 | <code>boolean</code> | Execute `projen` as the first step of the `build` task to synthesize project files.<br/>__*Default*__: true
1479
1577
  **projenUpgradeAutoMerge**?⚠️ | <code>boolean</code> | Automatically approve projen upgrade PRs, allowing them to be merged by mergify (if configued).<br/>__*Default*__: false
1480
1578
  **projenUpgradeSchedule**?🔹 | <code>Array<string></code> | Customize the projenUpgrade schedule in cron expression.<br/>__*Default*__: [ "0 6 * * *" ]
1481
1579
  **projenUpgradeSecret**?🔹 | <code>string</code> | Periodically submits a pull request for projen upgrades (executes `yarn projen:upgrade`).<br/>__*Default*__: no automatic projen upgrade pull requests
@@ -1483,9 +1581,10 @@ Name | Type | Description
1483
1581
  **projenrcJs**?🔹 | <code>boolean</code> | Generate (once) .projenrc.js (in JavaScript). Set to `false` in order to disable .projenrc.js generation.<br/>__*Default*__: true if projenrcJson is false
1484
1582
  **projenrcJsOptions**?🔹 | <code>[javascript.ProjenrcOptions](#projen-javascript-projenrcoptions)</code> | Options for .projenrc.js.<br/>__*Default*__: default options
1485
1583
  **projenrcJson**?🔹 | <code>boolean</code> | Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .projenrc.json generation.<br/>__*Default*__: false
1486
- **projenrcJsonOptions**?🔹 | <code>[json.ProjenrcOptions](#projen-json-projenrcoptions)</code> | Options for .projenrc.json.<br/>__*Default*__: default options
1584
+ **projenrcJsonOptions**?🔹 | <code>[ProjenrcOptions](#projen-projenrcoptions)</code> | Options for .projenrc.json.<br/>__*Default*__: default options
1487
1585
  **projenrcTs**?🔹 | <code>boolean</code> | Use TypeScript for your projenrc file (`.projenrc.ts`).<br/>__*Default*__: false
1488
1586
  **projenrcTsOptions**?🔹 | <code>[typescript.ProjenrcOptions](#projen-typescript-projenrcoptions)</code> | Options for .projenrc.ts.<br/>__*Optional*__
1587
+ **publishTasks**?🔹 | <code>boolean</code> | Define publishing tasks that can be executed manually as well as workflows.<br/>__*Default*__: false
1489
1588
  **pullRequestTemplate**?🔹 | <code>boolean</code> | Include a GitHub pull request template.<br/>__*Default*__: true
1490
1589
  **pullRequestTemplateContents**?🔹 | <code>Array<string></code> | The contents of the pull request template.<br/>__*Default*__: default content
1491
1590
  **readme**?🔹 | <code>[SampleReadmeProps](#projen-samplereadmeprops)</code> | The README setup.<br/>__*Default*__: { filename: 'README.md', contents: '# replace this' }
@@ -1510,14 +1609,17 @@ Name | Type | Description
1510
1609
  **stale**?🔹 | <code>boolean</code> | Auto-close of stale issues and pull request.<br/>__*Default*__: true
1511
1610
  **staleOptions**?🔹 | <code>[github.StaleOptions](#projen-github-staleoptions)</code> | Auto-close stale issues and pull requests.<br/>__*Default*__: see defaults in `StaleOptions`
1512
1611
  **testdir**?🔹 | <code>string</code> | Jest tests directory. Tests files should be named `xxx.test.ts`.<br/>__*Default*__: "test"
1513
- **tsconfig**?🔹 | <code>[TypescriptConfigOptions](#projen-typescriptconfigoptions)</code> | Custom TSConfig.<br/>__*Default*__: default options
1514
- **tsconfigDev**?🔹 | <code>[TypescriptConfigOptions](#projen-typescriptconfigoptions)</code> | Custom tsconfig options for the development tsconfig.json file (used for testing).<br/>__*Default*__: use the production tsconfig options
1612
+ **tsconfig**?🔹 | <code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code> | Custom TSConfig.<br/>__*Default*__: default options
1613
+ **tsconfigDev**?🔹 | <code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code> | Custom tsconfig options for the development tsconfig.json file (used for testing).<br/>__*Default*__: use the production tsconfig options
1515
1614
  **tsconfigDevFile**?🔹 | <code>string</code> | The name of the development tsconfig.json file.<br/>__*Default*__: "tsconfig.dev.json"
1516
1615
  **typescriptVersion**?🔹 | <code>string</code> | TypeScript version to use.<br/>__*Default*__: "latest"
1616
+ **versionrcOptions**?🔹 | <code>Map<string, any></code> | Custom configuration used when creating changelog with standard-version package.<br/>__*Default*__: standard configuration applicable for GitHub repositories
1517
1617
  **vscode**?🔹 | <code>boolean</code> | Enable VSCode integration.<br/>__*Default*__: true
1518
1618
  **workflowBootstrapSteps**?🔹 | <code>Array<any></code> | Workflow steps to use in order to bootstrap this repo.<br/>__*Default*__: "yarn install --frozen-lockfile && yarn projen"
1519
1619
  **workflowContainerImage**?🔹 | <code>string</code> | Container image to use for GitHub workflows.<br/>__*Default*__: default image
1620
+ **workflowGitIdentity**?🔹 | <code>[github.GitIdentity](#projen-github-gitidentity)</code> | The git identity to use in workflows.<br/>__*Default*__: GitHub Actions
1520
1621
  **workflowNodeVersion**?🔹 | <code>string</code> | The node version to use in GitHub workflows.<br/>__*Default*__: same as `minNodeVersion`
1622
+ **workflowRunsOn**?🔹 | <code>Array<string></code> | Github Runner selection labels.<br/>__*Default*__: ["ubuntu-latest"]
1521
1623
 
1522
1624
 
1523
1625