Class SmithyApiGatewayTsProjectOptions.Builder

    • Constructor Detail

      • Builder

        public Builder()
    • Method Detail

      • disableTsconfig

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder disableTsconfig​(Boolean disableTsconfig)
        Sets the value of TypeScriptProjectOptions.getDisableTsconfig()
        Parameters:
        disableTsconfig - Do not generate a `tsconfig.json` file (used by jsii projects since tsconfig.json is generated by the jsii compiler).
        Returns:
        this
      • docsDirectory

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder docsDirectory​(String docsDirectory)
        Sets the value of TypeScriptProjectOptions.getDocsDirectory()
        Parameters:
        docsDirectory - Docs directory.
        Returns:
        this
      • entrypointTypes

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder entrypointTypes​(String entrypointTypes)
        Sets the value of TypeScriptProjectOptions.getEntrypointTypes()
        Parameters:
        entrypointTypes - The .d.ts file that includes the type declarations for this module.
        Returns:
        this
      • eslintOptions

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder eslintOptions​(io.github.cdklabs.projen.javascript.EslintOptions eslintOptions)
        Sets the value of TypeScriptProjectOptions.getEslintOptions()
        Parameters:
        eslintOptions - Eslint options.
        Returns:
        this
      • libdir

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder libdir​(String libdir)
        Sets the value of TypeScriptProjectOptions.getLibdir()
        Parameters:
        libdir - Typescript artifacts output directory.
        Returns:
        this
      • projenrcTs

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder projenrcTs​(Boolean projenrcTs)
        Sets the value of TypeScriptProjectOptions.getProjenrcTs()
        Parameters:
        projenrcTs - Use TypeScript for your projenrc file (`.projenrc.ts`).
        Returns:
        this
      • projenrcTsOptions

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder projenrcTsOptions​(io.github.cdklabs.projen.typescript.ProjenrcOptions projenrcTsOptions)
        Sets the value of TypeScriptProjectOptions.getProjenrcTsOptions()
        Parameters:
        projenrcTsOptions - Options for .projenrc.ts.
        Returns:
        this
      • sampleCode

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder sampleCode​(Boolean sampleCode)
        Sets the value of TypeScriptProjectOptions.getSampleCode()
        Parameters:
        sampleCode - Generate one-time sample in `src/` and `test/` if there are no files there.
        Returns:
        this
      • testdir

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder testdir​(String testdir)
        Sets the value of TypeScriptProjectOptions.getTestdir()
        Parameters:
        testdir - Jest tests directory. Tests files should be named `xxx.test.ts`. If this directory is under srcdir (e.g. src/test, src/__tests__), then tests are going to be compiled into lib/ and executed as javascript. If the test directory is outside of src, then we configure jest to compile the code in-memory.
        Returns:
        this
      • tsconfig

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder tsconfig​(io.github.cdklabs.projen.javascript.TypescriptConfigOptions tsconfig)
        Sets the value of TypeScriptProjectOptions.getTsconfig()
        Parameters:
        tsconfig - Custom TSConfig.
        Returns:
        this
      • tsconfigDev

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder tsconfigDev​(io.github.cdklabs.projen.javascript.TypescriptConfigOptions tsconfigDev)
        Sets the value of TypeScriptProjectOptions.getTsconfigDev()
        Parameters:
        tsconfigDev - Custom tsconfig options for the development tsconfig.json file (used for testing).
        Returns:
        this
      • tsconfigDevFile

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder tsconfigDevFile​(String tsconfigDevFile)
        Sets the value of TypeScriptProjectOptions.getTsconfigDevFile()
        Parameters:
        tsconfigDevFile - The name of the development tsconfig.json file.
        Returns:
        this
      • typescriptVersion

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder typescriptVersion​(String typescriptVersion)
        Sets the value of TypeScriptProjectOptions.getTypescriptVersion()
        Parameters:
        typescriptVersion - TypeScript version to use. NOTE: Typescript is not semantically versioned and should remain on the same minor, so we recommend using a ~ dependency (e.g. ~1.2.3).
        Returns:
        this
      • defaultReleaseBranch

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder defaultReleaseBranch​(String defaultReleaseBranch)
        Sets the value of NodeProjectOptions.getDefaultReleaseBranch()
        Parameters:
        defaultReleaseBranch - The name of the main release branch. This parameter is required.
        Returns:
        this
      • artifactsDirectory

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder artifactsDirectory​(String artifactsDirectory)
        Sets the value of NodeProjectOptions.getArtifactsDirectory()
        Parameters:
        artifactsDirectory - A directory which will contain build artifacts.
        Returns:
        this
      • autoApproveUpgrades

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder autoApproveUpgrades​(Boolean autoApproveUpgrades)
        Sets the value of NodeProjectOptions.getAutoApproveUpgrades()
        Parameters:
        autoApproveUpgrades - Automatically approve deps upgrade PRs, allowing them to be merged by mergify (if configued). Throw if set to true but autoApproveOptions are not defined.
        Returns:
        this
      • buildWorkflow

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder buildWorkflow​(Boolean buildWorkflow)
        Sets the value of NodeProjectOptions.getBuildWorkflow()
        Parameters:
        buildWorkflow - Define a GitHub workflow for building PRs.
        Returns:
        this
      • buildWorkflowTriggers

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder buildWorkflowTriggers​(io.github.cdklabs.projen.github.workflows.Triggers buildWorkflowTriggers)
        Sets the value of NodeProjectOptions.getBuildWorkflowTriggers()
        Parameters:
        buildWorkflowTriggers - Build workflow triggers.
        Returns:
        this
      • bundlerOptions

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder bundlerOptions​(io.github.cdklabs.projen.javascript.BundlerOptions bundlerOptions)
        Sets the value of NodeProjectOptions.getBundlerOptions()
        Parameters:
        bundlerOptions - Options for `Bundler`.
        Returns:
        this
      • codeCov

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder codeCov​(Boolean codeCov)
        Sets the value of NodeProjectOptions.getCodeCov()
        Parameters:
        codeCov - Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v3 A secret is required for private repos. Configured with @codeCovTokenSecret.
        Returns:
        this
      • codeCovTokenSecret

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder codeCovTokenSecret​(String codeCovTokenSecret)
        Sets the value of NodeProjectOptions.getCodeCovTokenSecret()
        Parameters:
        codeCovTokenSecret - Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories.
        Returns:
        this
      • copyrightOwner

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder copyrightOwner​(String copyrightOwner)
        Sets the value of NodeProjectOptions.getCopyrightOwner()
        Parameters:
        copyrightOwner - License copyright owner.
        Returns:
        this
      • copyrightPeriod

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder copyrightPeriod​(String copyrightPeriod)
        Sets the value of NodeProjectOptions.getCopyrightPeriod()
        Parameters:
        copyrightPeriod - The copyright years to put in the LICENSE file.
        Returns:
        this
      • dependabot

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder dependabot​(Boolean dependabot)
        Sets the value of NodeProjectOptions.getDependabot()
        Parameters:
        dependabot - Use dependabot to handle dependency upgrades. Cannot be used in conjunction with depsUpgrade.
        Returns:
        this
      • dependabotOptions

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder dependabotOptions​(io.github.cdklabs.projen.github.DependabotOptions dependabotOptions)
        Sets the value of NodeProjectOptions.getDependabotOptions()
        Parameters:
        dependabotOptions - Options for dependabot.
        Returns:
        this
      • depsUpgrade

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder depsUpgrade​(Boolean depsUpgrade)
        Sets the value of NodeProjectOptions.getDepsUpgrade()
        Parameters:
        depsUpgrade - Use github workflows to handle dependency upgrades. Cannot be used in conjunction with dependabot.
        Returns:
        this
      • depsUpgradeOptions

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder depsUpgradeOptions​(io.github.cdklabs.projen.javascript.UpgradeDependenciesOptions depsUpgradeOptions)
        Sets the value of NodeProjectOptions.getDepsUpgradeOptions()
        Parameters:
        depsUpgradeOptions - Options for `UpgradeDependencies`.
        Returns:
        this
      • jestOptions

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder jestOptions​(io.github.cdklabs.projen.javascript.JestOptions jestOptions)
        Sets the value of NodeProjectOptions.getJestOptions()
        Parameters:
        jestOptions - Jest options.
        Returns:
        this
      • mutableBuild

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder mutableBuild​(Boolean mutableBuild)
        Sets the value of NodeProjectOptions.getMutableBuild()
        Parameters:
        mutableBuild - Automatically update files modified during builds to pull-request branches. This means that any files synthesized by projen or e.g. test snapshots will always be up-to-date before a PR is merged.

        Implies that PR builds do not have anti-tamper checks.

        Returns:
        this
      • npmignoreEnabled

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder npmignoreEnabled​(Boolean npmignoreEnabled)
        Sets the value of NodeProjectOptions.getNpmignoreEnabled()
        Parameters:
        npmignoreEnabled - Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs.
        Returns:
        this
      • packageValue

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder packageValue​(Boolean packageValue)
        Sets the value of NodeProjectOptions.getPackageValue()
        Parameters:
        packageValue - Defines a `package` task that will produce an npm tarball under the artifacts directory (e.g. `dist`).
        Returns:
        this
      • prettierOptions

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder prettierOptions​(io.github.cdklabs.projen.javascript.PrettierOptions prettierOptions)
        Sets the value of NodeProjectOptions.getPrettierOptions()
        Parameters:
        prettierOptions - Prettier options.
        Returns:
        this
      • projenDevDependency

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder projenDevDependency​(Boolean projenDevDependency)
        Sets the value of NodeProjectOptions.getProjenDevDependency()
        Parameters:
        projenDevDependency - Indicates of "projen" should be installed as a devDependency.
        Returns:
        this
      • projenrcJs

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder projenrcJs​(Boolean projenrcJs)
        Sets the value of NodeProjectOptions.getProjenrcJs()
        Parameters:
        projenrcJs - Generate (once) .projenrc.js (in JavaScript). Set to `false` in order to disable .projenrc.js generation.
        Returns:
        this
      • projenrcJsOptions

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder projenrcJsOptions​(io.github.cdklabs.projen.javascript.ProjenrcOptions projenrcJsOptions)
        Sets the value of NodeProjectOptions.getProjenrcJsOptions()
        Parameters:
        projenrcJsOptions - Options for .projenrc.js.
        Returns:
        this
      • projenVersion

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder projenVersion​(String projenVersion)
        Sets the value of NodeProjectOptions.getProjenVersion()
        Parameters:
        projenVersion - Version of projen to install.
        Returns:
        this
      • pullRequestTemplate

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder pullRequestTemplate​(Boolean pullRequestTemplate)
        Sets the value of NodeProjectOptions.getPullRequestTemplate()
        Parameters:
        pullRequestTemplate - Include a GitHub pull request template.
        Returns:
        this
      • pullRequestTemplateContents

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder pullRequestTemplateContents​(List<String> pullRequestTemplateContents)
        Sets the value of NodeProjectOptions.getPullRequestTemplateContents()
        Parameters:
        pullRequestTemplateContents - The contents of the pull request template.
        Returns:
        this
      • release

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder release​(Boolean release)
        Sets the value of NodeProjectOptions.getRelease()
        Parameters:
        release - Add release management to this project.
        Returns:
        this
      • releaseToNpm

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder releaseToNpm​(Boolean releaseToNpm)
        Sets the value of NodeProjectOptions.getReleaseToNpm()
        Parameters:
        releaseToNpm - Automatically release to npm when new versions are introduced.
        Returns:
        this
      • releaseWorkflow

        @Stability(Deprecated)
        @Deprecated
        public SmithyApiGatewayTsProjectOptions.Builder releaseWorkflow​(Boolean releaseWorkflow)
        Deprecated.
        see `release`.
        Sets the value of NodeProjectOptions.getReleaseWorkflow()
        Parameters:
        releaseWorkflow - DEPRECATED: renamed to `release`.
        Returns:
        this
      • workflowBootstrapSteps

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder workflowBootstrapSteps​(List<? extends io.github.cdklabs.projen.github.workflows.JobStep> workflowBootstrapSteps)
        Sets the value of NodeProjectOptions.getWorkflowBootstrapSteps()
        Parameters:
        workflowBootstrapSteps - Workflow steps to use in order to bootstrap this repo.
        Returns:
        this
      • workflowGitIdentity

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder workflowGitIdentity​(io.github.cdklabs.projen.github.GitIdentity workflowGitIdentity)
        Sets the value of NodeProjectOptions.getWorkflowGitIdentity()
        Parameters:
        workflowGitIdentity - The git identity to use in workflows.
        Returns:
        this
      • workflowNodeVersion

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder workflowNodeVersion​(String workflowNodeVersion)
        Sets the value of NodeProjectOptions.getWorkflowNodeVersion()
        Parameters:
        workflowNodeVersion - The node version to use in GitHub workflows.
        Returns:
        this
      • autoApproveOptions

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder autoApproveOptions​(io.github.cdklabs.projen.github.AutoApproveOptions autoApproveOptions)
        Sets the value of GitHubProjectOptions.getAutoApproveOptions()
        Parameters:
        autoApproveOptions - Enable and configure the 'auto approve' workflow.
        Returns:
        this
      • autoMerge

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder autoMerge​(Boolean autoMerge)
        Sets the value of GitHubProjectOptions.getAutoMerge()
        Parameters:
        autoMerge - Enable automatic merging on GitHub. Has no effect if github.mergify is set to false.
        Returns:
        this
      • autoMergeOptions

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder autoMergeOptions​(io.github.cdklabs.projen.github.AutoMergeOptions autoMergeOptions)
        Sets the value of GitHubProjectOptions.getAutoMergeOptions()
        Parameters:
        autoMergeOptions - Configure options for automatic merging on GitHub. Has no effect if github.mergify or autoMerge is set to false.
        Returns:
        this
      • clobber

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder clobber​(Boolean clobber)
        Sets the value of GitHubProjectOptions.getClobber()
        Parameters:
        clobber - Add a `clobber` task which resets the repo to origin.
        Returns:
        this
      • devContainer

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder devContainer​(Boolean devContainer)
        Sets the value of GitHubProjectOptions.getDevContainer()
        Parameters:
        devContainer - Add a VSCode development environment (used for GitHub Codespaces).
        Returns:
        this
      • github

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder github​(Boolean github)
        Sets the value of GitHubProjectOptions.getGithub()
        Parameters:
        github - Enable GitHub integration. Enabled by default for root projects. Disabled for non-root projects.
        Returns:
        this
      • githubOptions

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder githubOptions​(io.github.cdklabs.projen.github.GitHubOptions githubOptions)
        Sets the value of GitHubProjectOptions.getGithubOptions()
        Parameters:
        githubOptions - Options for GitHub integration.
        Returns:
        this
      • mergify

        @Stability(Deprecated)
        @Deprecated
        public SmithyApiGatewayTsProjectOptions.Builder mergify​(Boolean mergify)
        Deprecated.
        use `githubOptions.mergify` instead
        Sets the value of GitHubProjectOptions.getMergify()
        Parameters:
        mergify - Whether mergify should be enabled on this repository or not.
        Returns:
        this
      • mergifyOptions

        @Stability(Deprecated)
        @Deprecated
        public SmithyApiGatewayTsProjectOptions.Builder mergifyOptions​(io.github.cdklabs.projen.github.MergifyOptions mergifyOptions)
        Deprecated.
        use `githubOptions.mergifyOptions` instead
        Sets the value of GitHubProjectOptions.getMergifyOptions()
        Parameters:
        mergifyOptions - Options for mergify.
        Returns:
        this
      • projectType

        @Stability(Deprecated)
        @Deprecated
        public SmithyApiGatewayTsProjectOptions.Builder projectType​(io.github.cdklabs.projen.ProjectType projectType)
        Deprecated.
        no longer supported at the base project level
        Sets the value of GitHubProjectOptions.getProjectType()
        Parameters:
        projectType - Which type of project this is (library/app).
        Returns:
        this
      • projenCredentials

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder projenCredentials​(io.github.cdklabs.projen.github.GithubCredentials projenCredentials)
        Sets the value of GitHubProjectOptions.getProjenCredentials()
        Parameters:
        projenCredentials - Choose a method of providing GitHub API access for projen workflows.
        Returns:
        this
      • projenTokenSecret

        @Stability(Deprecated)
        @Deprecated
        public SmithyApiGatewayTsProjectOptions.Builder projenTokenSecret​(String projenTokenSecret)
        Deprecated.
        use `projenCredentials`
        Sets the value of GitHubProjectOptions.getProjenTokenSecret()
        Parameters:
        projenTokenSecret - The name of a secret which includes a GitHub Personal Access Token to be used by projen workflows. This token needs to have the repo, workflows and packages scope.
        Returns:
        this
      • readme

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder readme​(io.github.cdklabs.projen.SampleReadmeProps readme)
        Sets the value of GitHubProjectOptions.getReadme()
        Parameters:
        readme - The README setup.
        Returns:
        this
      • stale

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder stale​(Boolean stale)
        Sets the value of GitHubProjectOptions.getStale()
        Parameters:
        stale - Auto-close of stale issues and pull request. See staleOptions for options.
        Returns:
        this
      • staleOptions

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder staleOptions​(io.github.cdklabs.projen.github.StaleOptions staleOptions)
        Sets the value of GitHubProjectOptions.getStaleOptions()
        Parameters:
        staleOptions - Auto-close stale issues and pull requests. To disable set stale to false.
        Returns:
        this
      • vscode

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder vscode​(Boolean vscode)
        Sets the value of GitHubProjectOptions.getVscode()
        Parameters:
        vscode - Enable VSCode integration. Enabled by default for root projects. Disabled for non-root projects.
        Returns:
        this
      • name

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder name​(String name)
        Sets the value of ProjectOptions.getName()
        Parameters:
        name - This is the name of your project. This parameter is required.
        Returns:
        this
      • commitGenerated

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder commitGenerated​(Boolean commitGenerated)
        Sets the value of ProjectOptions.getCommitGenerated()
        Parameters:
        commitGenerated - Whether to commit the managed files by default.
        Returns:
        this
      • logging

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder logging​(io.github.cdklabs.projen.LoggerOptions logging)
        Sets the value of ProjectOptions.getLogging()
        Parameters:
        logging - Configure logging options such as verbosity.
        Returns:
        this
      • outdir

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder outdir​(String outdir)
        Sets the value of ProjectOptions.getOutdir()
        Parameters:
        outdir - The root directory of the project. Relative to this directory, all files are synthesized.

        If this project has a parent, this directory is relative to the parent directory and it cannot be the same as the parent or any of it's other sub-projects.

        Returns:
        this
      • parent

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder parent​(io.github.cdklabs.projen.Project parent)
        Sets the value of ProjectOptions.getParent()
        Parameters:
        parent - The parent project, if this project is part of a bigger project.
        Returns:
        this
      • projenCommand

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder projenCommand​(String projenCommand)
        Sets the value of ProjectOptions.getProjenCommand()
        Parameters:
        projenCommand - The shell command to use in order to run the projen CLI. Can be used to customize in special environments.
        Returns:
        this
      • projenrcJson

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder projenrcJson​(Boolean projenrcJson)
        Sets the value of ProjectOptions.getProjenrcJson()
        Parameters:
        projenrcJson - Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .projenrc.json generation.
        Returns:
        this
      • projenrcJsonOptions

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder projenrcJsonOptions​(io.github.cdklabs.projen.ProjenrcOptions projenrcJsonOptions)
        Sets the value of ProjectOptions.getProjenrcJsonOptions()
        Parameters:
        projenrcJsonOptions - Options for .projenrc.json.
        Returns:
        this
      • renovatebot

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder renovatebot​(Boolean renovatebot)
        Sets the value of ProjectOptions.getRenovatebot()
        Parameters:
        renovatebot - Use renovatebot to handle dependency upgrades.
        Returns:
        this
      • renovatebotOptions

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder renovatebotOptions​(io.github.cdklabs.projen.RenovatebotOptions renovatebotOptions)
        Sets the value of ProjectOptions.getRenovatebotOptions()
        Parameters:
        renovatebotOptions - Options for renovatebot.
        Returns:
        this
      • allowLibraryDependencies

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder allowLibraryDependencies​(Boolean allowLibraryDependencies)
        Sets the value of NodePackageOptions.getAllowLibraryDependencies()
        Parameters:
        allowLibraryDependencies - Allow the project to include `peerDependencies` and `bundledDependencies`. This is normally only allowed for libraries. For apps, there's no meaning for specifying these.
        Returns:
        this
      • authorEmail

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder authorEmail​(String authorEmail)
        Sets the value of NodePackageOptions.getAuthorEmail()
        Parameters:
        authorEmail - Author's e-mail.
        Returns:
        this
      • authorOrganization

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder authorOrganization​(Boolean authorOrganization)
        Sets the value of NodePackageOptions.getAuthorOrganization()
        Parameters:
        authorOrganization - Is the author an organization.
        Returns:
        this
      • authorUrl

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder authorUrl​(String authorUrl)
        Sets the value of NodePackageOptions.getAuthorUrl()
        Parameters:
        authorUrl - Author's URL / Website.
        Returns:
        this
      • autoDetectBin

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder autoDetectBin​(Boolean autoDetectBin)
        Sets the value of NodePackageOptions.getAutoDetectBin()
        Parameters:
        autoDetectBin - Automatically add all executables under the `bin` directory to your `package.json` file under the `bin` section.
        Returns:
        this
      • bin

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder bin​(Map<String,​String> bin)
        Sets the value of NodePackageOptions.getBin()
        Parameters:
        bin - Binary programs vended with your module. You can use this option to add/customize how binaries are represented in your package.json, but unless autoDetectBin is false, every executable file under bin will automatically be added to this section.
        Returns:
        this
      • bugsEmail

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder bugsEmail​(String bugsEmail)
        Sets the value of NodePackageOptions.getBugsEmail()
        Parameters:
        bugsEmail - The email address to which issues should be reported.
        Returns:
        this
      • bugsUrl

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder bugsUrl​(String bugsUrl)
        Sets the value of NodePackageOptions.getBugsUrl()
        Parameters:
        bugsUrl - The url to your project's issue tracker.
        Returns:
        this
      • bundledDeps

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder bundledDeps​(List<String> bundledDeps)
        Sets the value of NodePackageOptions.getBundledDeps()
        Parameters:
        bundledDeps - List of dependencies to bundle into this module. These modules will be added both to the dependencies section and bundledDependencies section of your package.json.

        The recommendation is to only specify the module name here (e.g. express). This will behave similar to yarn add or npm install in the sense that it will add the module as a dependency to your package.json file with the latest version (^). You can specify semver requirements in the same syntax passed to npm i or yarn add (e.g. express@^2) and this will be what you package.json will eventually include.

        Returns:
        this
      • codeArtifactOptions

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder codeArtifactOptions​(io.github.cdklabs.projen.javascript.CodeArtifactOptions codeArtifactOptions)
        Sets the value of NodePackageOptions.getCodeArtifactOptions()
        Parameters:
        codeArtifactOptions - Options for npm packages using AWS CodeArtifact. This is required if publishing packages to, or installing scoped packages from AWS CodeArtifact
        Returns:
        this
      • deps

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder deps​(List<String> deps)
        Sets the value of NodePackageOptions.getDeps()
        Parameters:
        deps - Runtime dependencies of this module. The recommendation is to only specify the module name here (e.g. express). This will behave similar to yarn add or npm install in the sense that it will add the module as a dependency to your package.json file with the latest version (^). You can specify semver requirements in the same syntax passed to npm i or yarn add (e.g. express@^2) and this will be what you package.json will eventually include.
        Returns:
        this
      • description

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder description​(String description)
        Sets the value of NodePackageOptions.getDescription()
        Parameters:
        description - The description is just a string that helps people understand the purpose of the package. It can be used when searching for packages in a package manager as well. See https://classic.yarnpkg.com/en/docs/package-json/#toc-description
        Returns:
        this
      • devDeps

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder devDeps​(List<String> devDeps)
        Sets the value of NodePackageOptions.getDevDeps()
        Parameters:
        devDeps - Build dependencies for this module. These dependencies will only be available in your build environment but will not be fetched when this module is consumed.

        The recommendation is to only specify the module name here (e.g. express). This will behave similar to yarn add or npm install in the sense that it will add the module as a dependency to your package.json file with the latest version (^). You can specify semver requirements in the same syntax passed to npm i or yarn add (e.g. express@^2) and this will be what you package.json will eventually include.

        Returns:
        this
      • entrypoint

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder entrypoint​(String entrypoint)
        Sets the value of NodePackageOptions.getEntrypoint()
        Parameters:
        entrypoint - Module entrypoint (`main` in `package.json`). Set to an empty string to not include main in your package.json
        Returns:
        this
      • homepage

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder homepage​(String homepage)
        Sets the value of NodePackageOptions.getHomepage()
        Parameters:
        homepage - Package's Homepage / Website.
        Returns:
        this
      • license

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder license​(String license)
        Sets the value of NodePackageOptions.getLicense()
        Parameters:
        license - License's SPDX identifier. See https://github.com/projen/projen/tree/main/license-text for a list of supported licenses. Use the licensed option if you want to no license to be specified.
        Returns:
        this
      • licensed

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder licensed​(Boolean licensed)
        Sets the value of NodePackageOptions.getLicensed()
        Parameters:
        licensed - Indicates if a license should be added.
        Returns:
        this
      • maxNodeVersion

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder maxNodeVersion​(String maxNodeVersion)
        Sets the value of NodePackageOptions.getMaxNodeVersion()
        Parameters:
        maxNodeVersion - Minimum node.js version to require via `engines` (inclusive).
        Returns:
        this
      • minNodeVersion

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder minNodeVersion​(String minNodeVersion)
        Sets the value of NodePackageOptions.getMinNodeVersion()
        Parameters:
        minNodeVersion - Minimum Node.js version to require via package.json `engines` (inclusive).
        Returns:
        this
      • npmAccess

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder npmAccess​(io.github.cdklabs.projen.javascript.NpmAccess npmAccess)
        Sets the value of NodePackageOptions.getNpmAccess()
        Parameters:
        npmAccess - Access level of the npm package.
        Returns:
        this
      • npmRegistry

        @Stability(Deprecated)
        @Deprecated
        public SmithyApiGatewayTsProjectOptions.Builder npmRegistry​(String npmRegistry)
        Deprecated.
        use `npmRegistryUrl` instead
        Sets the value of NodePackageOptions.getNpmRegistry()
        Parameters:
        npmRegistry - The host name of the npm registry to publish to. Cannot be set together with npmRegistryUrl.
        Returns:
        this
      • npmRegistryUrl

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder npmRegistryUrl​(String npmRegistryUrl)
        Sets the value of NodePackageOptions.getNpmRegistryUrl()
        Parameters:
        npmRegistryUrl - The base URL of the npm package registry. Must be a URL (e.g. start with "https://" or "http://")
        Returns:
        this
      • npmTokenSecret

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder npmTokenSecret​(String npmTokenSecret)
        Sets the value of NodePackageOptions.getNpmTokenSecret()
        Parameters:
        npmTokenSecret - GitHub secret which contains the NPM token to use when publishing packages.
        Returns:
        this
      • packageManager

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder packageManager​(io.github.cdklabs.projen.javascript.NodePackageManager packageManager)
        Sets the value of NodePackageOptions.getPackageManager()
        Parameters:
        packageManager - The Node Package Manager used to execute scripts.
        Returns:
        this
      • packageName

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder packageName​(String packageName)
        Sets the value of NodePackageOptions.getPackageName()
        Parameters:
        packageName - The "name" in package.json.
        Returns:
        this
      • peerDependencyOptions

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder peerDependencyOptions​(io.github.cdklabs.projen.javascript.PeerDependencyOptions peerDependencyOptions)
        Sets the value of NodePackageOptions.getPeerDependencyOptions()
        Parameters:
        peerDependencyOptions - Options for `peerDeps`.
        Returns:
        this
      • peerDeps

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder peerDeps​(List<String> peerDeps)
        Sets the value of NodePackageOptions.getPeerDeps()
        Parameters:
        peerDeps - Peer dependencies for this module. Dependencies listed here are required to be installed (and satisfied) by the consumer of this library. Using peer dependencies allows you to ensure that only a single module of a certain library exists in the node_modules tree of your consumers.

        Note that prior to npm@7, peer dependencies are not automatically installed, which means that adding peer dependencies to a library will be a breaking change for your customers.

        Unless peerDependencyOptions.pinnedDevDependency is disabled (it is enabled by default), projen will automatically add a dev dependency with a pinned version for each peer dependency. This will ensure that you build & test your module against the lowest peer version required.

        Returns:
        this
      • repository

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder repository​(String repository)
        Sets the value of NodePackageOptions.getRepository()
        Parameters:
        repository - The repository is the location where the actual code for your package lives. See https://classic.yarnpkg.com/en/docs/package-json/#toc-repository
        Returns:
        this
      • repositoryDirectory

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder repositoryDirectory​(String repositoryDirectory)
        Sets the value of NodePackageOptions.getRepositoryDirectory()
        Parameters:
        repositoryDirectory - 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.
        Returns:
        this
      • scopedPackagesOptions

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder scopedPackagesOptions​(List<? extends io.github.cdklabs.projen.javascript.ScopedPackagesOptions> scopedPackagesOptions)
        Sets the value of NodePackageOptions.getScopedPackagesOptions()
        Parameters:
        scopedPackagesOptions - Options for privately hosted scoped packages.
        Returns:
        this
      • scripts

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder scripts​(Map<String,​String> scripts)
        Sets the value of NodePackageOptions.getScripts()
        Parameters:
        scripts - npm scripts to include. If a script has the same name as a standard script, the standard script will be overwritten.
        Returns:
        this
      • jsiiReleaseVersion

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder jsiiReleaseVersion​(String jsiiReleaseVersion)
        Sets the value of ReleaseProjectOptions.getJsiiReleaseVersion()
        Parameters:
        jsiiReleaseVersion - Version requirement of `publib` which is used to publish modules to npm.
        Returns:
        this
      • majorVersion

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder majorVersion​(Number majorVersion)
        Sets the value of ReleaseProjectOptions.getMajorVersion()
        Parameters:
        majorVersion - Major version to release from the default branch. If this is specified, we bump the latest version of this major version line. If not specified, we bump the global latest version.
        Returns:
        this
      • minMajorVersion

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder minMajorVersion​(Number minMajorVersion)
        Sets the value of ReleaseProjectOptions.getMinMajorVersion()
        Parameters:
        minMajorVersion - Minimal Major version to release. This can be useful to set to 1, as breaking changes before the 1.x major release are not incrementing the major version number.

        Can not be set together with majorVersion.

        Returns:
        this
      • npmDistTag

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder npmDistTag​(String npmDistTag)
        Sets the value of ReleaseProjectOptions.getNpmDistTag()
        Parameters:
        npmDistTag - The npmDistTag to use when publishing from the default branch. To set the npm dist-tag for release branches, set the npmDistTag property for each branch.
        Returns:
        this
      • postBuildSteps

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder postBuildSteps​(List<? extends io.github.cdklabs.projen.github.workflows.JobStep> postBuildSteps)
        Sets the value of ReleaseProjectOptions.getPostBuildSteps()
        Parameters:
        postBuildSteps - Steps to execute after build as part of the release workflow.
        Returns:
        this
      • prerelease

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder prerelease​(String prerelease)
        Sets the value of ReleaseProjectOptions.getPrerelease()
        Parameters:
        prerelease - Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre").
        Returns:
        this
      • publishDryRun

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder publishDryRun​(Boolean publishDryRun)
        Sets the value of ReleaseProjectOptions.getPublishDryRun()
        Parameters:
        publishDryRun - Instead of actually publishing to package managers, just print the publishing command.
        Returns:
        this
      • publishTasks

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder publishTasks​(Boolean publishTasks)
        Sets the value of ReleaseProjectOptions.getPublishTasks()
        Parameters:
        publishTasks - Define publishing tasks that can be executed manually as well as workflows. Normally, publishing only happens within automated workflows. Enable this in order to create a publishing task for each publishing activity.
        Returns:
        this
      • releaseBranches

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder releaseBranches​(Map<String,​? extends io.github.cdklabs.projen.release.BranchOptions> releaseBranches)
        Sets the value of ReleaseProjectOptions.getReleaseBranches()
        Parameters:
        releaseBranches - Defines additional release branches. A workflow will be created for each release branch which will publish releases from commits in this branch. Each release branch must be assigned a major version number which is used to enforce that versions published from that branch always use that major version. If multiple branches are used, the majorVersion field must also be provided for the default branch.
        Returns:
        this
      • releaseEveryCommit

        @Stability(Deprecated)
        @Deprecated
        public SmithyApiGatewayTsProjectOptions.Builder releaseEveryCommit​(Boolean releaseEveryCommit)
        Deprecated.
        Use `releaseTrigger: ReleaseTrigger.continuous()` instead
        Sets the value of ReleaseProjectOptions.getReleaseEveryCommit()
        Parameters:
        releaseEveryCommit - Automatically release new versions every commit to one of branches in `releaseBranches`.
        Returns:
        this
      • releaseFailureIssue

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder releaseFailureIssue​(Boolean releaseFailureIssue)
        Sets the value of ReleaseProjectOptions.getReleaseFailureIssue()
        Parameters:
        releaseFailureIssue - Create a github issue on every failed publishing task.
        Returns:
        this
      • releaseFailureIssueLabel

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder releaseFailureIssueLabel​(String releaseFailureIssueLabel)
        Sets the value of ReleaseProjectOptions.getReleaseFailureIssueLabel()
        Parameters:
        releaseFailureIssueLabel - The label to apply to issues indicating publish failures. Only applies if releaseFailureIssue is true.
        Returns:
        this
      • releaseSchedule

        @Stability(Deprecated)
        @Deprecated
        public SmithyApiGatewayTsProjectOptions.Builder releaseSchedule​(String releaseSchedule)
        Deprecated.
        Use `releaseTrigger: ReleaseTrigger.scheduled()` instead
        Sets the value of ReleaseProjectOptions.getReleaseSchedule()
        Parameters:
        releaseSchedule - CRON schedule to trigger new releases.
        Returns:
        this
      • releaseTagPrefix

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder releaseTagPrefix​(String releaseTagPrefix)
        Sets the value of ReleaseProjectOptions.getReleaseTagPrefix()
        Parameters:
        releaseTagPrefix - Automatically add the given prefix to release tags. Useful if you are releasing on multiple branches with overlapping version numbers. Note: this prefix is used to detect the latest tagged version when bumping, so if you change this on a project with an existing version history, you may need to manually tag your latest release with the new prefix.
        Returns:
        this
      • releaseTrigger

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder releaseTrigger​(io.github.cdklabs.projen.release.ReleaseTrigger releaseTrigger)
        Sets the value of ReleaseProjectOptions.getReleaseTrigger()
        Parameters:
        releaseTrigger - The release trigger to use.
        Returns:
        this
      • releaseWorkflowName

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder releaseWorkflowName​(String releaseWorkflowName)
        Sets the value of ReleaseProjectOptions.getReleaseWorkflowName()
        Parameters:
        releaseWorkflowName - The name of the default release workflow.
        Returns:
        this
      • releaseWorkflowSetupSteps

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder releaseWorkflowSetupSteps​(List<? extends io.github.cdklabs.projen.github.workflows.JobStep> releaseWorkflowSetupSteps)
        Sets the value of ReleaseProjectOptions.getReleaseWorkflowSetupSteps()
        Parameters:
        releaseWorkflowSetupSteps - A set of workflow steps to execute in order to setup the workflow container.
        Returns:
        this
      • versionrcOptions

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder versionrcOptions​(Map<String,​? extends Object> versionrcOptions)
        Sets the value of ReleaseProjectOptions.getVersionrcOptions()
        Parameters:
        versionrcOptions - Custom configuration used when creating changelog with standard-version package. Given values either append to default configuration or overwrite values in it.
        Returns:
        this
      • workflowContainerImage

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder workflowContainerImage​(String workflowContainerImage)
        Sets the value of ReleaseProjectOptions.getWorkflowContainerImage()
        Parameters:
        workflowContainerImage - Container image to use for GitHub workflows.
        Returns:
        this
      • workflowRunsOn

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder workflowRunsOn​(List<String> workflowRunsOn)
        Sets the value of ReleaseProjectOptions.getWorkflowRunsOn()
        Parameters:
        workflowRunsOn - Github Runner selection labels.
        Returns:
        this
      • serviceName

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder serviceName​(SmithyServiceName serviceName)
        Parameters:
        serviceName - The name of the Smithy service from your model which will be targeted for deployment and client generation. This parameter is required. On initial project synthesis this service name will be written to the sample "hello world" model. If you change this value after initial synthesis you will need to manually update your Smithy models to match, unless you delete the "model" directory. Likewise, if you change the namespace or service name in your Smithy models you will need to update this value to ensure your service can be found.
        Returns:
        this
      • gradleWrapperPath

        @Stability(Experimental)
        public SmithyApiGatewayTsProjectOptions.Builder gradleWrapperPath​(String gradleWrapperPath)
        Parameters:
        gradleWrapperPath - Path to a directory containing a custom gradle wrapper (gradlew) to use instead of the one provided by the PDK, relative to the project outdir. Use this if you would like to own and check in the gradle wrapper instead of using the provided one.
        Returns:
        this