{
  "author": {
    "email": "amin.fazl@mondo.com.au",
    "name": "Amin Fazl",
    "roles": [
      "author"
    ]
  },
  "bundled": {
    "semver": "^7.7.1"
  },
  "dependencies": {
    "constructs": "^10.4.2",
    "projen": "^0.91.20"
  },
  "dependencyClosure": {
    "constructs": {
      "targets": {
        "dotnet": {
          "namespace": "Constructs",
          "packageId": "Constructs"
        },
        "go": {
          "moduleName": "github.com/aws/constructs-go"
        },
        "java": {
          "maven": {
            "artifactId": "constructs",
            "groupId": "software.constructs"
          },
          "package": "software.constructs"
        },
        "js": {
          "npm": "constructs"
        },
        "python": {
          "distName": "constructs",
          "module": "constructs"
        }
      }
    },
    "projen": {
      "submodules": {
        "projen.awscdk": {},
        "projen.build": {},
        "projen.cdk": {},
        "projen.cdk8s": {},
        "projen.cdktf": {},
        "projen.circleci": {},
        "projen.github": {},
        "projen.github.workflows": {},
        "projen.gitlab": {},
        "projen.java": {},
        "projen.javascript": {},
        "projen.python": {},
        "projen.release": {},
        "projen.typescript": {},
        "projen.vscode": {},
        "projen.web": {}
      },
      "targets": {
        "go": {
          "moduleName": "github.com/projen/projen-go"
        },
        "java": {
          "maven": {
            "artifactId": "projen",
            "groupId": "io.github.cdklabs"
          },
          "package": "io.github.cdklabs.projen"
        },
        "js": {
          "npm": "projen"
        },
        "python": {
          "distName": "projen",
          "module": "projen"
        }
      }
    }
  },
  "description": "A projen project for Typescript AWS CDK App",
  "docs": {
    "stability": "stable"
  },
  "homepage": "https://github.com/AminFazlMondo/deployable-awscdk-app-ts.git",
  "jsiiVersion": "5.5.29 (build c0aeb00)",
  "keywords": [
    "AWS CDK",
    "Deployment",
    "Typescript",
    "projen"
  ],
  "license": "Apache-2.0",
  "metadata": {
    "jsii": {
      "pacmak": {
        "hasDefaultInterfaces": true
      }
    },
    "tscRootDir": "src"
  },
  "name": "deployable-awscdk-app-ts",
  "readme": {
    "markdown": "# Deployable Typescript AWS CDK App Projen Project\n\nInspired by [projen](https://github.com/projen/projen)\nThis is a projen project for typescript AWS CDK Applications deployed via github actions.\n\n## Getting started\n\nTo create a new project, run the following command and follow the instructions:\n\n### Typescript\n\n```console\n$ mkdir my-project\n$ cd my-project\n$ git init\n$ npx projen new --from deployable-awscdk-app-ts --projenrc-ts\n🤖 Synthesizing project...\n...\n```\n\nThis will initialize a projen project and will create `.projenrc.ts` file for capturing the project details and options. Below is an example of the contents in this file\n\n### Javascript\n\n```console\n$ mkdir my-project\n$ cd my-project\n$ git init\n$ npx projen new --from deployable-awscdk-app-ts\n🤖 Synthesizing project...\n...\n```\n\nThis will initialize a projen project and will create `.projenrc.js` file for capturing the project details and options. Below is an example of the contents in this file\n\n### Example\n```javascript\nconst { DeployableAwsCdkTypeScriptApp } = require('deployable-awscdk-app-ts');\n\nconst project = new DeployableAwsCdkTypeScriptApp({\n  name: 'my-test-app',\n  defaultReleaseBranch: 'main',\n  cdkVersion: '1.129.0',\n  workflowNodeVersion: '14.18.1',\n  deployOptions: {\n    environments: [\n      {\n        name: 'dev',\n        awsCredentials: {\n          accessKeyIdSecretName: 'dev-secret-1',\n          secretAccessKeySecretName: 'dev-secret-2',\n          region: 'dev-aws-region-1',\n        },\n      },\n      {\n        name: 'staging',\n        awsCredentials: {\n          accessKeyIdSecretName: 'staging-secret-1',\n          secretAccessKeySecretName: 'staging-secret-2',\n          region: 'staging-aws-region-1',\n        },\n      },\n    ]\n  }\n});\n\nproject.synth()\n```\n"
  },
  "repository": {
    "type": "git",
    "url": "https://github.com/AminFazlMondo/deployable-awscdk-app-ts.git"
  },
  "schema": "jsii/0.10.0",
  "submodules": {
    "deployable-awscdk-app-ts.utils": {
      "locationInModule": {
        "filename": "src/index.ts",
        "line": 9
      },
      "symbolId": "src/utils:"
    }
  },
  "targets": {
    "js": {
      "npm": "deployable-awscdk-app-ts"
    }
  },
  "types": {
    "deployable-awscdk-app-ts.AWSCredentials": {
      "assembly": "deployable-awscdk-app-ts",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "deployable-awscdk-app-ts.AWSCredentials",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/types.ts",
        "line": 100
      },
      "name": "AWSCredentials",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "example": "\"us-east-2\"",
            "stability": "stable",
            "summary": "Default AWS region for the account."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/types.ts",
            "line": 128
          },
          "name": "region",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "\"AWS_ACCESS_KEY_ID\"",
            "stability": "stable",
            "summary": "GitHub Secret name for AWS Access Key Id."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/types.ts",
            "line": 105
          },
          "name": "accessKeyIdSecretName",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "900",
            "stability": "stable",
            "summary": "Duration of assume role session."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/types.ts",
            "line": 122
          },
          "name": "assumeRoleDurationSeconds",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "ARN of AWS role to be assumed."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/types.ts",
            "line": 116
          },
          "name": "roleToAssume",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "\"AWS_SECRET_ACCESS_KEY\"",
            "stability": "stable",
            "summary": "GitHub Secret name for AWS Secret Access Key."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/types.ts",
            "line": 111
          },
          "name": "secretAccessKeySecretName",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        }
      ],
      "symbolId": "src/types:AWSCredentials"
    },
    "deployable-awscdk-app-ts.DeployOptions": {
      "assembly": "deployable-awscdk-app-ts",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "deployable-awscdk-app-ts.DeployOptions",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/types.ts",
        "line": 26
      },
      "name": "DeployOptions",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "Environment settings to deploy to."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/types.ts",
            "line": 30
          },
          "name": "environments",
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "deployable-awscdk-app-ts.EnvironmentOptions"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "undefined",
            "stability": "stable",
            "summary": "Name of the environment variable used to set the deploy environment name."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/types.ts",
            "line": 56
          },
          "name": "environmentVariableName",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "\"change-set\"",
            "remarks": "Direct is a bit faster but lacks progress information",
            "stability": "stable",
            "summary": "How to perform the deployment."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/types.ts",
            "line": 69
          },
          "name": "method",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "undefined",
            "remarks": "Does not support node versions above 18.\n\nif not provided will not set",
            "stability": "stable",
            "summary": "npm config name to set as the environment name This might be useful in deployment process."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/types.ts",
            "line": 49
          },
          "name": "npmConfigEnvironment",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "undefined",
            "remarks": "if not provided matches all of the stacks in the CDK App.",
            "stability": "stable",
            "summary": "Regex for stacks to be deployed."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/types.ts",
            "line": 38
          },
          "name": "stackPattern",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "undefined",
            "stability": "stable",
            "summary": "task name to run prior to installation in deploy job of workflow if not provided will not add to workflow."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/types.ts",
            "line": 63
          },
          "name": "taskToRunPreInstall",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        }
      ],
      "symbolId": "src/types:DeployOptions"
    },
    "deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp": {
      "assembly": "deployable-awscdk-app-ts",
      "base": "projen.awscdk.AwsCdkTypeScriptApp",
      "docs": {
        "stability": "stable"
      },
      "fqn": "deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp",
      "initializer": {
        "docs": {
          "stability": "stable"
        },
        "locationInModule": {
          "filename": "src/index.ts",
          "line": 25
        },
        "parameters": [
          {
            "name": "options",
            "type": {
              "fqn": "deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptAppOptions"
            }
          }
        ]
      },
      "kind": "class",
      "locationInModule": {
        "filename": "src/index.ts",
        "line": 11
      },
      "methods": [
        {
          "docs": {
            "stability": "stable",
            "summary": "Add new environments to the application."
          },
          "locationInModule": {
            "filename": "src/index.ts",
            "line": 89
          },
          "name": "addEnvironments",
          "parameters": [
            {
              "docs": {
                "summary": "list of environment options."
              },
              "name": "items",
              "type": {
                "fqn": "deployable-awscdk-app-ts.EnvironmentOptions"
              },
              "variadic": true
            }
          ],
          "variadic": true
        },
        {
          "docs": {
            "remarks": "1. Call \"this.preSynthesize()\"\n2. Delete all generated files\n3. Synthesize all subprojects\n4. Synthesize all components of this project\n5. Call \"postSynthesize()\" for all components of this project\n6. Call \"this.postSynthesize()\"",
            "stability": "stable",
            "summary": "Synthesize all project files into `outdir`."
          },
          "locationInModule": {
            "filename": "src/index.ts",
            "line": 73
          },
          "name": "synth",
          "overrides": "projen.Project"
        },
        {
          "docs": {
            "stability": "stable",
            "summary": "Updates the postDeployWorkflowScript for environments."
          },
          "locationInModule": {
            "filename": "src/index.ts",
            "line": 105
          },
          "name": "updatePostDeployWorkflowScriptToEnvironments",
          "parameters": [
            {
              "docs": {
                "summary": "the script to be added, for example \"post:deploy\"."
              },
              "name": "script",
              "type": {
                "primitive": "string"
              }
            },
            {
              "docs": {
                "summary": "the name of environments to add the scripts to, if not provided or empty will update all."
              },
              "name": "environmentNameFilter",
              "optional": true,
              "type": {
                "collection": {
                  "elementtype": {
                    "primitive": "string"
                  },
                  "kind": "array"
                }
              }
            }
          ]
        },
        {
          "docs": {
            "stability": "stable",
            "summary": "Updates the preDeployWorkflowScript for environments."
          },
          "locationInModule": {
            "filename": "src/index.ts",
            "line": 123
          },
          "name": "updatePreDeployWorkflowScriptToEnvironments",
          "parameters": [
            {
              "docs": {
                "summary": "the script to be added, for example \"pre:deploy\"."
              },
              "name": "script",
              "type": {
                "primitive": "string"
              }
            },
            {
              "docs": {
                "summary": "the name of environments to add the scripts to, if not provided or empty will update all."
              },
              "name": "environmentNameFilter",
              "optional": true,
              "type": {
                "collection": {
                  "elementtype": {
                    "primitive": "string"
                  },
                  "kind": "array"
                }
              }
            }
          ]
        }
      ],
      "name": "DeployableAwsCdkTypeScriptApp",
      "properties": [
        {
          "docs": {
            "stability": "stable",
            "summary": "Task to deploy your app."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/index.ts",
            "line": 16
          },
          "name": "deployWorkflowTask",
          "type": {
            "fqn": "projen.Task"
          }
        },
        {
          "docs": {
            "default": "16",
            "stability": "stable",
            "summary": "return the major node version set for the project."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/index.ts",
            "line": 65
          },
          "name": "majorNodeVersion",
          "type": {
            "primitive": "number"
          }
        },
        {
          "docs": {
            "stability": "stable"
          },
          "locationInModule": {
            "filename": "src/index.ts",
            "line": 22
          },
          "name": "deployOptions",
          "protected": true,
          "type": {
            "fqn": "deployable-awscdk-app-ts.DeployOptions"
          }
        }
      ],
      "symbolId": "src/index:DeployableAwsCdkTypeScriptApp"
    },
    "deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptAppOptions": {
      "assembly": "deployable-awscdk-app-ts",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptAppOptions",
      "interfaces": [
        "projen.awscdk.AwsCdkTypeScriptAppOptions"
      ],
      "kind": "interface",
      "locationInModule": {
        "filename": "src/types.ts",
        "line": 3
      },
      "name": "DeployableAwsCdkTypeScriptAppOptions",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "default": "false",
            "stability": "stable",
            "summary": "Whether to check and skip the deployment for environments that have active deployment of the same commit."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/types.ts",
            "line": 21
          },
          "name": "checkActiveDeployment",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "\"config with empty list of environments\"",
            "stability": "stable",
            "summary": "Deployment options."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/types.ts",
            "line": 8
          },
          "name": "deployOptions",
          "optional": true,
          "type": {
            "fqn": "deployable-awscdk-app-ts.DeployOptions"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "true",
            "stability": "stable",
            "summary": "Whether to generate nvmrc file for the node version of the project if set to true, and no \"workflowNodeVersion\" is specified will use version 14.18.1."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/types.ts",
            "line": 15
          },
          "name": "generateNvmrc",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        }
      ],
      "symbolId": "src/types:DeployableAwsCdkTypeScriptAppOptions"
    },
    "deployable-awscdk-app-ts.EnvironmentOptions": {
      "assembly": "deployable-awscdk-app-ts",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "deployable-awscdk-app-ts.EnvironmentOptions",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/types.ts",
        "line": 72
      },
      "name": "EnvironmentOptions",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "AWS credential details for deployment."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/types.ts",
            "line": 81
          },
          "name": "awsCredentials",
          "type": {
            "fqn": "deployable-awscdk-app-ts.AWSCredentials"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "Environment name to deploy to."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/types.ts",
            "line": 76
          },
          "name": "name",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "example": "\"post:deploy\"",
            "stability": "stable",
            "summary": "The script/task to run after deployment of the environment in the workflow If not present, the workflow will not execute that."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/types.ts",
            "line": 89
          },
          "name": "postDeployWorkflowScript",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "example": "\"pre:deploy\"",
            "stability": "stable",
            "summary": "The script/task to run before deployment of the environment in the workflow If not present, the workflow will not execute that."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/types.ts",
            "line": 97
          },
          "name": "preDeployWorkflowScript",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        }
      ],
      "symbolId": "src/types:EnvironmentOptions"
    }
  },
  "version": "0.1.580",
  "fingerprint": "1ClNCW44IAdFo46+5bC2y6FOU1tEvUCMUKxjHnZ5p9w="
}