{
  "author": {
    "email": "amir@cloudsnorkel.com",
    "name": "Amir Szekely",
    "roles": [
      "author"
    ]
  },
  "dependencies": {
    "aws-cdk-lib": "^2.155.0",
    "constructs": "^10.0.5"
  },
  "dependencyClosure": {
    "@aws-cdk/asset-awscli-v1": {
      "targets": {
        "dotnet": {
          "namespace": "Amazon.CDK.Asset.AwsCliV1",
          "packageId": "Amazon.CDK.Asset.AwsCliV1"
        },
        "go": {
          "moduleName": "github.com/cdklabs/awscdk-asset-awscli-go",
          "packageName": "awscliv1"
        },
        "java": {
          "maven": {
            "artifactId": "cdk-asset-awscli-v1",
            "groupId": "software.amazon.awscdk"
          },
          "package": "software.amazon.awscdk.cdk.asset.awscli.v1"
        },
        "js": {
          "npm": "@aws-cdk/asset-awscli-v1"
        },
        "python": {
          "distName": "aws-cdk.asset-awscli-v1",
          "module": "aws_cdk.asset_awscli_v1"
        }
      }
    },
    "@aws-cdk/asset-kubectl-v20": {
      "targets": {
        "dotnet": {
          "namespace": "Amazon.CDK.Asset.KubectlV20",
          "packageId": "Amazon.CDK.Asset.KubectlV20"
        },
        "go": {
          "moduleName": "github.com/cdklabs/awscdk-asset-kubectl-go",
          "packageName": "kubectlv20"
        },
        "java": {
          "maven": {
            "artifactId": "cdk-asset-kubectl-v20",
            "groupId": "software.amazon.awscdk"
          },
          "package": "software.amazon.awscdk.cdk.asset.kubectl.v20"
        },
        "js": {
          "npm": "@aws-cdk/asset-kubectl-v20"
        },
        "python": {
          "distName": "aws-cdk.asset-kubectl-v20",
          "module": "aws_cdk.asset_kubectl_v20"
        }
      }
    },
    "@aws-cdk/asset-node-proxy-agent-v6": {
      "targets": {
        "dotnet": {
          "namespace": "Amazon.CDK.Asset.NodeProxyAgentV6",
          "packageId": "Amazon.CDK.Asset.NodeProxyAgentV6"
        },
        "go": {
          "moduleName": "github.com/cdklabs/awscdk-asset-node-proxy-agent-go",
          "packageName": "nodeproxyagentv6"
        },
        "java": {
          "maven": {
            "artifactId": "cdk-asset-node-proxy-agent-v6",
            "groupId": "software.amazon.awscdk"
          },
          "package": "software.amazon.awscdk.cdk.asset.node.proxy.agent.v6"
        },
        "js": {
          "npm": "@aws-cdk/asset-node-proxy-agent-v6"
        },
        "python": {
          "distName": "aws-cdk.asset-node-proxy-agent-v6",
          "module": "aws_cdk.asset_node_proxy_agent_v6"
        }
      }
    },
    "@aws-cdk/cloud-assembly-schema": {
      "targets": {
        "dotnet": {
          "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/main/logo/default-256-dark.png",
          "namespace": "Amazon.CDK.CloudAssembly.Schema",
          "packageId": "Amazon.CDK.CloudAssembly.Schema"
        },
        "go": {
          "moduleName": "github.com/cdklabs/cloud-assembly-schema-go"
        },
        "java": {
          "maven": {
            "artifactId": "cdk-cloud-assembly-schema",
            "groupId": "software.amazon.awscdk"
          },
          "package": "software.amazon.awscdk.cloudassembly.schema"
        },
        "js": {
          "npm": "@aws-cdk/cloud-assembly-schema"
        },
        "python": {
          "classifiers": [
            "Framework :: AWS CDK",
            "Framework :: AWS CDK :: 2"
          ],
          "distName": "aws-cdk.cloud-assembly-schema",
          "module": "aws_cdk.cloud_assembly_schema"
        }
      }
    },
    "aws-cdk-lib": {
      "submodules": {
        "aws-cdk-lib.alexa_ask": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.Alexa.Ask"
            },
            "java": {
              "package": "software.amazon.awscdk.alexa.ask"
            },
            "python": {
              "module": "aws_cdk.alexa_ask"
            }
          }
        },
        "aws-cdk-lib.assertions": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.Assertions"
            },
            "java": {
              "package": "software.amazon.awscdk.assertions"
            },
            "python": {
              "module": "aws_cdk.assertions"
            }
          }
        },
        "aws-cdk-lib.assets": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.Assets"
            },
            "java": {
              "package": "software.amazon.awscdk.assets"
            },
            "python": {
              "module": "aws_cdk.assets"
            }
          }
        },
        "aws-cdk-lib.aws_accessanalyzer": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.AccessAnalyzer"
            },
            "java": {
              "package": "software.amazon.awscdk.services.accessanalyzer"
            },
            "python": {
              "module": "aws_cdk.aws_accessanalyzer"
            }
          }
        },
        "aws-cdk-lib.aws_acmpca": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ACMPCA"
            },
            "java": {
              "package": "software.amazon.awscdk.services.acmpca"
            },
            "python": {
              "module": "aws_cdk.aws_acmpca"
            }
          }
        },
        "aws-cdk-lib.aws_amazonmq": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.AmazonMQ"
            },
            "java": {
              "package": "software.amazon.awscdk.services.amazonmq"
            },
            "python": {
              "module": "aws_cdk.aws_amazonmq"
            }
          }
        },
        "aws-cdk-lib.aws_amplify": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Amplify"
            },
            "java": {
              "package": "software.amazon.awscdk.services.amplify"
            },
            "python": {
              "module": "aws_cdk.aws_amplify"
            }
          }
        },
        "aws-cdk-lib.aws_amplifyuibuilder": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.AmplifyUIBuilder"
            },
            "java": {
              "package": "software.amazon.awscdk.services.amplifyuibuilder"
            },
            "python": {
              "module": "aws_cdk.aws_amplifyuibuilder"
            }
          }
        },
        "aws-cdk-lib.aws_apigateway": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.APIGateway"
            },
            "java": {
              "package": "software.amazon.awscdk.services.apigateway"
            },
            "python": {
              "module": "aws_cdk.aws_apigateway"
            }
          }
        },
        "aws-cdk-lib.aws_apigatewayv2": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Apigatewayv2"
            },
            "java": {
              "package": "software.amazon.awscdk.services.apigatewayv2"
            },
            "python": {
              "module": "aws_cdk.aws_apigatewayv2"
            }
          }
        },
        "aws-cdk-lib.aws_apigatewayv2_authorizers": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AwsApigatewayv2Authorizers"
            },
            "java": {
              "package": "software.amazon.awscdk.aws_apigatewayv2_authorizers"
            },
            "python": {
              "module": "aws_cdk.aws_apigatewayv2_authorizers"
            }
          }
        },
        "aws-cdk-lib.aws_apigatewayv2_integrations": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AwsApigatewayv2Integrations"
            },
            "java": {
              "package": "software.amazon.awscdk.aws_apigatewayv2_integrations"
            },
            "python": {
              "module": "aws_cdk.aws_apigatewayv2_integrations"
            }
          }
        },
        "aws-cdk-lib.aws_appconfig": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.AppConfig"
            },
            "java": {
              "package": "software.amazon.awscdk.services.appconfig"
            },
            "python": {
              "module": "aws_cdk.aws_appconfig"
            }
          }
        },
        "aws-cdk-lib.aws_appflow": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.AppFlow"
            },
            "java": {
              "package": "software.amazon.awscdk.services.appflow"
            },
            "python": {
              "module": "aws_cdk.aws_appflow"
            }
          }
        },
        "aws-cdk-lib.aws_appintegrations": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.AppIntegrations"
            },
            "java": {
              "package": "software.amazon.awscdk.services.appintegrations"
            },
            "python": {
              "module": "aws_cdk.aws_appintegrations"
            }
          }
        },
        "aws-cdk-lib.aws_applicationautoscaling": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ApplicationAutoScaling"
            },
            "java": {
              "package": "software.amazon.awscdk.services.applicationautoscaling"
            },
            "python": {
              "module": "aws_cdk.aws_applicationautoscaling"
            }
          }
        },
        "aws-cdk-lib.aws_applicationinsights": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ApplicationInsights"
            },
            "java": {
              "package": "software.amazon.awscdk.services.applicationinsights"
            },
            "python": {
              "module": "aws_cdk.aws_applicationinsights"
            }
          }
        },
        "aws-cdk-lib.aws_applicationsignals": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.ApplicationSignals"
            },
            "java": {
              "package": "software.amazon.awscdk.services.applicationsignals"
            },
            "python": {
              "module": "aws_cdk.aws_applicationsignals"
            }
          }
        },
        "aws-cdk-lib.aws_appmesh": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.AppMesh"
            },
            "java": {
              "package": "software.amazon.awscdk.services.appmesh"
            },
            "python": {
              "module": "aws_cdk.aws_appmesh"
            }
          }
        },
        "aws-cdk-lib.aws_apprunner": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.AppRunner"
            },
            "java": {
              "package": "software.amazon.awscdk.services.apprunner"
            },
            "python": {
              "module": "aws_cdk.aws_apprunner"
            }
          }
        },
        "aws-cdk-lib.aws_appstream": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.AppStream"
            },
            "java": {
              "package": "software.amazon.awscdk.services.appstream"
            },
            "python": {
              "module": "aws_cdk.aws_appstream"
            }
          }
        },
        "aws-cdk-lib.aws_appsync": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.AppSync"
            },
            "java": {
              "package": "software.amazon.awscdk.services.appsync"
            },
            "python": {
              "module": "aws_cdk.aws_appsync"
            }
          }
        },
        "aws-cdk-lib.aws_apptest": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.AppTest"
            },
            "java": {
              "package": "software.amazon.awscdk.services.apptest"
            },
            "python": {
              "module": "aws_cdk.aws_apptest"
            }
          }
        },
        "aws-cdk-lib.aws_aps": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.APS"
            },
            "java": {
              "package": "software.amazon.awscdk.services.aps"
            },
            "python": {
              "module": "aws_cdk.aws_aps"
            }
          }
        },
        "aws-cdk-lib.aws_arczonalshift": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.ARCZonalShift"
            },
            "java": {
              "package": "software.amazon.awscdk.services.arczonalshift"
            },
            "python": {
              "module": "aws_cdk.aws_arczonalshift"
            }
          }
        },
        "aws-cdk-lib.aws_athena": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Athena"
            },
            "java": {
              "package": "software.amazon.awscdk.services.athena"
            },
            "python": {
              "module": "aws_cdk.aws_athena"
            }
          }
        },
        "aws-cdk-lib.aws_auditmanager": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.AuditManager"
            },
            "java": {
              "package": "software.amazon.awscdk.services.auditmanager"
            },
            "python": {
              "module": "aws_cdk.aws_auditmanager"
            }
          }
        },
        "aws-cdk-lib.aws_autoscaling": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.AutoScaling"
            },
            "java": {
              "package": "software.amazon.awscdk.services.autoscaling"
            },
            "python": {
              "module": "aws_cdk.aws_autoscaling"
            }
          }
        },
        "aws-cdk-lib.aws_autoscaling_common": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.AutoScaling.Common"
            },
            "java": {
              "package": "software.amazon.awscdk.services.autoscaling.common"
            },
            "python": {
              "module": "aws_cdk.aws_autoscaling_common"
            }
          }
        },
        "aws-cdk-lib.aws_autoscaling_hooktargets": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.AutoScaling.HookTargets"
            },
            "java": {
              "package": "software.amazon.awscdk.services.autoscaling.hooktargets"
            },
            "python": {
              "module": "aws_cdk.aws_autoscaling_hooktargets"
            }
          }
        },
        "aws-cdk-lib.aws_autoscalingplans": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.AutoScalingPlans"
            },
            "java": {
              "package": "software.amazon.awscdk.services.autoscalingplans"
            },
            "python": {
              "module": "aws_cdk.aws_autoscalingplans"
            }
          }
        },
        "aws-cdk-lib.aws_b2bi": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.B2BI"
            },
            "java": {
              "package": "software.amazon.awscdk.services.b2bi"
            },
            "python": {
              "module": "aws_cdk.aws_b2bi"
            }
          }
        },
        "aws-cdk-lib.aws_backup": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Backup"
            },
            "java": {
              "package": "software.amazon.awscdk.services.backup"
            },
            "python": {
              "module": "aws_cdk.aws_backup"
            }
          }
        },
        "aws-cdk-lib.aws_backupgateway": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.BackupGateway"
            },
            "java": {
              "package": "software.amazon.awscdk.services.backupgateway"
            },
            "python": {
              "module": "aws_cdk.aws_backupgateway"
            }
          }
        },
        "aws-cdk-lib.aws_batch": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Batch"
            },
            "java": {
              "package": "software.amazon.awscdk.services.batch"
            },
            "python": {
              "module": "aws_cdk.aws_batch"
            }
          }
        },
        "aws-cdk-lib.aws_bcmdataexports": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.BCMDataExports"
            },
            "java": {
              "package": "software.amazon.awscdk.services.bcmdataexports"
            },
            "python": {
              "module": "aws_cdk.aws_bcmdataexports"
            }
          }
        },
        "aws-cdk-lib.aws_bedrock": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.Bedrock"
            },
            "java": {
              "package": "software.amazon.awscdk.services.bedrock"
            },
            "python": {
              "module": "aws_cdk.aws_bedrock"
            }
          }
        },
        "aws-cdk-lib.aws_billingconductor": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.BillingConductor"
            },
            "java": {
              "package": "software.amazon.awscdk.services.billingconductor"
            },
            "python": {
              "module": "aws_cdk.aws_billingconductor"
            }
          }
        },
        "aws-cdk-lib.aws_budgets": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Budgets"
            },
            "java": {
              "package": "software.amazon.awscdk.services.budgets"
            },
            "python": {
              "module": "aws_cdk.aws_budgets"
            }
          }
        },
        "aws-cdk-lib.aws_cassandra": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Cassandra"
            },
            "java": {
              "package": "software.amazon.awscdk.services.cassandra"
            },
            "python": {
              "module": "aws_cdk.aws_cassandra"
            }
          }
        },
        "aws-cdk-lib.aws_ce": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CE"
            },
            "java": {
              "package": "software.amazon.awscdk.services.ce"
            },
            "python": {
              "module": "aws_cdk.aws_ce"
            }
          }
        },
        "aws-cdk-lib.aws_certificatemanager": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CertificateManager"
            },
            "java": {
              "package": "software.amazon.awscdk.services.certificatemanager"
            },
            "python": {
              "module": "aws_cdk.aws_certificatemanager"
            }
          }
        },
        "aws-cdk-lib.aws_chatbot": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Chatbot"
            },
            "java": {
              "package": "software.amazon.awscdk.services.chatbot"
            },
            "python": {
              "module": "aws_cdk.aws_chatbot"
            }
          }
        },
        "aws-cdk-lib.aws_cleanrooms": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.CleanRooms"
            },
            "java": {
              "package": "software.amazon.awscdk.services.cleanrooms"
            },
            "python": {
              "module": "aws_cdk.aws_cleanrooms"
            }
          }
        },
        "aws-cdk-lib.aws_cleanroomsml": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.CleanRoomsML"
            },
            "java": {
              "package": "software.amazon.awscdk.services.cleanroomsml"
            },
            "python": {
              "module": "aws_cdk.aws_cleanroomsml"
            }
          }
        },
        "aws-cdk-lib.aws_cloud9": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Cloud9"
            },
            "java": {
              "package": "software.amazon.awscdk.services.cloud9"
            },
            "python": {
              "module": "aws_cdk.aws_cloud9"
            }
          }
        },
        "aws-cdk-lib.aws_cloudformation": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CloudFormation"
            },
            "java": {
              "package": "software.amazon.awscdk.services.cloudformation"
            },
            "python": {
              "module": "aws_cdk.aws_cloudformation"
            }
          }
        },
        "aws-cdk-lib.aws_cloudfront": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CloudFront"
            },
            "java": {
              "package": "software.amazon.awscdk.services.cloudfront"
            },
            "python": {
              "module": "aws_cdk.aws_cloudfront"
            }
          }
        },
        "aws-cdk-lib.aws_cloudfront.experimental": {},
        "aws-cdk-lib.aws_cloudfront_origins": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CloudFront.Origins"
            },
            "java": {
              "package": "software.amazon.awscdk.services.cloudfront.origins"
            },
            "python": {
              "module": "aws_cdk.aws_cloudfront_origins"
            }
          }
        },
        "aws-cdk-lib.aws_cloudtrail": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CloudTrail"
            },
            "java": {
              "package": "software.amazon.awscdk.services.cloudtrail"
            },
            "python": {
              "module": "aws_cdk.aws_cloudtrail"
            }
          }
        },
        "aws-cdk-lib.aws_cloudwatch": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CloudWatch"
            },
            "java": {
              "package": "software.amazon.awscdk.services.cloudwatch"
            },
            "python": {
              "module": "aws_cdk.aws_cloudwatch"
            }
          }
        },
        "aws-cdk-lib.aws_cloudwatch_actions": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CloudWatch.Actions"
            },
            "java": {
              "package": "software.amazon.awscdk.services.cloudwatch.actions"
            },
            "python": {
              "module": "aws_cdk.aws_cloudwatch_actions"
            }
          }
        },
        "aws-cdk-lib.aws_codeartifact": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CodeArtifact"
            },
            "java": {
              "package": "software.amazon.awscdk.services.codeartifact"
            },
            "python": {
              "module": "aws_cdk.aws_codeartifact"
            }
          }
        },
        "aws-cdk-lib.aws_codebuild": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CodeBuild"
            },
            "java": {
              "package": "software.amazon.awscdk.services.codebuild"
            },
            "python": {
              "module": "aws_cdk.aws_codebuild"
            }
          }
        },
        "aws-cdk-lib.aws_codecommit": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CodeCommit"
            },
            "java": {
              "package": "software.amazon.awscdk.services.codecommit"
            },
            "python": {
              "module": "aws_cdk.aws_codecommit"
            }
          }
        },
        "aws-cdk-lib.aws_codeconnections": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.CodeConnections"
            },
            "java": {
              "package": "software.amazon.awscdk.services.codeconnections"
            },
            "python": {
              "module": "aws_cdk.aws_codeconnections"
            }
          }
        },
        "aws-cdk-lib.aws_codedeploy": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CodeDeploy"
            },
            "java": {
              "package": "software.amazon.awscdk.services.codedeploy"
            },
            "python": {
              "module": "aws_cdk.aws_codedeploy"
            }
          }
        },
        "aws-cdk-lib.aws_codeguruprofiler": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CodeGuruProfiler"
            },
            "java": {
              "package": "software.amazon.awscdk.services.codeguruprofiler"
            },
            "python": {
              "module": "aws_cdk.aws_codeguruprofiler"
            }
          }
        },
        "aws-cdk-lib.aws_codegurureviewer": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CodeGuruReviewer"
            },
            "java": {
              "package": "software.amazon.awscdk.services.codegurureviewer"
            },
            "python": {
              "module": "aws_cdk.aws_codegurureviewer"
            }
          }
        },
        "aws-cdk-lib.aws_codepipeline": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CodePipeline"
            },
            "java": {
              "package": "software.amazon.awscdk.services.codepipeline"
            },
            "python": {
              "module": "aws_cdk.aws_codepipeline"
            }
          }
        },
        "aws-cdk-lib.aws_codepipeline_actions": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CodePipeline.Actions"
            },
            "java": {
              "package": "software.amazon.awscdk.services.codepipeline.actions"
            },
            "python": {
              "module": "aws_cdk.aws_codepipeline_actions"
            }
          }
        },
        "aws-cdk-lib.aws_codestar": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Codestar"
            },
            "java": {
              "package": "software.amazon.awscdk.services.codestar"
            },
            "python": {
              "module": "aws_cdk.aws_codestar"
            }
          }
        },
        "aws-cdk-lib.aws_codestarconnections": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CodeStarConnections"
            },
            "java": {
              "package": "software.amazon.awscdk.services.codestarconnections"
            },
            "python": {
              "module": "aws_cdk.aws_codestarconnections"
            }
          }
        },
        "aws-cdk-lib.aws_codestarnotifications": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CodeStarNotifications"
            },
            "java": {
              "package": "software.amazon.awscdk.services.codestarnotifications"
            },
            "python": {
              "module": "aws_cdk.aws_codestarnotifications"
            }
          }
        },
        "aws-cdk-lib.aws_cognito": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Cognito"
            },
            "java": {
              "package": "software.amazon.awscdk.services.cognito"
            },
            "python": {
              "module": "aws_cdk.aws_cognito"
            }
          }
        },
        "aws-cdk-lib.aws_comprehend": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Comprehend"
            },
            "java": {
              "package": "software.amazon.awscdk.services.comprehend"
            },
            "python": {
              "module": "aws_cdk.aws_comprehend"
            }
          }
        },
        "aws-cdk-lib.aws_config": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Config"
            },
            "java": {
              "package": "software.amazon.awscdk.services.config"
            },
            "python": {
              "module": "aws_cdk.aws_config"
            }
          }
        },
        "aws-cdk-lib.aws_connect": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Connect"
            },
            "java": {
              "package": "software.amazon.awscdk.services.connect"
            },
            "python": {
              "module": "aws_cdk.aws_connect"
            }
          }
        },
        "aws-cdk-lib.aws_connectcampaigns": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ConnectCampaigns"
            },
            "java": {
              "package": "software.amazon.awscdk.services.connectcampaigns"
            },
            "python": {
              "module": "aws_cdk.aws_connectcampaigns"
            }
          }
        },
        "aws-cdk-lib.aws_controltower": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ControlTower"
            },
            "java": {
              "package": "software.amazon.awscdk.services.controltower"
            },
            "python": {
              "module": "aws_cdk.aws_controltower"
            }
          }
        },
        "aws-cdk-lib.aws_cur": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CUR"
            },
            "java": {
              "package": "software.amazon.awscdk.services.cur"
            },
            "python": {
              "module": "aws_cdk.aws_cur"
            }
          }
        },
        "aws-cdk-lib.aws_customerprofiles": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CustomerProfiles"
            },
            "java": {
              "package": "software.amazon.awscdk.services.customerprofiles"
            },
            "python": {
              "module": "aws_cdk.aws_customerprofiles"
            }
          }
        },
        "aws-cdk-lib.aws_databrew": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.DataBrew"
            },
            "java": {
              "package": "software.amazon.awscdk.services.databrew"
            },
            "python": {
              "module": "aws_cdk.aws_databrew"
            }
          }
        },
        "aws-cdk-lib.aws_datapipeline": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.DataPipeline"
            },
            "java": {
              "package": "software.amazon.awscdk.services.datapipeline"
            },
            "python": {
              "module": "aws_cdk.aws_datapipeline"
            }
          }
        },
        "aws-cdk-lib.aws_datasync": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.DataSync"
            },
            "java": {
              "package": "software.amazon.awscdk.services.datasync"
            },
            "python": {
              "module": "aws_cdk.aws_datasync"
            }
          }
        },
        "aws-cdk-lib.aws_datazone": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.DataZone"
            },
            "java": {
              "package": "software.amazon.awscdk.services.datazone"
            },
            "python": {
              "module": "aws_cdk.aws_datazone"
            }
          }
        },
        "aws-cdk-lib.aws_dax": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.DAX"
            },
            "java": {
              "package": "software.amazon.awscdk.services.dax"
            },
            "python": {
              "module": "aws_cdk.aws_dax"
            }
          }
        },
        "aws-cdk-lib.aws_deadline": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.Deadline"
            },
            "java": {
              "package": "software.amazon.awscdk.services.deadline"
            },
            "python": {
              "module": "aws_cdk.aws_deadline"
            }
          }
        },
        "aws-cdk-lib.aws_detective": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Detective"
            },
            "java": {
              "package": "software.amazon.awscdk.services.detective"
            },
            "python": {
              "module": "aws_cdk.aws_detective"
            }
          }
        },
        "aws-cdk-lib.aws_devicefarm": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.DeviceFarm"
            },
            "java": {
              "package": "software.amazon.awscdk.services.devicefarm"
            },
            "python": {
              "module": "aws_cdk.aws_devicefarm"
            }
          }
        },
        "aws-cdk-lib.aws_devopsguru": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.DevOpsGuru"
            },
            "java": {
              "package": "software.amazon.awscdk.services.devopsguru"
            },
            "python": {
              "module": "aws_cdk.aws_devopsguru"
            }
          }
        },
        "aws-cdk-lib.aws_directoryservice": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.DirectoryService"
            },
            "java": {
              "package": "software.amazon.awscdk.services.directoryservice"
            },
            "python": {
              "module": "aws_cdk.aws_directoryservice"
            }
          }
        },
        "aws-cdk-lib.aws_dlm": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.DLM"
            },
            "java": {
              "package": "software.amazon.awscdk.services.dlm"
            },
            "python": {
              "module": "aws_cdk.aws_dlm"
            }
          }
        },
        "aws-cdk-lib.aws_dms": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.DMS"
            },
            "java": {
              "package": "software.amazon.awscdk.services.dms"
            },
            "python": {
              "module": "aws_cdk.aws_dms"
            }
          }
        },
        "aws-cdk-lib.aws_docdb": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.DocDB"
            },
            "java": {
              "package": "software.amazon.awscdk.services.docdb"
            },
            "python": {
              "module": "aws_cdk.aws_docdb"
            }
          }
        },
        "aws-cdk-lib.aws_docdbelastic": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.DocDBElastic"
            },
            "java": {
              "package": "software.amazon.awscdk.services.docdbelastic"
            },
            "python": {
              "module": "aws_cdk.aws_docdbelastic"
            }
          }
        },
        "aws-cdk-lib.aws_dynamodb": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.DynamoDB"
            },
            "java": {
              "package": "software.amazon.awscdk.services.dynamodb"
            },
            "python": {
              "module": "aws_cdk.aws_dynamodb"
            }
          }
        },
        "aws-cdk-lib.aws_ec2": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.EC2"
            },
            "java": {
              "package": "software.amazon.awscdk.services.ec2"
            },
            "python": {
              "module": "aws_cdk.aws_ec2"
            }
          }
        },
        "aws-cdk-lib.aws_ecr": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ECR"
            },
            "java": {
              "package": "software.amazon.awscdk.services.ecr"
            },
            "python": {
              "module": "aws_cdk.aws_ecr"
            }
          }
        },
        "aws-cdk-lib.aws_ecr_assets": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Ecr.Assets"
            },
            "java": {
              "package": "software.amazon.awscdk.services.ecr.assets"
            },
            "python": {
              "module": "aws_cdk.aws_ecr_assets"
            }
          }
        },
        "aws-cdk-lib.aws_ecs": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ECS"
            },
            "java": {
              "package": "software.amazon.awscdk.services.ecs"
            },
            "python": {
              "module": "aws_cdk.aws_ecs"
            }
          }
        },
        "aws-cdk-lib.aws_ecs_patterns": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ECS.Patterns"
            },
            "java": {
              "package": "software.amazon.awscdk.services.ecs.patterns"
            },
            "python": {
              "module": "aws_cdk.aws_ecs_patterns"
            }
          }
        },
        "aws-cdk-lib.aws_efs": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.EFS"
            },
            "java": {
              "package": "software.amazon.awscdk.services.efs"
            },
            "python": {
              "module": "aws_cdk.aws_efs"
            }
          }
        },
        "aws-cdk-lib.aws_eks": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.EKS"
            },
            "java": {
              "package": "software.amazon.awscdk.services.eks"
            },
            "python": {
              "module": "aws_cdk.aws_eks"
            }
          }
        },
        "aws-cdk-lib.aws_elasticache": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ElastiCache"
            },
            "java": {
              "package": "software.amazon.awscdk.services.elasticache"
            },
            "python": {
              "module": "aws_cdk.aws_elasticache"
            }
          }
        },
        "aws-cdk-lib.aws_elasticbeanstalk": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ElasticBeanstalk"
            },
            "java": {
              "package": "software.amazon.awscdk.services.elasticbeanstalk"
            },
            "python": {
              "module": "aws_cdk.aws_elasticbeanstalk"
            }
          }
        },
        "aws-cdk-lib.aws_elasticloadbalancing": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ElasticLoadBalancing"
            },
            "java": {
              "package": "software.amazon.awscdk.services.elasticloadbalancing"
            },
            "python": {
              "module": "aws_cdk.aws_elasticloadbalancing"
            }
          }
        },
        "aws-cdk-lib.aws_elasticloadbalancingv2": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ElasticLoadBalancingV2"
            },
            "java": {
              "package": "software.amazon.awscdk.services.elasticloadbalancingv2"
            },
            "python": {
              "module": "aws_cdk.aws_elasticloadbalancingv2"
            }
          }
        },
        "aws-cdk-lib.aws_elasticloadbalancingv2_actions": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ElasticLoadBalancingV2.Actions"
            },
            "java": {
              "package": "software.amazon.awscdk.services.elasticloadbalancingv2.actions"
            },
            "python": {
              "module": "aws_cdk.aws_elasticloadbalancingv2_actions"
            }
          }
        },
        "aws-cdk-lib.aws_elasticloadbalancingv2_targets": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ElasticLoadBalancingV2.Targets"
            },
            "java": {
              "package": "software.amazon.awscdk.services.elasticloadbalancingv2.targets"
            },
            "python": {
              "module": "aws_cdk.aws_elasticloadbalancingv2_targets"
            }
          }
        },
        "aws-cdk-lib.aws_elasticsearch": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Elasticsearch"
            },
            "java": {
              "package": "software.amazon.awscdk.services.elasticsearch"
            },
            "python": {
              "module": "aws_cdk.aws_elasticsearch"
            }
          }
        },
        "aws-cdk-lib.aws_emr": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.EMR"
            },
            "java": {
              "package": "software.amazon.awscdk.services.emr"
            },
            "python": {
              "module": "aws_cdk.aws_emr"
            }
          }
        },
        "aws-cdk-lib.aws_emrcontainers": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.EMRContainers"
            },
            "java": {
              "package": "software.amazon.awscdk.services.emrcontainers"
            },
            "python": {
              "module": "aws_cdk.aws_emrcontainers"
            }
          }
        },
        "aws-cdk-lib.aws_emrserverless": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.EMRServerless"
            },
            "java": {
              "package": "software.amazon.awscdk.services.emrserverless"
            },
            "python": {
              "module": "aws_cdk.aws_emrserverless"
            }
          }
        },
        "aws-cdk-lib.aws_entityresolution": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.EntityResolution"
            },
            "java": {
              "package": "software.amazon.awscdk.services.entityresolution"
            },
            "python": {
              "module": "aws_cdk.aws_entityresolution"
            }
          }
        },
        "aws-cdk-lib.aws_events": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Events"
            },
            "java": {
              "package": "software.amazon.awscdk.services.events"
            },
            "python": {
              "module": "aws_cdk.aws_events"
            }
          }
        },
        "aws-cdk-lib.aws_events_targets": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Events.Targets"
            },
            "java": {
              "package": "software.amazon.awscdk.services.events.targets"
            },
            "python": {
              "module": "aws_cdk.aws_events_targets"
            }
          }
        },
        "aws-cdk-lib.aws_eventschemas": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.EventSchemas"
            },
            "java": {
              "package": "software.amazon.awscdk.services.eventschemas"
            },
            "python": {
              "module": "aws_cdk.aws_eventschemas"
            }
          }
        },
        "aws-cdk-lib.aws_evidently": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Evidently"
            },
            "java": {
              "package": "software.amazon.awscdk.services.evidently"
            },
            "python": {
              "module": "aws_cdk.aws_evidently"
            }
          }
        },
        "aws-cdk-lib.aws_finspace": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.FinSpace"
            },
            "java": {
              "package": "software.amazon.awscdk.services.finspace"
            },
            "python": {
              "module": "aws_cdk.aws_finspace"
            }
          }
        },
        "aws-cdk-lib.aws_fis": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.FIS"
            },
            "java": {
              "package": "software.amazon.awscdk.services.fis"
            },
            "python": {
              "module": "aws_cdk.aws_fis"
            }
          }
        },
        "aws-cdk-lib.aws_fms": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.FMS"
            },
            "java": {
              "package": "software.amazon.awscdk.services.fms"
            },
            "python": {
              "module": "aws_cdk.aws_fms"
            }
          }
        },
        "aws-cdk-lib.aws_forecast": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Forecast"
            },
            "java": {
              "package": "software.amazon.awscdk.services.forecast"
            },
            "python": {
              "module": "aws_cdk.aws_forecast"
            }
          }
        },
        "aws-cdk-lib.aws_frauddetector": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.FraudDetector"
            },
            "java": {
              "package": "software.amazon.awscdk.services.frauddetector"
            },
            "python": {
              "module": "aws_cdk.aws_frauddetector"
            }
          }
        },
        "aws-cdk-lib.aws_fsx": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.FSx"
            },
            "java": {
              "package": "software.amazon.awscdk.services.fsx"
            },
            "python": {
              "module": "aws_cdk.aws_fsx"
            }
          }
        },
        "aws-cdk-lib.aws_gamelift": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.GameLift"
            },
            "java": {
              "package": "software.amazon.awscdk.services.gamelift"
            },
            "python": {
              "module": "aws_cdk.aws_gamelift"
            }
          }
        },
        "aws-cdk-lib.aws_globalaccelerator": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.GlobalAccelerator"
            },
            "java": {
              "package": "software.amazon.awscdk.services.globalaccelerator"
            },
            "python": {
              "module": "aws_cdk.aws_globalaccelerator"
            }
          }
        },
        "aws-cdk-lib.aws_globalaccelerator_endpoints": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.GlobalAccelerator.Endpoints"
            },
            "java": {
              "package": "software.amazon.awscdk.services.globalaccelerator.endpoints"
            },
            "python": {
              "module": "aws_cdk.aws_globalaccelerator_endpoints"
            }
          }
        },
        "aws-cdk-lib.aws_glue": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Glue"
            },
            "java": {
              "package": "software.amazon.awscdk.services.glue"
            },
            "python": {
              "module": "aws_cdk.aws_glue"
            }
          }
        },
        "aws-cdk-lib.aws_grafana": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Grafana"
            },
            "java": {
              "package": "software.amazon.awscdk.services.grafana"
            },
            "python": {
              "module": "aws_cdk.aws_grafana"
            }
          }
        },
        "aws-cdk-lib.aws_greengrass": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Greengrass"
            },
            "java": {
              "package": "software.amazon.awscdk.services.greengrass"
            },
            "python": {
              "module": "aws_cdk.aws_greengrass"
            }
          }
        },
        "aws-cdk-lib.aws_greengrassv2": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.GreengrassV2"
            },
            "java": {
              "package": "software.amazon.awscdk.services.greengrassv2"
            },
            "python": {
              "module": "aws_cdk.aws_greengrassv2"
            }
          }
        },
        "aws-cdk-lib.aws_groundstation": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.GroundStation"
            },
            "java": {
              "package": "software.amazon.awscdk.services.groundstation"
            },
            "python": {
              "module": "aws_cdk.aws_groundstation"
            }
          }
        },
        "aws-cdk-lib.aws_guardduty": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.GuardDuty"
            },
            "java": {
              "package": "software.amazon.awscdk.services.guardduty"
            },
            "python": {
              "module": "aws_cdk.aws_guardduty"
            }
          }
        },
        "aws-cdk-lib.aws_healthimaging": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.HealthImaging"
            },
            "java": {
              "package": "software.amazon.awscdk.services.healthimaging"
            },
            "python": {
              "module": "aws_cdk.aws_healthimaging"
            }
          }
        },
        "aws-cdk-lib.aws_healthlake": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.HealthLake"
            },
            "java": {
              "package": "software.amazon.awscdk.services.healthlake"
            },
            "python": {
              "module": "aws_cdk.aws_healthlake"
            }
          }
        },
        "aws-cdk-lib.aws_iam": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.IAM"
            },
            "java": {
              "package": "software.amazon.awscdk.services.iam"
            },
            "python": {
              "module": "aws_cdk.aws_iam"
            }
          }
        },
        "aws-cdk-lib.aws_identitystore": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.IdentityStore"
            },
            "java": {
              "package": "software.amazon.awscdk.services.identitystore"
            },
            "python": {
              "module": "aws_cdk.aws_identitystore"
            }
          }
        },
        "aws-cdk-lib.aws_imagebuilder": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ImageBuilder"
            },
            "java": {
              "package": "software.amazon.awscdk.services.imagebuilder"
            },
            "python": {
              "module": "aws_cdk.aws_imagebuilder"
            }
          }
        },
        "aws-cdk-lib.aws_inspector": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Inspector"
            },
            "java": {
              "package": "software.amazon.awscdk.services.inspector"
            },
            "python": {
              "module": "aws_cdk.aws_inspector"
            }
          }
        },
        "aws-cdk-lib.aws_inspectorv2": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.InspectorV2"
            },
            "java": {
              "package": "software.amazon.awscdk.services.inspectorv2"
            },
            "python": {
              "module": "aws_cdk.aws_inspectorv2"
            }
          }
        },
        "aws-cdk-lib.aws_internetmonitor": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.InternetMonitor"
            },
            "java": {
              "package": "software.amazon.awscdk.services.internetmonitor"
            },
            "python": {
              "module": "aws_cdk.aws_internetmonitor"
            }
          }
        },
        "aws-cdk-lib.aws_iot": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.IoT"
            },
            "java": {
              "package": "software.amazon.awscdk.services.iot"
            },
            "python": {
              "module": "aws_cdk.aws_iot"
            }
          }
        },
        "aws-cdk-lib.aws_iot1click": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.IoT1Click"
            },
            "java": {
              "package": "software.amazon.awscdk.services.iot1click"
            },
            "python": {
              "module": "aws_cdk.aws_iot1click"
            }
          }
        },
        "aws-cdk-lib.aws_iotanalytics": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.IoTAnalytics"
            },
            "java": {
              "package": "software.amazon.awscdk.services.iotanalytics"
            },
            "python": {
              "module": "aws_cdk.aws_iotanalytics"
            }
          }
        },
        "aws-cdk-lib.aws_iotcoredeviceadvisor": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.IoTCoreDeviceAdvisor"
            },
            "java": {
              "package": "software.amazon.awscdk.services.iotcoredeviceadvisor"
            },
            "python": {
              "module": "aws_cdk.aws_iotcoredeviceadvisor"
            }
          }
        },
        "aws-cdk-lib.aws_iotevents": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.IoTEvents"
            },
            "java": {
              "package": "software.amazon.awscdk.services.iotevents"
            },
            "python": {
              "module": "aws_cdk.aws_iotevents"
            }
          }
        },
        "aws-cdk-lib.aws_iotfleethub": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.IoTFleetHub"
            },
            "java": {
              "package": "software.amazon.awscdk.services.iotfleethub"
            },
            "python": {
              "module": "aws_cdk.aws_iotfleethub"
            }
          }
        },
        "aws-cdk-lib.aws_iotfleetwise": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.IoTFleetWise"
            },
            "java": {
              "package": "software.amazon.awscdk.services.iotfleetwise"
            },
            "python": {
              "module": "aws_cdk.aws_iotfleetwise"
            }
          }
        },
        "aws-cdk-lib.aws_iotsitewise": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.IoTSiteWise"
            },
            "java": {
              "package": "software.amazon.awscdk.services.iotsitewise"
            },
            "python": {
              "module": "aws_cdk.aws_iotsitewise"
            }
          }
        },
        "aws-cdk-lib.aws_iotthingsgraph": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.IoTThingsGraph"
            },
            "java": {
              "package": "software.amazon.awscdk.services.iotthingsgraph"
            },
            "python": {
              "module": "aws_cdk.aws_iotthingsgraph"
            }
          }
        },
        "aws-cdk-lib.aws_iottwinmaker": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.IoTTwinMaker"
            },
            "java": {
              "package": "software.amazon.awscdk.services.iottwinmaker"
            },
            "python": {
              "module": "aws_cdk.aws_iottwinmaker"
            }
          }
        },
        "aws-cdk-lib.aws_iotwireless": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.IoTWireless"
            },
            "java": {
              "package": "software.amazon.awscdk.services.iotwireless"
            },
            "python": {
              "module": "aws_cdk.aws_iotwireless"
            }
          }
        },
        "aws-cdk-lib.aws_ivs": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Ivs"
            },
            "java": {
              "package": "software.amazon.awscdk.services.ivs"
            },
            "python": {
              "module": "aws_cdk.aws_ivs"
            }
          }
        },
        "aws-cdk-lib.aws_ivschat": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.IVSChat"
            },
            "java": {
              "package": "software.amazon.awscdk.services.ivschat"
            },
            "python": {
              "module": "aws_cdk.aws_ivschat"
            }
          }
        },
        "aws-cdk-lib.aws_kafkaconnect": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.KafkaConnect"
            },
            "java": {
              "package": "software.amazon.awscdk.services.kafkaconnect"
            },
            "python": {
              "module": "aws_cdk.aws_kafkaconnect"
            }
          }
        },
        "aws-cdk-lib.aws_kendra": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Kendra"
            },
            "java": {
              "package": "software.amazon.awscdk.services.kendra"
            },
            "python": {
              "module": "aws_cdk.aws_kendra"
            }
          }
        },
        "aws-cdk-lib.aws_kendraranking": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.KendraRanking"
            },
            "java": {
              "package": "software.amazon.awscdk.services.kendraranking"
            },
            "python": {
              "module": "aws_cdk.aws_kendraranking"
            }
          }
        },
        "aws-cdk-lib.aws_kinesis": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Kinesis"
            },
            "java": {
              "package": "software.amazon.awscdk.services.kinesis"
            },
            "python": {
              "module": "aws_cdk.aws_kinesis"
            }
          }
        },
        "aws-cdk-lib.aws_kinesisanalytics": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.KinesisAnalytics"
            },
            "java": {
              "package": "software.amazon.awscdk.services.kinesisanalytics"
            },
            "python": {
              "module": "aws_cdk.aws_kinesisanalytics"
            }
          }
        },
        "aws-cdk-lib.aws_kinesisanalyticsv2": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.KinesisAnalyticsV2"
            },
            "java": {
              "package": "software.amazon.awscdk.services.kinesisanalyticsv2"
            },
            "python": {
              "module": "aws_cdk.aws_kinesisanalyticsv2"
            }
          }
        },
        "aws-cdk-lib.aws_kinesisfirehose": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.KinesisFirehose"
            },
            "java": {
              "package": "software.amazon.awscdk.services.kinesisfirehose"
            },
            "python": {
              "module": "aws_cdk.aws_kinesisfirehose"
            }
          }
        },
        "aws-cdk-lib.aws_kinesisvideo": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.KinesisVideo"
            },
            "java": {
              "package": "software.amazon.awscdk.services.kinesisvideo"
            },
            "python": {
              "module": "aws_cdk.aws_kinesisvideo"
            }
          }
        },
        "aws-cdk-lib.aws_kms": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.KMS"
            },
            "java": {
              "package": "software.amazon.awscdk.services.kms"
            },
            "python": {
              "module": "aws_cdk.aws_kms"
            }
          }
        },
        "aws-cdk-lib.aws_lakeformation": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.LakeFormation"
            },
            "java": {
              "package": "software.amazon.awscdk.services.lakeformation"
            },
            "python": {
              "module": "aws_cdk.aws_lakeformation"
            }
          }
        },
        "aws-cdk-lib.aws_lambda": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Lambda"
            },
            "java": {
              "package": "software.amazon.awscdk.services.lambda"
            },
            "python": {
              "module": "aws_cdk.aws_lambda"
            }
          }
        },
        "aws-cdk-lib.aws_lambda_destinations": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Lambda.Destinations"
            },
            "java": {
              "package": "software.amazon.awscdk.services.lambda.destinations"
            },
            "python": {
              "module": "aws_cdk.aws_lambda_destinations"
            }
          }
        },
        "aws-cdk-lib.aws_lambda_event_sources": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Lambda.EventSources"
            },
            "java": {
              "package": "software.amazon.awscdk.services.lambda.eventsources"
            },
            "python": {
              "module": "aws_cdk.aws_lambda_event_sources"
            }
          }
        },
        "aws-cdk-lib.aws_lambda_nodejs": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Lambda.Nodejs"
            },
            "java": {
              "package": "software.amazon.awscdk.services.lambda.nodejs"
            },
            "python": {
              "module": "aws_cdk.aws_lambda_nodejs"
            }
          }
        },
        "aws-cdk-lib.aws_launchwizard": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.LaunchWizard"
            },
            "java": {
              "package": "software.amazon.awscdk.services.launchwizard"
            },
            "python": {
              "module": "aws_cdk.aws_launchwizard"
            }
          }
        },
        "aws-cdk-lib.aws_lex": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Lex"
            },
            "java": {
              "package": "software.amazon.awscdk.services.lex"
            },
            "python": {
              "module": "aws_cdk.aws_lex"
            }
          }
        },
        "aws-cdk-lib.aws_licensemanager": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.LicenseManager"
            },
            "java": {
              "package": "software.amazon.awscdk.services.licensemanager"
            },
            "python": {
              "module": "aws_cdk.aws_licensemanager"
            }
          }
        },
        "aws-cdk-lib.aws_lightsail": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Lightsail"
            },
            "java": {
              "package": "software.amazon.awscdk.services.lightsail"
            },
            "python": {
              "module": "aws_cdk.aws_lightsail"
            }
          }
        },
        "aws-cdk-lib.aws_location": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Location"
            },
            "java": {
              "package": "software.amazon.awscdk.services.location"
            },
            "python": {
              "module": "aws_cdk.aws_location"
            }
          }
        },
        "aws-cdk-lib.aws_logs": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Logs"
            },
            "java": {
              "package": "software.amazon.awscdk.services.logs"
            },
            "python": {
              "module": "aws_cdk.aws_logs"
            }
          }
        },
        "aws-cdk-lib.aws_logs_destinations": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Logs.Destinations"
            },
            "java": {
              "package": "software.amazon.awscdk.services.logs.destinations"
            },
            "python": {
              "module": "aws_cdk.aws_logs_destinations"
            }
          }
        },
        "aws-cdk-lib.aws_lookoutequipment": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.LookoutEquipment"
            },
            "java": {
              "package": "software.amazon.awscdk.services.lookoutequipment"
            },
            "python": {
              "module": "aws_cdk.aws_lookoutequipment"
            }
          }
        },
        "aws-cdk-lib.aws_lookoutmetrics": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.LookoutMetrics"
            },
            "java": {
              "package": "software.amazon.awscdk.services.lookoutmetrics"
            },
            "python": {
              "module": "aws_cdk.aws_lookoutmetrics"
            }
          }
        },
        "aws-cdk-lib.aws_lookoutvision": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.LookoutVision"
            },
            "java": {
              "package": "software.amazon.awscdk.services.lookoutvision"
            },
            "python": {
              "module": "aws_cdk.aws_lookoutvision"
            }
          }
        },
        "aws-cdk-lib.aws_m2": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.M2"
            },
            "java": {
              "package": "software.amazon.awscdk.services.m2"
            },
            "python": {
              "module": "aws_cdk.aws_m2"
            }
          }
        },
        "aws-cdk-lib.aws_macie": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Macie"
            },
            "java": {
              "package": "software.amazon.awscdk.services.macie"
            },
            "python": {
              "module": "aws_cdk.aws_macie"
            }
          }
        },
        "aws-cdk-lib.aws_managedblockchain": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ManagedBlockchain"
            },
            "java": {
              "package": "software.amazon.awscdk.services.managedblockchain"
            },
            "python": {
              "module": "aws_cdk.aws_managedblockchain"
            }
          }
        },
        "aws-cdk-lib.aws_mediaconnect": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.MediaConnect"
            },
            "java": {
              "package": "software.amazon.awscdk.services.mediaconnect"
            },
            "python": {
              "module": "aws_cdk.aws_mediaconnect"
            }
          }
        },
        "aws-cdk-lib.aws_mediaconvert": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.MediaConvert"
            },
            "java": {
              "package": "software.amazon.awscdk.services.mediaconvert"
            },
            "python": {
              "module": "aws_cdk.aws_mediaconvert"
            }
          }
        },
        "aws-cdk-lib.aws_medialive": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.MediaLive"
            },
            "java": {
              "package": "software.amazon.awscdk.services.medialive"
            },
            "python": {
              "module": "aws_cdk.aws_medialive"
            }
          }
        },
        "aws-cdk-lib.aws_mediapackage": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.MediaPackage"
            },
            "java": {
              "package": "software.amazon.awscdk.services.mediapackage"
            },
            "python": {
              "module": "aws_cdk.aws_mediapackage"
            }
          }
        },
        "aws-cdk-lib.aws_mediapackagev2": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.MediaPackageV2"
            },
            "java": {
              "package": "software.amazon.awscdk.services.mediapackagev2"
            },
            "python": {
              "module": "aws_cdk.aws_mediapackagev2"
            }
          }
        },
        "aws-cdk-lib.aws_mediastore": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.MediaStore"
            },
            "java": {
              "package": "software.amazon.awscdk.services.mediastore"
            },
            "python": {
              "module": "aws_cdk.aws_mediastore"
            }
          }
        },
        "aws-cdk-lib.aws_mediatailor": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.MediaTailor"
            },
            "java": {
              "package": "software.amazon.awscdk.services.mediatailor"
            },
            "python": {
              "module": "aws_cdk.aws_mediatailor"
            }
          }
        },
        "aws-cdk-lib.aws_memorydb": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.MemoryDB"
            },
            "java": {
              "package": "software.amazon.awscdk.services.memorydb"
            },
            "python": {
              "module": "aws_cdk.aws_memorydb"
            }
          }
        },
        "aws-cdk-lib.aws_msk": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.MSK"
            },
            "java": {
              "package": "software.amazon.awscdk.services.msk"
            },
            "python": {
              "module": "aws_cdk.aws_msk"
            }
          }
        },
        "aws-cdk-lib.aws_mwaa": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.MWAA"
            },
            "java": {
              "package": "software.amazon.awscdk.services.mwaa"
            },
            "python": {
              "module": "aws_cdk.aws_mwaa"
            }
          }
        },
        "aws-cdk-lib.aws_neptune": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Neptune"
            },
            "java": {
              "package": "software.amazon.awscdk.services.neptune"
            },
            "python": {
              "module": "aws_cdk.aws_neptune"
            }
          }
        },
        "aws-cdk-lib.aws_neptunegraph": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.NeptuneGraph"
            },
            "java": {
              "package": "software.amazon.awscdk.services.neptunegraph"
            },
            "python": {
              "module": "aws_cdk.aws_neptunegraph"
            }
          }
        },
        "aws-cdk-lib.aws_networkfirewall": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.NetworkFirewall"
            },
            "java": {
              "package": "software.amazon.awscdk.services.networkfirewall"
            },
            "python": {
              "module": "aws_cdk.aws_networkfirewall"
            }
          }
        },
        "aws-cdk-lib.aws_networkmanager": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.NetworkManager"
            },
            "java": {
              "package": "software.amazon.awscdk.services.networkmanager"
            },
            "python": {
              "module": "aws_cdk.aws_networkmanager"
            }
          }
        },
        "aws-cdk-lib.aws_nimblestudio": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.NimbleStudio"
            },
            "java": {
              "package": "software.amazon.awscdk.services.nimblestudio"
            },
            "python": {
              "module": "aws_cdk.aws_nimblestudio"
            }
          }
        },
        "aws-cdk-lib.aws_oam": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Oam"
            },
            "java": {
              "package": "software.amazon.awscdk.services.oam"
            },
            "python": {
              "module": "aws_cdk.aws_oam"
            }
          }
        },
        "aws-cdk-lib.aws_omics": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Omics"
            },
            "java": {
              "package": "software.amazon.awscdk.services.omics"
            },
            "python": {
              "module": "aws_cdk.aws_omics"
            }
          }
        },
        "aws-cdk-lib.aws_opensearchserverless": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.OpenSearchServerless"
            },
            "java": {
              "package": "software.amazon.awscdk.services.opensearchserverless"
            },
            "python": {
              "module": "aws_cdk.aws_opensearchserverless"
            }
          }
        },
        "aws-cdk-lib.aws_opensearchservice": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.OpenSearchService"
            },
            "java": {
              "package": "software.amazon.awscdk.services.opensearchservice"
            },
            "python": {
              "module": "aws_cdk.aws_opensearchservice"
            }
          }
        },
        "aws-cdk-lib.aws_opsworks": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.OpsWorks"
            },
            "java": {
              "package": "software.amazon.awscdk.services.opsworks"
            },
            "python": {
              "module": "aws_cdk.aws_opsworks"
            }
          }
        },
        "aws-cdk-lib.aws_opsworkscm": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.OpsWorksCM"
            },
            "java": {
              "package": "software.amazon.awscdk.services.opsworkscm"
            },
            "python": {
              "module": "aws_cdk.aws_opsworkscm"
            }
          }
        },
        "aws-cdk-lib.aws_organizations": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Organizations"
            },
            "java": {
              "package": "software.amazon.awscdk.services.organizations"
            },
            "python": {
              "module": "aws_cdk.aws_organizations"
            }
          }
        },
        "aws-cdk-lib.aws_osis": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.OSIS"
            },
            "java": {
              "package": "software.amazon.awscdk.services.osis"
            },
            "python": {
              "module": "aws_cdk.aws_osis"
            }
          }
        },
        "aws-cdk-lib.aws_panorama": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Panorama"
            },
            "java": {
              "package": "software.amazon.awscdk.services.panorama"
            },
            "python": {
              "module": "aws_cdk.aws_panorama"
            }
          }
        },
        "aws-cdk-lib.aws_paymentcryptography": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.PaymentCryptography"
            },
            "java": {
              "package": "software.amazon.awscdk.services.paymentcryptography"
            },
            "python": {
              "module": "aws_cdk.aws_paymentcryptography"
            }
          }
        },
        "aws-cdk-lib.aws_pcaconnectorad": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.PCAConnectorAD"
            },
            "java": {
              "package": "software.amazon.awscdk.services.pcaconnectorad"
            },
            "python": {
              "module": "aws_cdk.aws_pcaconnectorad"
            }
          }
        },
        "aws-cdk-lib.aws_personalize": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Personalize"
            },
            "java": {
              "package": "software.amazon.awscdk.services.personalize"
            },
            "python": {
              "module": "aws_cdk.aws_personalize"
            }
          }
        },
        "aws-cdk-lib.aws_pinpoint": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Pinpoint"
            },
            "java": {
              "package": "software.amazon.awscdk.services.pinpoint"
            },
            "python": {
              "module": "aws_cdk.aws_pinpoint"
            }
          }
        },
        "aws-cdk-lib.aws_pinpointemail": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.PinpointEmail"
            },
            "java": {
              "package": "software.amazon.awscdk.services.pinpointemail"
            },
            "python": {
              "module": "aws_cdk.aws_pinpointemail"
            }
          }
        },
        "aws-cdk-lib.aws_pipes": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Pipes"
            },
            "java": {
              "package": "software.amazon.awscdk.services.pipes"
            },
            "python": {
              "module": "aws_cdk.aws_pipes"
            }
          }
        },
        "aws-cdk-lib.aws_proton": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.Proton"
            },
            "java": {
              "package": "software.amazon.awscdk.services.proton"
            },
            "python": {
              "module": "aws_cdk.aws_proton"
            }
          }
        },
        "aws-cdk-lib.aws_qbusiness": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.QBusiness"
            },
            "java": {
              "package": "software.amazon.awscdk.services.qbusiness"
            },
            "python": {
              "module": "aws_cdk.aws_qbusiness"
            }
          }
        },
        "aws-cdk-lib.aws_qldb": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.QLDB"
            },
            "java": {
              "package": "software.amazon.awscdk.services.qldb"
            },
            "python": {
              "module": "aws_cdk.aws_qldb"
            }
          }
        },
        "aws-cdk-lib.aws_quicksight": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.QuickSight"
            },
            "java": {
              "package": "software.amazon.awscdk.services.quicksight"
            },
            "python": {
              "module": "aws_cdk.aws_quicksight"
            }
          }
        },
        "aws-cdk-lib.aws_ram": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.RAM"
            },
            "java": {
              "package": "software.amazon.awscdk.services.ram"
            },
            "python": {
              "module": "aws_cdk.aws_ram"
            }
          }
        },
        "aws-cdk-lib.aws_rds": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.RDS"
            },
            "java": {
              "package": "software.amazon.awscdk.services.rds"
            },
            "python": {
              "module": "aws_cdk.aws_rds"
            }
          }
        },
        "aws-cdk-lib.aws_redshift": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Redshift"
            },
            "java": {
              "package": "software.amazon.awscdk.services.redshift"
            },
            "python": {
              "module": "aws_cdk.aws_redshift"
            }
          }
        },
        "aws-cdk-lib.aws_redshiftserverless": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.RedshiftServerless"
            },
            "java": {
              "package": "software.amazon.awscdk.services.redshiftserverless"
            },
            "python": {
              "module": "aws_cdk.aws_redshiftserverless"
            }
          }
        },
        "aws-cdk-lib.aws_refactorspaces": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.RefactorSpaces"
            },
            "java": {
              "package": "software.amazon.awscdk.services.refactorspaces"
            },
            "python": {
              "module": "aws_cdk.aws_refactorspaces"
            }
          }
        },
        "aws-cdk-lib.aws_rekognition": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Rekognition"
            },
            "java": {
              "package": "software.amazon.awscdk.services.rekognition"
            },
            "python": {
              "module": "aws_cdk.aws_rekognition"
            }
          }
        },
        "aws-cdk-lib.aws_resiliencehub": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ResilienceHub"
            },
            "java": {
              "package": "software.amazon.awscdk.services.resiliencehub"
            },
            "python": {
              "module": "aws_cdk.aws_resiliencehub"
            }
          }
        },
        "aws-cdk-lib.aws_resourceexplorer2": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ResourceExplorer2"
            },
            "java": {
              "package": "software.amazon.awscdk.services.resourceexplorer2"
            },
            "python": {
              "module": "aws_cdk.aws_resourceexplorer2"
            }
          }
        },
        "aws-cdk-lib.aws_resourcegroups": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ResourceGroups"
            },
            "java": {
              "package": "software.amazon.awscdk.services.resourcegroups"
            },
            "python": {
              "module": "aws_cdk.aws_resourcegroups"
            }
          }
        },
        "aws-cdk-lib.aws_robomaker": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.RoboMaker"
            },
            "java": {
              "package": "software.amazon.awscdk.services.robomaker"
            },
            "python": {
              "module": "aws_cdk.aws_robomaker"
            }
          }
        },
        "aws-cdk-lib.aws_rolesanywhere": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.RolesAnywhere"
            },
            "java": {
              "package": "software.amazon.awscdk.services.rolesanywhere"
            },
            "python": {
              "module": "aws_cdk.aws_rolesanywhere"
            }
          }
        },
        "aws-cdk-lib.aws_route53": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Route53"
            },
            "java": {
              "package": "software.amazon.awscdk.services.route53"
            },
            "python": {
              "module": "aws_cdk.aws_route53"
            }
          }
        },
        "aws-cdk-lib.aws_route53_patterns": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Route53.Patterns"
            },
            "java": {
              "package": "software.amazon.awscdk.services.route53.patterns"
            },
            "python": {
              "module": "aws_cdk.aws_route53_patterns"
            }
          }
        },
        "aws-cdk-lib.aws_route53_targets": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Route53.Targets"
            },
            "java": {
              "package": "software.amazon.awscdk.services.route53.targets"
            },
            "python": {
              "module": "aws_cdk.aws_route53_targets"
            }
          }
        },
        "aws-cdk-lib.aws_route53profiles": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.Route53Profiles"
            },
            "java": {
              "package": "software.amazon.awscdk.services.route53profiles"
            },
            "python": {
              "module": "aws_cdk.aws_route53profiles"
            }
          }
        },
        "aws-cdk-lib.aws_route53recoverycontrol": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Route53RecoveryControl"
            },
            "java": {
              "package": "software.amazon.awscdk.services.route53recoverycontrol"
            },
            "python": {
              "module": "aws_cdk.aws_route53recoverycontrol"
            }
          }
        },
        "aws-cdk-lib.aws_route53recoveryreadiness": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Route53RecoveryReadiness"
            },
            "java": {
              "package": "software.amazon.awscdk.services.route53recoveryreadiness"
            },
            "python": {
              "module": "aws_cdk.aws_route53recoveryreadiness"
            }
          }
        },
        "aws-cdk-lib.aws_route53resolver": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Route53Resolver"
            },
            "java": {
              "package": "software.amazon.awscdk.services.route53resolver"
            },
            "python": {
              "module": "aws_cdk.aws_route53resolver"
            }
          }
        },
        "aws-cdk-lib.aws_rum": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.RUM"
            },
            "java": {
              "package": "software.amazon.awscdk.services.rum"
            },
            "python": {
              "module": "aws_cdk.aws_rum"
            }
          }
        },
        "aws-cdk-lib.aws_s3": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.S3"
            },
            "java": {
              "package": "software.amazon.awscdk.services.s3"
            },
            "python": {
              "module": "aws_cdk.aws_s3"
            }
          }
        },
        "aws-cdk-lib.aws_s3_assets": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.S3.Assets"
            },
            "java": {
              "package": "software.amazon.awscdk.services.s3.assets"
            },
            "python": {
              "module": "aws_cdk.aws_s3_assets"
            }
          }
        },
        "aws-cdk-lib.aws_s3_deployment": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.S3.Deployment"
            },
            "java": {
              "package": "software.amazon.awscdk.services.s3.deployment"
            },
            "python": {
              "module": "aws_cdk.aws_s3_deployment"
            }
          }
        },
        "aws-cdk-lib.aws_s3_notifications": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.S3.Notifications"
            },
            "java": {
              "package": "software.amazon.awscdk.services.s3.notifications"
            },
            "python": {
              "module": "aws_cdk.aws_s3_notifications"
            }
          }
        },
        "aws-cdk-lib.aws_s3express": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.S3Express"
            },
            "java": {
              "package": "software.amazon.awscdk.services.s3express"
            },
            "python": {
              "module": "aws_cdk.aws_s3express"
            }
          }
        },
        "aws-cdk-lib.aws_s3objectlambda": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.S3ObjectLambda"
            },
            "java": {
              "package": "software.amazon.awscdk.services.s3objectlambda"
            },
            "python": {
              "module": "aws_cdk.aws_s3objectlambda"
            }
          }
        },
        "aws-cdk-lib.aws_s3outposts": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.S3Outposts"
            },
            "java": {
              "package": "software.amazon.awscdk.services.s3outposts"
            },
            "python": {
              "module": "aws_cdk.aws_s3outposts"
            }
          }
        },
        "aws-cdk-lib.aws_sagemaker": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Sagemaker"
            },
            "java": {
              "package": "software.amazon.awscdk.services.sagemaker"
            },
            "python": {
              "module": "aws_cdk.aws_sagemaker"
            }
          }
        },
        "aws-cdk-lib.aws_sam": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SAM"
            },
            "java": {
              "package": "software.amazon.awscdk.services.sam"
            },
            "python": {
              "module": "aws_cdk.aws_sam"
            }
          }
        },
        "aws-cdk-lib.aws_scheduler": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Scheduler"
            },
            "java": {
              "package": "software.amazon.awscdk.services.scheduler"
            },
            "python": {
              "module": "aws_cdk.aws_scheduler"
            }
          }
        },
        "aws-cdk-lib.aws_sdb": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SDB"
            },
            "java": {
              "package": "software.amazon.awscdk.services.sdb"
            },
            "python": {
              "module": "aws_cdk.aws_sdb"
            }
          }
        },
        "aws-cdk-lib.aws_secretsmanager": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SecretsManager"
            },
            "java": {
              "package": "software.amazon.awscdk.services.secretsmanager"
            },
            "python": {
              "module": "aws_cdk.aws_secretsmanager"
            }
          }
        },
        "aws-cdk-lib.aws_securityhub": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SecurityHub"
            },
            "java": {
              "package": "software.amazon.awscdk.services.securityhub"
            },
            "python": {
              "module": "aws_cdk.aws_securityhub"
            }
          }
        },
        "aws-cdk-lib.aws_securitylake": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.SecurityLake"
            },
            "java": {
              "package": "software.amazon.awscdk.services.securitylake"
            },
            "python": {
              "module": "aws_cdk.aws_securitylake"
            }
          }
        },
        "aws-cdk-lib.aws_servicecatalog": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Servicecatalog"
            },
            "java": {
              "package": "software.amazon.awscdk.services.servicecatalog"
            },
            "python": {
              "module": "aws_cdk.aws_servicecatalog"
            }
          }
        },
        "aws-cdk-lib.aws_servicecatalogappregistry": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Servicecatalogappregistry"
            },
            "java": {
              "package": "software.amazon.awscdk.services.servicecatalogappregistry"
            },
            "python": {
              "module": "aws_cdk.aws_servicecatalogappregistry"
            }
          }
        },
        "aws-cdk-lib.aws_servicediscovery": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ServiceDiscovery"
            },
            "java": {
              "package": "software.amazon.awscdk.services.servicediscovery"
            },
            "python": {
              "module": "aws_cdk.aws_servicediscovery"
            }
          }
        },
        "aws-cdk-lib.aws_ses": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SES"
            },
            "java": {
              "package": "software.amazon.awscdk.services.ses"
            },
            "python": {
              "module": "aws_cdk.aws_ses"
            }
          }
        },
        "aws-cdk-lib.aws_ses_actions": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SES.Actions"
            },
            "java": {
              "package": "software.amazon.awscdk.services.ses.actions"
            },
            "python": {
              "module": "aws_cdk.aws_ses_actions"
            }
          }
        },
        "aws-cdk-lib.aws_shield": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.Shield"
            },
            "java": {
              "package": "software.amazon.awscdk.services.shield"
            },
            "python": {
              "module": "aws_cdk.aws_shield"
            }
          }
        },
        "aws-cdk-lib.aws_signer": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Signer"
            },
            "java": {
              "package": "software.amazon.awscdk.services.signer"
            },
            "python": {
              "module": "aws_cdk.aws_signer"
            }
          }
        },
        "aws-cdk-lib.aws_simspaceweaver": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SimSpaceWeaver"
            },
            "java": {
              "package": "software.amazon.awscdk.services.simspaceweaver"
            },
            "python": {
              "module": "aws_cdk.aws_simspaceweaver"
            }
          }
        },
        "aws-cdk-lib.aws_sns": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SNS"
            },
            "java": {
              "package": "software.amazon.awscdk.services.sns"
            },
            "python": {
              "module": "aws_cdk.aws_sns"
            }
          }
        },
        "aws-cdk-lib.aws_sns_subscriptions": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SNS.Subscriptions"
            },
            "java": {
              "package": "software.amazon.awscdk.services.sns.subscriptions"
            },
            "python": {
              "module": "aws_cdk.aws_sns_subscriptions"
            }
          }
        },
        "aws-cdk-lib.aws_sqs": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SQS"
            },
            "java": {
              "package": "software.amazon.awscdk.services.sqs"
            },
            "python": {
              "module": "aws_cdk.aws_sqs"
            }
          }
        },
        "aws-cdk-lib.aws_ssm": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SSM"
            },
            "java": {
              "package": "software.amazon.awscdk.services.ssm"
            },
            "python": {
              "module": "aws_cdk.aws_ssm"
            }
          }
        },
        "aws-cdk-lib.aws_ssmcontacts": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SSMContacts"
            },
            "java": {
              "package": "software.amazon.awscdk.services.ssmcontacts"
            },
            "python": {
              "module": "aws_cdk.aws_ssmcontacts"
            }
          }
        },
        "aws-cdk-lib.aws_ssmincidents": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SSMIncidents"
            },
            "java": {
              "package": "software.amazon.awscdk.services.ssmincidents"
            },
            "python": {
              "module": "aws_cdk.aws_ssmincidents"
            }
          }
        },
        "aws-cdk-lib.aws_sso": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SSO"
            },
            "java": {
              "package": "software.amazon.awscdk.services.sso"
            },
            "python": {
              "module": "aws_cdk.aws_sso"
            }
          }
        },
        "aws-cdk-lib.aws_stepfunctions": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.StepFunctions"
            },
            "java": {
              "package": "software.amazon.awscdk.services.stepfunctions"
            },
            "python": {
              "module": "aws_cdk.aws_stepfunctions"
            }
          }
        },
        "aws-cdk-lib.aws_stepfunctions_tasks": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.StepFunctions.Tasks"
            },
            "java": {
              "package": "software.amazon.awscdk.services.stepfunctions.tasks"
            },
            "python": {
              "module": "aws_cdk.aws_stepfunctions_tasks"
            }
          }
        },
        "aws-cdk-lib.aws_supportapp": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SupportApp"
            },
            "java": {
              "package": "software.amazon.awscdk.services.supportapp"
            },
            "python": {
              "module": "aws_cdk.aws_supportapp"
            }
          }
        },
        "aws-cdk-lib.aws_synthetics": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Synthetics"
            },
            "java": {
              "package": "software.amazon.awscdk.services.synthetics"
            },
            "python": {
              "module": "aws_cdk.aws_synthetics"
            }
          }
        },
        "aws-cdk-lib.aws_systemsmanagersap": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SystemsManagerSAP"
            },
            "java": {
              "package": "software.amazon.awscdk.services.systemsmanagersap"
            },
            "python": {
              "module": "aws_cdk.aws_systemsmanagersap"
            }
          }
        },
        "aws-cdk-lib.aws_timestream": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Timestream"
            },
            "java": {
              "package": "software.amazon.awscdk.services.timestream"
            },
            "python": {
              "module": "aws_cdk.aws_timestream"
            }
          }
        },
        "aws-cdk-lib.aws_transfer": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Transfer"
            },
            "java": {
              "package": "software.amazon.awscdk.services.transfer"
            },
            "python": {
              "module": "aws_cdk.aws_transfer"
            }
          }
        },
        "aws-cdk-lib.aws_verifiedpermissions": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.VerifiedPermissions"
            },
            "java": {
              "package": "software.amazon.awscdk.services.verifiedpermissions"
            },
            "python": {
              "module": "aws_cdk.aws_verifiedpermissions"
            }
          }
        },
        "aws-cdk-lib.aws_voiceid": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.VoiceID"
            },
            "java": {
              "package": "software.amazon.awscdk.services.voiceid"
            },
            "python": {
              "module": "aws_cdk.aws_voiceid"
            }
          }
        },
        "aws-cdk-lib.aws_vpclattice": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.VpcLattice"
            },
            "java": {
              "package": "software.amazon.awscdk.services.vpclattice"
            },
            "python": {
              "module": "aws_cdk.aws_vpclattice"
            }
          }
        },
        "aws-cdk-lib.aws_waf": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.WAF"
            },
            "java": {
              "package": "software.amazon.awscdk.services.waf"
            },
            "python": {
              "module": "aws_cdk.aws_waf"
            }
          }
        },
        "aws-cdk-lib.aws_wafregional": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.WAFRegional"
            },
            "java": {
              "package": "software.amazon.awscdk.services.waf.regional"
            },
            "python": {
              "module": "aws_cdk.aws_wafregional"
            }
          }
        },
        "aws-cdk-lib.aws_wafv2": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.WAFv2"
            },
            "java": {
              "package": "software.amazon.awscdk.services.wafv2"
            },
            "python": {
              "module": "aws_cdk.aws_wafv2"
            }
          }
        },
        "aws-cdk-lib.aws_wisdom": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Wisdom"
            },
            "java": {
              "package": "software.amazon.awscdk.services.wisdom"
            },
            "python": {
              "module": "aws_cdk.aws_wisdom"
            }
          }
        },
        "aws-cdk-lib.aws_workspaces": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.WorkSpaces"
            },
            "java": {
              "package": "software.amazon.awscdk.services.workspaces"
            },
            "python": {
              "module": "aws_cdk.aws_workspaces"
            }
          }
        },
        "aws-cdk-lib.aws_workspacesthinclient": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.WorkSpacesThinClient"
            },
            "java": {
              "package": "software.amazon.awscdk.services.workspacesthinclient"
            },
            "python": {
              "module": "aws_cdk.aws_workspacesthinclient"
            }
          }
        },
        "aws-cdk-lib.aws_workspacesweb": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.WorkSpacesWeb"
            },
            "java": {
              "package": "software.amazon.awscdk.services.workspacesweb"
            },
            "python": {
              "module": "aws_cdk.aws_workspacesweb"
            }
          }
        },
        "aws-cdk-lib.aws_xray": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.XRay"
            },
            "java": {
              "package": "software.amazon.awscdk.services.xray"
            },
            "python": {
              "module": "aws_cdk.aws_xray"
            }
          }
        },
        "aws-cdk-lib.cloud_assembly_schema": {},
        "aws-cdk-lib.cloudformation_include": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.CloudFormation.Include"
            },
            "java": {
              "package": "software.amazon.awscdk.cloudformation.include"
            },
            "python": {
              "module": "aws_cdk.cloudformation_include"
            }
          }
        },
        "aws-cdk-lib.custom_resources": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.CustomResources"
            },
            "java": {
              "package": "software.amazon.awscdk.customresources"
            },
            "python": {
              "module": "aws_cdk.custom_resources"
            }
          }
        },
        "aws-cdk-lib.cx_api": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.CXAPI"
            },
            "java": {
              "package": "software.amazon.awscdk.cxapi"
            },
            "python": {
              "module": "aws_cdk.cx_api"
            }
          }
        },
        "aws-cdk-lib.lambda_layer_awscli": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.LambdaLayer.AwsCli"
            },
            "java": {
              "package": "software.amazon.awscdk.lambdalayer.awscli"
            },
            "python": {
              "module": "aws_cdk.lambda_layer_awscli"
            }
          }
        },
        "aws-cdk-lib.lambda_layer_kubectl": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.LambdaLayer.Kubectl"
            },
            "java": {
              "package": "software.amazon.awscdk.lambdalayer.kubectl"
            },
            "python": {
              "module": "aws_cdk.lambda_layer_kubectl"
            }
          }
        },
        "aws-cdk-lib.lambda_layer_node_proxy_agent": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.LambdaLayer.NodeProxyAgent"
            },
            "java": {
              "package": "software.amazon.awscdk.lambda.layer.node.proxy.agent"
            },
            "python": {
              "module": "aws_cdk.lambda_layer_node_proxy_agent"
            }
          }
        },
        "aws-cdk-lib.pipelines": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.Pipelines"
            },
            "java": {
              "package": "software.amazon.awscdk.pipelines"
            },
            "python": {
              "module": "aws_cdk.pipelines"
            }
          }
        },
        "aws-cdk-lib.region_info": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.RegionInfo"
            },
            "java": {
              "package": "software.amazon.awscdk.regioninfo"
            },
            "python": {
              "module": "aws_cdk.region_info"
            }
          }
        },
        "aws-cdk-lib.triggers": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.Triggers"
            },
            "java": {
              "package": "software.amazon.awscdk.triggers"
            },
            "python": {
              "module": "aws_cdk.triggers"
            }
          }
        }
      },
      "targets": {
        "dotnet": {
          "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/main/logo/default-256-dark.png",
          "namespace": "Amazon.CDK",
          "packageId": "Amazon.CDK.Lib"
        },
        "go": {
          "moduleName": "github.com/aws/aws-cdk-go",
          "packageName": "awscdk"
        },
        "java": {
          "maven": {
            "artifactId": "aws-cdk-lib",
            "groupId": "software.amazon.awscdk"
          },
          "package": "software.amazon.awscdk"
        },
        "js": {
          "npm": "aws-cdk-lib"
        },
        "python": {
          "distName": "aws-cdk-lib",
          "module": "aws_cdk"
        }
      }
    },
    "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"
        }
      }
    }
  },
  "description": "CDK construct to create GitHub Actions self-hosted runners. Creates ephemeral runners on demand. Easy to deploy and highly customizable.",
  "docs": {
    "stability": "experimental"
  },
  "homepage": "https://github.com/CloudSnorkel/cdk-github-runners.git",
  "jsiiVersion": "5.5.10 (build 224bf90)",
  "keywords": [
    "aws",
    "aws-cdk",
    "aws-cdk-construct",
    "cdk",
    "codebuild",
    "fargate",
    "github",
    "github-actions",
    "lambda",
    "self-hosted"
  ],
  "license": "Apache-2.0",
  "metadata": {
    "jsii": {
      "pacmak": {
        "hasDefaultInterfaces": true
      }
    },
    "tscRootDir": "src"
  },
  "name": "@cloudsnorkel/cdk-github-runners",
  "readme": {
    "markdown": "# GitHub Self-Hosted Runners CDK Constructs\n\n[![NPM](https://img.shields.io/npm/v/@cloudsnorkel/cdk-github-runners?label=npm&logo=npm)][7]\n[![PyPI](https://img.shields.io/pypi/v/cloudsnorkel.cdk-github-runners?label=pypi&logo=pypi)][6]\n[![Maven Central](https://img.shields.io/maven-central/v/com.cloudsnorkel/cdk.github.runners.svg?label=Maven%20Central&logo=apachemaven)][8]\n[![Go](https://img.shields.io/github/v/tag/CloudSnorkel/cdk-github-runners?color=red&label=go&logo=go)][11]\n[![Nuget](https://img.shields.io/nuget/v/CloudSnorkel.Cdk.Github.Runners?color=red&&logo=nuget)][12]\n[![Release](https://github.com/CloudSnorkel/cdk-github-runners/actions/workflows/release.yml/badge.svg)](https://github.com/CloudSnorkel/cdk-github-runners/actions/workflows/release.yml)\n[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](https://github.com/CloudSnorkel/cdk-github-runners/blob/main/LICENSE)\n\nUse this CDK construct to create ephemeral [self-hosted GitHub runners][1] on-demand inside your AWS account.\n\n* 🧩 Easy to configure GitHub integration with a web-based interface\n* 🧠 Customizable runners with decent defaults\n* 🏃🏻 Multiple runner configurations controlled by labels\n* 🔐 Everything fully hosted in your account\n* 🔃 Automatically updated build environment with latest runner version\n\nSelf-hosted runners in AWS are useful when:\n\n* You need easy access to internal resources in your actions\n* You want to pre-install some software for your actions\n* You want to provide some basic AWS API access (but [aws-actions/configure-aws-credentials][2] has more security controls)\n* You are using GitHub Enterprise Server\n\nEphemeral (or on-demand) runners are the [recommended way by GitHub][14] for auto-scaling, and they make sure all jobs run with a clean image. Runners are started on-demand. You don't pay unless a job is running.\n\n## API\n\nThe best way to browse API documentation is on [Constructs Hub][13]. It is available in all supported programming languages.\n\n## Providers\n\nA runner provider creates compute resources on-demand and uses [actions/runner][5] to start a runner.\n\n|                  | EC2               | CodeBuild                  | Fargate        | ECS            | Lambda        |\n|------------------|-------------------|----------------------------|----------------|----------------|---------------|\n| **Time limit**   | Unlimited         | 8 hours                    | Unlimited      | Unlimited      | 15 minutes    |\n| **vCPUs**        | Unlimited         | 2, 4, 8, or 72             | 0.25 to 4      | Unlimited      | 1 to 6        |\n| **RAM**          | Unlimited         | 3gb, 7gb, 15gb, or 145gb   | 512mb to 30gb  | Unlimited      | 128mb to 10gb |\n| **Storage**      | Unlimited         | 50gb to 824gb              | 20gb to 200gb  | Unlimited      | Up to 10gb    |\n| **Architecture** | x86_64, ARM64     | x86_64, ARM64              | x86_64, ARM64  | x86_64, ARM64  | x86_64, ARM64 |\n| **sudo**         | ✔                 | ✔                         | ✔              | ✔              | ❌           |\n| **Docker**       | ✔                 | ✔ (Linux only)            | ❌              | ✔              | ❌           |\n| **Spot pricing** | ✔                 | ❌                         | ✔              | ✔              | ❌           |\n| **OS**           | Linux, Windows    | Linux, Windows             | Linux, Windows | Linux, Windows | Linux         |\n\nThe best provider to use mostly depends on your current infrastructure. When in doubt, CodeBuild is always a good choice. Execution history and logs are easy to view, and it has no restrictive limits unless you need to run for more than 8 hours.\n\n* EC2 is useful when you want runners to have complete access to the host\n* ECS is useful when you want to control the infrastructure, like leaving the runner host running for faster startups\n* Lambda is useful for short jobs that can work within time, size and readonly system constraints\n\nYou can also create your own provider by implementing `IRunnerProvider`.\n\n## Installation\n\n1. Install and use the appropriate package\n   <details><summary>Python</summary>\n\n   ### Install\n   Available on [PyPI][6].\n   ```bash\n   pip install cloudsnorkel.cdk-github-runners\n   ```\n   ### Use\n   ```python\n   from aws_cdk import App, Stack\n   from cloudsnorkel.cdk_github_runners import GitHubRunners\n\n   app = App()\n   stack = Stack(app, \"github-runners\")\n   GitHubRunners(stack, \"runners\")\n\n   app.synth()\n   ```\n   </details>\n   <details><summary>TypeScript or JavaScript</summary>\n\n   ### Install\n   Available on [npm][7].\n   ```bash\n   npm i @cloudsnorkel/cdk-github-runners\n   ```\n   ### Use\n   ```typescript\n   import { App, Stack } from 'aws-cdk-lib';\n   import { GitHubRunners } from '@cloudsnorkel/cdk-github-runners';\n\n   const app = new App();\n   const stack = new Stack(app, 'github-runners');\n   new GitHubRunners(stack, 'runners');\n\n   app.synth();\n   ```\n   </details>\n   <details><summary>Java</summary>\n\n   ### Install\n   Available on [Maven][8].\n   ```xml\n   <dependency>\n      <groupId>com.cloudsnorkel</groupId>\n      <artifactId>cdk.github.runners</artifactId>\n   </dependency>\n   ```\n   ### Use\n   ```java\n   import software.amazon.awscdk.App;\n   import software.amazon.awscdk.Stack;\n   import com.cloudsnorkel.cdk.github.runners.GitHubRunners;\n\n   public class Example {\n     public static void main(String[] args){\n       App app = new App();\n       Stack stack = new Stack(app, \"github-runners\");\n       GitHubRunners.Builder.create(stack, \"runners\").build();\n\n       app.synth();\n     }\n   }\n   ```\n   </details>\n   <details><summary>Go</summary>\n\n   ### Install\n   Available on [GitHub][11].\n   ```bash\n   go get github.com/CloudSnorkel/cdk-github-runners-go/cloudsnorkelcdkgithubrunners\n   ```\n   ### Use\n   ```go\n   package main\n\n   import (\n     \"github.com/CloudSnorkel/cdk-github-runners-go/cloudsnorkelcdkgithubrunners\"\n     \"github.com/aws/aws-cdk-go/awscdk/v2\"\n     \"github.com/aws/jsii-runtime-go\"\n   )\n\n   func main() {\n     app := awscdk.NewApp(nil)\n     stack := awscdk.NewStack(app, jsii.String(\"github-runners\"), &awscdk.StackProps{})\n     cloudsnorkelcdkgithubrunners.NewGitHubRunners(stack, jsii.String(\"runners\"), &cloudsnorkelcdkgithubrunners.GitHubRunnersProps{})\n\n     app.Synth(nil)\n   }\n   ```\n   </details>\n   <details><summary>.NET</summary>\n\n   ### Install\n   Available on [Nuget][12].\n   ```bash\n   dotnet add package CloudSnorkel.Cdk.Github.Runners\n   ```\n   ### Use\n   ```csharp\n   using Amazon.CDK;\n   using CloudSnorkel;\n\n   namespace Example\n   {\n     sealed class Program\n     {\n       public static void Main(string[] args)\n       {\n         var app = new App();\n         var stack = new Stack(app, \"github-runners\");\n         new GitHubRunners(stack, \"runners\");\n         app.Synth();\n       }\n     }\n   }\n   ```\n   </details>\n2. Use `GitHubRunners` construct in your code (starting with default arguments is fine)\n3. Deploy your stack\n4. Look for the status command output similar to `aws --region us-east-1 lambda invoke --function-name status-XYZ123 status.json`\n   ```\n    ✅  github-runners-test\n\n   ✨  Deployment time: 260.01s\n\n   Outputs:\n   github-runners-test.runnersstatuscommand4A30F0F5 = aws --region us-east-1 lambda invoke --function-name github-runners-test-runnersstatus1A5771C0-mvttg8oPQnQS status.json\n   ```\n5. Execute the status command (you may need to specify `--profile` too) and open the resulting `status.json` file\n6. Open the URL in `github.setup.url` from `status.json` or [manually setup GitHub](SETUP_GITHUB.md) integration as an app or with personal access token\n7. Run status command again to confirm `github.auth.status` and `github.webhook.status` are OK\n8. Trigger a GitHub action that has a `self-hosted` label with `runs-on: [self-hosted, codebuild]` (or non-default labels you set in step 2)\n9. If the action is not successful, see [troubleshooting](#Troubleshooting)\n\n[![Demo](demo-thumbnail.jpg)](https://youtu.be/wlyv_3V8lIw)\n\n## Customizing\n\nThe default providers configured by `GitHubRunners` are useful for testing but probably not too much for actual production work. They run in the default VPC or no VPC and have no added IAM permissions. You would usually want to configure the providers yourself.\n\nFor example:\n\n```typescript\nlet vpc: ec2.Vpc;\nlet runnerSg: ec2.SecurityGroup;\nlet dbSg: ec2.SecurityGroup;\nlet bucket: s3.Bucket;\n\n// create a custom CodeBuild provider\nconst myProvider = new CodeBuildRunnerProvider(this, 'codebuild runner', {\n   labels: ['my-codebuild'],\n   vpc: vpc,\n   securityGroups: [runnerSg],\n});\n// grant some permissions to the provider\nbucket.grantReadWrite(myProvider);\ndbSg.connections.allowFrom(runnerSg, ec2.Port.tcp(3306), 'allow runners to connect to MySQL database');\n\n// create the runner infrastructure\nnew GitHubRunners(this, 'runners', {\n   providers: [myProvider],\n});\n```\n\nAnother way to customize runners is by modifying the image used to spin them up. The image contains the [runner][5], any required dependencies, and integration code with the provider. You may choose to customize this image by adding more packages, for example.\n\n```typescript\nconst myBuilder = FargateRunnerProvider.imageBuilder(this, 'image builder');\nmyBuilder.addComponent(\n  RunnerImageComponent.custom({ commands: ['apt install -y nginx xz-utils'] }),\n);\n\nconst myProvider = new FargateRunnerProvider(this, 'fargate runner', {\n   labels: ['customized-fargate'],\n   imageBuilder: myBuilder,\n});\n\n// create the runner infrastructure\nnew GitHubRunners(this, 'runners', {\n   providers: [myProvider],\n});\n```\n\nYour workflow will then look like:\n\n```yaml\nname: self-hosted example\non: push\njobs:\n  self-hosted:\n    runs-on: [self-hosted, customized-fargate]\n    steps:\n      - run: echo hello world\n```\n\nWindows images can also be customized the same way.\n\n```typescript\nconst myWindowsBuilder = FargateRunnerProvider.imageBuilder(this, 'Windows image builder', {\n   architecture: Architecture.X86_64,\n   os: Os.WINDOWS,\n});\nmyWindowsBuilder.addComponent(\n   RunnerImageComponent.custom({\n     name: 'Ninja',\n     commands: [\n       'Invoke-WebRequest -UseBasicParsing -Uri \"https://github.com/ninja-build/ninja/releases/download/v1.11.1/ninja-win.zip\" -OutFile ninja.zip',\n       'Expand-Archive ninja.zip -DestinationPath C:\\\\actions',\n       'del ninja.zip',\n     ],\n   }),\n);\n\nconst myProvider = new FargateRunnerProvider(this, 'fargate runner', {\n   labels: ['customized-windows-fargate'],\n   imageBuilder: myWindowsBuilder,\n});\n\nnew GitHubRunners(this, 'runners', {\n   providers: [myProvider],\n});\n```\n\nThe runner OS and architecture is determined by the image it is set to use. For example, to create a Fargate runner provider for ARM64 set the `architecture` property for the image builder to `Architecture.ARM64` in the image builder properties.\n\n```typescript\nnew GitHubRunners(this, 'runners', {\n   providers: [\n      new FargateRunnerProvider(this, 'fargate runner', {\n         labels: ['arm64', 'fargate'],\n         imageBuilder: FargateRunnerProvider.imageBuilder(this, 'image builder', {\n            architecture: Architecture.ARM64,\n            os: Os.LINUX_UBUNTU,\n         }),\n      }),\n   ],\n});\n```\n\n## Architecture\n\n![Architecture diagram](architecture.svg)\n\n## Troubleshooting\n\nRunners are started in response to a webhook coming in from GitHub. If there are any issues starting the runner like missing capacity or transient API issues, the provider will keep retrying for 24 hours. Configuration issue related errors like pointing to a missing AMI will not be retried. GitHub itself will cancel the job if it can't find a runner for 24 hours. If your jobs don't start, follow the steps below to examine all parts of this workflow.\n\n1. Always start with the status function, make sure no errors are reported, and confirm all status codes are OK\n2. Make sure `runs-on` in the workflow matches the expected labels set in the runner provider\n3. Diagnose relevant executions of the orchestrator step function by visiting the URL in `troubleshooting.stepFunctionUrl` from `status.json`\n   1. If the execution failed, check your runner provider configuration for errors\n   2. If the execution is still running for a long time, check the execution events to see why runner starting is being retried\n   3. If there are no relevant executions, move to the next step\n4. Confirm the webhook Lambda was called by visiting the URL in `troubleshooting.webhookHandlerUrl` from `status.json`\n   1. If it's not called or logs errors, confirm the webhook settings on the GitHub side\n   2. If you see too many errors, make sure you're only sending `workflow_job` events\n5. When using GitHub app, make sure there are active installations in `github.auth.app.installations`\n\nAll logs are saved in CloudWatch.\n* Log group names can be found in `status.json` for each provider, image builder, and other parts of the system\n* Some useful Logs Insights queries can be enabled with `GitHubRunners.createLogsInsightsQueries()`\n\nTo get `status.json`, check out the CloudFormation stack output for a command that generates it. The command looks like:\n\n```\naws --region us-east-1 lambda invoke --function-name status-XYZ123 status.json\n```\n\n## Monitoring\n\nThere are two important ways to monitor your runners:\n\n1. Make sure runners don't fail to start. When that happens, jobs may sit and wait. Use `GitHubRunners.metricFailed()` to get a metric for the number of failed runner starts. You should use this metric to trigger an alarm.\n2. Make sure runner images don't fail to build. Failed runner image builds mean you will get stuck with out-of-date software on your runners. It may lead to security vulnerabilities, or it may lead to slower runner start-ups as the runner software itself needs to be updated. Use `GitHubRunners.failedImageBuildsTopic()` to get SNS topic that gets notified of failed runner image builds. You should subscribe to this topic.\n\nOther useful metrics to track:\n\n1. Use `GitHubRunners.metricJobCompleted()` to get a metric for the number of completed jobs broken down by labels and job success.\n2. Use `GitHubRunners.metricTime()` to get a metric for the total time a runner is running. This includes the overhead of starting the runner.\n\n## Contributing\n\nIf you use and love this project, please consider contributing.\n\n1. 🪳 If you see something, say something. [Issues][16] help improve the quality of the project.\n   * Include relevant logs and package versions for bugs.\n   * When possible, describe the use-case behind feature requests.\n1. 🛠️ [Pull requests][17] are welcome.\n   * Run `npm run build` before submitting to make sure all tests pass.\n   * Allow edits from maintainers so small adjustments can be made easily.\n1. 💵 Consider [sponsoring][15] the project to show your support and optionally get your name listed below.\n\n## Other Options\n\n1. [philips-labs/terraform-aws-github-runner][3] if you're using Terraform\n2. [actions/actions-runner-controller][4] if you're using Kubernetes\n\n\n[1]: https://docs.github.com/en/actions/hosting-your-own-runners/about-self-hosted-runners\n[2]: https://github.com/marketplace/actions/configure-aws-credentials-action-for-github-actions\n[3]: https://github.com/philips-labs/terraform-aws-github-runner\n[4]: https://github.com/actions/actions-runner-controller\n[5]: https://github.com/actions/runner\n[6]: https://pypi.org/project/cloudsnorkel.cdk-github-runners\n[7]: https://www.npmjs.com/package/@cloudsnorkel/cdk-github-runners\n[8]: https://central.sonatype.com/artifact/com.cloudsnorkel/cdk.github.runners/\n[9]: https://docs.github.com/en/developers/apps/getting-started-with-apps/about-apps\n[10]: https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token\n[11]: https://pkg.go.dev/github.com/CloudSnorkel/cdk-github-runners-go/cloudsnorkelcdkgithubrunners\n[12]: https://www.nuget.org/packages/CloudSnorkel.Cdk.Github.Runners/\n[13]: https://constructs.dev/packages/@cloudsnorkel/cdk-github-runners/\n[14]: https://docs.github.com/en/actions/hosting-your-own-runners/autoscaling-with-self-hosted-runners#using-ephemeral-runners-for-autoscaling\n[15]: https://github.com/sponsors/CloudSnorkel\n[16]: https://github.com/CloudSnorkel/cdk-github-runners/issues\n[17]: https://github.com/CloudSnorkel/cdk-github-runners/pulls\n"
  },
  "repository": {
    "type": "git",
    "url": "https://github.com/CloudSnorkel/cdk-github-runners.git"
  },
  "schema": "jsii/0.10.0",
  "targets": {
    "dotnet": {
      "namespace": "CloudSnorkel",
      "packageId": "CloudSnorkel.Cdk.Github.Runners"
    },
    "go": {
      "moduleName": "github.com/CloudSnorkel/cdk-github-runners-go"
    },
    "java": {
      "maven": {
        "artifactId": "cdk.github.runners",
        "groupId": "com.cloudsnorkel"
      },
      "package": "com.cloudsnorkel.cdk.github.runners"
    },
    "js": {
      "npm": "@cloudsnorkel/cdk-github-runners"
    },
    "python": {
      "distName": "cloudsnorkel.cdk-github-runners",
      "module": "cloudsnorkel.cdk_github_runners"
    }
  },
  "types": {
    "@cloudsnorkel/cdk-github-runners.AmiBuilder": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "base": "constructs.Construct",
      "docs": {
        "deprecated": "use RunnerImageBuilder, e.g. with Ec2RunnerProvider.imageBuilder()",
        "remarks": "Builders can be used with {@link Ec2RunnerProvider }.\n\nEach builder re-runs automatically at a set interval to make sure the AMIs contain the latest versions of everything.\n\nYou can create an instance of this construct to customize the AMI used to spin-up runners. Some runner providers may require custom components. Check the runner provider documentation.\n\nFor example, to set a specific runner version, rebuild the image every 2 weeks, and add a few packages for the EC2 provider, use:\n\n```\nconst builder = new AmiBuilder(this, 'Builder', {\n    runnerVersion: RunnerVersion.specific('2.293.0'),\n    rebuildInterval: Duration.days(14),\n});\nbuilder.addComponent(new ImageBuilderComponent(scope, id, {\n  platform: 'Linux',\n  displayName: 'p7zip',\n  description: 'Install some more packages',\n  commands: [\n    'apt-get install p7zip',\n  ],\n}));\nnew Ec2RunnerProvider(this, 'EC2 provider', {\n    labels: ['custom-ec2'],\n    amiBuilder: builder,\n});\n```",
        "stability": "deprecated",
        "summary": "An AMI builder that uses AWS Image Builder to build AMIs pre-baked with all the GitHub Actions runner requirements."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.AmiBuilder",
      "initializer": {
        "docs": {
          "stability": "deprecated"
        },
        "locationInModule": {
          "filename": "src/image-builders/aws-image-builder/deprecated/ami.ts",
          "line": 144
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          },
          {
            "name": "props",
            "optional": true,
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.AmiBuilderProps"
            }
          }
        ]
      },
      "interfaces": [
        "@cloudsnorkel/cdk-github-runners.IRunnerImageBuilder"
      ],
      "kind": "class",
      "locationInModule": {
        "filename": "src/image-builders/aws-image-builder/deprecated/ami.ts",
        "line": 141
      },
      "methods": [
        {
          "docs": {
            "stability": "deprecated",
            "summary": "Add a component to be installed."
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/ami.ts",
            "line": 212
          },
          "name": "addComponent",
          "parameters": [
            {
              "name": "component",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.ImageBuilderComponent"
              }
            }
          ]
        },
        {
          "docs": {
            "remarks": "This helps deal with self-signed certificates for GitHub Enterprise Server.",
            "stability": "deprecated",
            "summary": "Add extra trusted certificates."
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/ami.ts",
            "line": 227
          },
          "name": "addExtraCertificates",
          "parameters": [
            {
              "docs": {
                "summary": "path to directory containing a file called certs.pem containing all the required certificates."
              },
              "name": "path",
              "type": {
                "primitive": "string"
              }
            }
          ]
        },
        {
          "docs": {
            "stability": "deprecated",
            "summary": "Called by IRunnerProvider to finalize settings and create the AMI builder."
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/ami.ts",
            "line": 240
          },
          "name": "bindAmi",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerImageBuilder",
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.RunnerAmi"
            }
          }
        },
        {
          "docs": {
            "remarks": "Anything that ends up with an ECR repository containing a Docker image that runs GitHub self-hosted runners can be used. A simple implementation could even point to an existing image and nothing else.\n\nIt's important that the specified image tag be available at the time the repository is available. Providers usually assume the image is ready and will fail if it's not.\n\nThe image can be further updated over time manually or using a schedule as long as it is always written to the same tag.",
            "stability": "deprecated",
            "summary": "Build and return a Docker image with GitHub Runner installed in it."
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/ami.ts",
            "line": 325
          },
          "name": "bindDockerImage",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerImageBuilder",
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImage"
            }
          }
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/common.ts",
            "line": 126
          },
          "name": "createImage",
          "parameters": [
            {
              "name": "infra",
              "type": {
                "fqn": "aws-cdk-lib.aws_imagebuilder.CfnInfrastructureConfiguration"
              }
            },
            {
              "name": "dist",
              "type": {
                "fqn": "aws-cdk-lib.aws_imagebuilder.CfnDistributionConfiguration"
              }
            },
            {
              "name": "log",
              "type": {
                "fqn": "aws-cdk-lib.aws_logs.LogGroup"
              }
            },
            {
              "name": "imageRecipeArn",
              "optional": true,
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "containerRecipeArn",
              "optional": true,
              "type": {
                "primitive": "string"
              }
            }
          ],
          "protected": true,
          "returns": {
            "type": {
              "fqn": "aws-cdk-lib.aws_imagebuilder.CfnImage"
            }
          }
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/common.ts",
            "line": 97
          },
          "name": "createInfrastructure",
          "parameters": [
            {
              "name": "managedPolicies",
              "type": {
                "collection": {
                  "elementtype": {
                    "fqn": "aws-cdk-lib.aws_iam.IManagedPolicy"
                  },
                  "kind": "array"
                }
              }
            }
          ],
          "protected": true,
          "returns": {
            "type": {
              "fqn": "aws-cdk-lib.aws_imagebuilder.CfnInfrastructureConfiguration"
            }
          }
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/common.ts",
            "line": 89
          },
          "name": "createLog",
          "parameters": [
            {
              "name": "recipeName",
              "type": {
                "primitive": "string"
              }
            }
          ],
          "protected": true,
          "returns": {
            "type": {
              "fqn": "aws-cdk-lib.aws_logs.LogGroup"
            }
          }
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/common.ts",
            "line": 143
          },
          "name": "createPipeline",
          "parameters": [
            {
              "name": "infra",
              "type": {
                "fqn": "aws-cdk-lib.aws_imagebuilder.CfnInfrastructureConfiguration"
              }
            },
            {
              "name": "dist",
              "type": {
                "fqn": "aws-cdk-lib.aws_imagebuilder.CfnDistributionConfiguration"
              }
            },
            {
              "name": "log",
              "type": {
                "fqn": "aws-cdk-lib.aws_logs.LogGroup"
              }
            },
            {
              "name": "imageRecipeArn",
              "optional": true,
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "containerRecipeArn",
              "optional": true,
              "type": {
                "primitive": "string"
              }
            }
          ],
          "protected": true,
          "returns": {
            "type": {
              "fqn": "aws-cdk-lib.aws_imagebuilder.CfnImagePipeline"
            }
          }
        },
        {
          "docs": {
            "remarks": "Useful for required system settings like certificates or proxy settings.",
            "stability": "deprecated",
            "summary": "Add a component to be installed before any other components."
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/ami.ts",
            "line": 198
          },
          "name": "prependComponent",
          "parameters": [
            {
              "name": "component",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.ImageBuilderComponent"
              }
            }
          ]
        }
      ],
      "name": "AmiBuilder",
      "properties": [
        {
          "docs": {
            "stability": "deprecated"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/common.ts",
            "line": 12
          },
          "name": "architecture",
          "protected": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.Architecture"
          }
        },
        {
          "docs": {
            "stability": "deprecated",
            "summary": "The network connections associated with this resource."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/common.ts",
            "line": 173
          },
          "name": "connections",
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.Connections"
          }
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/common.ts",
            "line": 16
          },
          "name": "description",
          "protected": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/common.ts",
            "line": 13
          },
          "name": "os",
          "protected": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.Os"
          }
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/common.ts",
            "line": 14
          },
          "name": "platform",
          "protected": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/common.ts",
            "line": 18
          },
          "name": "runnerVersion",
          "protected": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.RunnerVersion"
          }
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/common.ts",
            "line": 20
          },
          "name": "components",
          "protected": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "@cloudsnorkel/cdk-github-runners.ImageBuilderComponent"
              },
              "kind": "array"
            }
          }
        }
      ],
      "symbolId": "src/image-builders/aws-image-builder/deprecated/ami:AmiBuilder"
    },
    "@cloudsnorkel/cdk-github-runners.AmiBuilderProps": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "datatype": true,
      "docs": {
        "stability": "experimental",
        "summary": "Properties for {@link AmiBuilder} construct."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.AmiBuilderProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/image-builders/aws-image-builder/deprecated/ami.ts",
        "line": 17
      },
      "name": "AmiBuilderProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "default": "Architecture.X86_64",
            "stability": "experimental",
            "summary": "Image architecture."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/ami.ts",
            "line": 23
          },
          "name": "architecture",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.Architecture"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "true",
            "stability": "experimental",
            "summary": "Install Docker inside the image, so it can be used by the runner."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/ami.ts",
            "line": 108
          },
          "name": "installDocker",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "m6i.large",
            "stability": "experimental",
            "summary": "The instance type used to build the image."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/ami.ts",
            "line": 83
          },
          "name": "instanceType",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.InstanceType"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "RemovalPolicy.DESTROY",
            "remarks": "If deployment fails on the custom resource, try setting this to `RemovalPolicy.RETAIN`. This way the logs can still be viewed, and you can see why the build failed.\n\nWe try to not leave anything behind when removed. But sometimes a log staying behind is useful.",
            "stability": "experimental",
            "summary": "Removal policy for logs of image builds."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/ami.ts",
            "line": 101
          },
          "name": "logRemovalPolicy",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.RemovalPolicy"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "logs.RetentionDays.ONE_MONTH",
            "remarks": "When updating\nthis property, unsetting it doesn't remove the log retention policy. To\nremove the retention policy, set the value to `INFINITE`.",
            "stability": "experimental",
            "summary": "The number of days log events are kept in CloudWatch Logs."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/ami.ts",
            "line": 92
          },
          "name": "logRetention",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_logs.RetentionDays"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "OS.LINUX",
            "stability": "experimental",
            "summary": "Image OS."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/ami.ts",
            "line": 30
          },
          "name": "os",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.Os"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Duration.days(7)",
            "remarks": "Useful for keeping the AMI up-do-date with the latest GitHub runner version and latest OS updates.\n\nSet to zero to disable.",
            "stability": "experimental",
            "summary": "Schedule the AMI to be rebuilt every given interval."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/ami.ts",
            "line": 46
          },
          "name": "rebuildInterval",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.Duration"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "latest version available",
            "stability": "experimental",
            "summary": "Version of GitHub Runners to install."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/ami.ts",
            "line": 37
          },
          "name": "runnerVersion",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.RunnerVersion"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "new security group",
            "deprecated": "use {@link securityGroups }",
            "stability": "deprecated",
            "summary": "Security group to assign to launched builder instances."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/ami.ts",
            "line": 62
          },
          "name": "securityGroup",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.ISecurityGroup"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "new security group",
            "stability": "experimental",
            "summary": "Security groups to assign to launched builder instances."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/ami.ts",
            "line": 69
          },
          "name": "securityGroups",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_ec2.ISecurityGroup"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "default VPC subnet",
            "remarks": "Only the first matched subnet will be used.",
            "stability": "experimental",
            "summary": "Where to place the network interfaces within the VPC."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/ami.ts",
            "line": 76
          },
          "name": "subnetSelection",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.SubnetSelection"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "default account VPC",
            "stability": "experimental",
            "summary": "VPC where builder instances will be launched."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/ami.ts",
            "line": 53
          },
          "name": "vpc",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IVpc"
          }
        }
      ],
      "symbolId": "src/image-builders/aws-image-builder/deprecated/ami:AmiBuilderProps"
    },
    "@cloudsnorkel/cdk-github-runners.ApiGatewayAccessProps": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "datatype": true,
      "docs": {
        "stability": "experimental"
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.ApiGatewayAccessProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/access.ts",
        "line": 9
      },
      "name": "ApiGatewayAccessProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "remarks": "If not specified on public API Gateway, all IP addresses are allowed.\n\nIf not specified on private API Gateway, no IP addresses are allowed (but specified security groups are).",
            "stability": "experimental",
            "summary": "List of IP addresses in CIDR notation that are allowed to access the API Gateway."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/access.ts",
            "line": 28
          },
          "name": "allowedIps",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "Only works for private API Gateways with {@link allowedVpc}.",
            "stability": "experimental",
            "summary": "List of security groups that are allowed to access the API Gateway."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/access.ts",
            "line": 40
          },
          "name": "allowedSecurityGroups",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_ec2.ISecurityGroup"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Create a private API Gateway and allow access from the specified VPC."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/access.ts",
            "line": 33
          },
          "name": "allowedVpc",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IVpc"
          }
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "Use this to make use of existing VPC endpoints or to share an endpoint between multiple functions. The VPC endpoint must point to `ec2.InterfaceVpcEndpointAwsService.APIGATEWAY`.\n\nNo other settings are supported when using this option.\n\nAll endpoints will be allowed access, but only the first one will be used as the URL by the runner system for setting up the webhook, and as setup URL.",
            "stability": "experimental",
            "summary": "Create a private API Gateway and allow access from the specified VPC endpoints."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/access.ts",
            "line": 19
          },
          "name": "allowedVpcEndpoints",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_ec2.IVpcEndpoint"
              },
              "kind": "array"
            }
          }
        }
      ],
      "symbolId": "src/access:ApiGatewayAccessProps"
    },
    "@cloudsnorkel/cdk-github-runners.Architecture": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "docs": {
        "stability": "experimental",
        "summary": "CPU architecture enum for an image."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.Architecture",
      "kind": "class",
      "locationInModule": {
        "filename": "src/providers/common.ts",
        "line": 55
      },
      "methods": [
        {
          "docs": {
            "stability": "experimental",
            "summary": "Checks if a given EC2 instance type matches this architecture."
          },
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 101
          },
          "name": "instanceTypeMatch",
          "parameters": [
            {
              "docs": {
                "summary": "instance type to check."
              },
              "name": "instanceType",
              "type": {
                "fqn": "aws-cdk-lib.aws_ec2.InstanceType"
              }
            }
          ],
          "returns": {
            "type": {
              "primitive": "boolean"
            }
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "Checks if the given architecture is the same as this one."
          },
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 78
          },
          "name": "is",
          "parameters": [
            {
              "docs": {
                "summary": "architecture to compare."
              },
              "name": "arch",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.Architecture"
              }
            }
          ],
          "returns": {
            "type": {
              "primitive": "boolean"
            }
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "Checks if this architecture is in a given list."
          },
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 87
          },
          "name": "isIn",
          "parameters": [
            {
              "docs": {
                "summary": "architectures to check."
              },
              "name": "arches",
              "type": {
                "collection": {
                  "elementtype": {
                    "fqn": "@cloudsnorkel/cdk-github-runners.Architecture"
                  },
                  "kind": "array"
                }
              }
            }
          ],
          "returns": {
            "type": {
              "primitive": "boolean"
            }
          }
        }
      ],
      "name": "Architecture",
      "properties": [
        {
          "const": true,
          "docs": {
            "stability": "experimental",
            "summary": "ARM64."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 59
          },
          "name": "ARM64",
          "static": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.Architecture"
          }
        },
        {
          "const": true,
          "docs": {
            "stability": "experimental",
            "summary": "X86_64."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 64
          },
          "name": "X86_64",
          "static": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.Architecture"
          }
        },
        {
          "docs": {
            "stability": "experimental"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 70
          },
          "name": "name",
          "type": {
            "primitive": "string"
          }
        }
      ],
      "symbolId": "src/providers/common:Architecture"
    },
    "@cloudsnorkel/cdk-github-runners.AwsImageBuilderRunnerImageBuilderProps": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "datatype": true,
      "docs": {
        "stability": "experimental"
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.AwsImageBuilderRunnerImageBuilderProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/image-builders/aws-image-builder/builder.ts",
        "line": 34
      },
      "name": "AwsImageBuilderRunnerImageBuilderProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "default": "disabled",
            "remarks": "This is only supported for Windows AMIs.",
            "stability": "experimental",
            "summary": "Options for fast launch."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/builder.ts",
            "line": 58
          },
          "name": "fastLaunchOptions",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.FastLaunchOptions"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "m6i.large",
            "stability": "experimental",
            "summary": "The instance type used to build the image."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/builder.ts",
            "line": 40
          },
          "name": "instanceType",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.InstanceType"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "default size for AMI (usually 30GB for Linux and 50GB for Windows)",
            "remarks": "Use this if you're building images with big components and need more space.",
            "stability": "experimental",
            "summary": "Size of volume available for builder instances. This modifies the boot volume size and doesn't add any additional volumes."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/builder.ts",
            "line": 49
          },
          "name": "storageSize",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.Size"
          }
        }
      ],
      "symbolId": "src/image-builders/aws-image-builder/builder:AwsImageBuilderRunnerImageBuilderProps"
    },
    "@cloudsnorkel/cdk-github-runners.CodeBuildImageBuilder": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "base": "constructs.Construct",
      "docs": {
        "deprecated": "use RunnerImageBuilder",
        "remarks": "Builders can be used with runner providers.\n\nEach builder re-runs automatically at a set interval to make sure the images contain the latest versions of everything.\n\nYou can create an instance of this construct to customize the image used to spin-up runners. Each provider has its own requirements for what an image should do. That's why they each provide their own Dockerfile.\n\nFor example, to set a specific runner version, rebuild the image every 2 weeks, and add a few packages for the Fargate provider, use:\n\n```\nconst builder = new CodeBuildImageBuilder(this, 'Builder', {\n    dockerfilePath: FargateRunnerProvider.LINUX_X64_DOCKERFILE_PATH,\n    runnerVersion: RunnerVersion.specific('2.293.0'),\n    rebuildInterval: Duration.days(14),\n});\nbuilder.setBuildArg('EXTRA_PACKAGES', 'nginx xz-utils');\nnew FargateRunnerProvider(this, 'Fargate provider', {\n    labels: ['customized-fargate'],\n    imageBuilder: builder,\n});\n```",
        "stability": "deprecated",
        "summary": "An image builder that uses CodeBuild to build Docker images pre-baked with all the GitHub Actions runner requirements."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.CodeBuildImageBuilder",
      "initializer": {
        "docs": {
          "stability": "deprecated"
        },
        "locationInModule": {
          "filename": "src/image-builders/codebuild-deprecated.ts",
          "line": 181
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          },
          {
            "name": "props",
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.CodeBuildImageBuilderProps"
            }
          }
        ]
      },
      "interfaces": [
        "@cloudsnorkel/cdk-github-runners.IRunnerImageBuilder"
      ],
      "kind": "class",
      "locationInModule": {
        "filename": "src/image-builders/codebuild-deprecated.ts",
        "line": 162
      },
      "methods": [
        {
          "docs": {
            "remarks": "All first party Dockerfiles support this. Others may not.",
            "stability": "deprecated",
            "summary": "Add extra trusted certificates. This helps deal with self-signed certificates for GitHub Enterprise Server."
          },
          "locationInModule": {
            "filename": "src/image-builders/codebuild-deprecated.ts",
            "line": 289
          },
          "name": "addExtraCertificates",
          "parameters": [
            {
              "docs": {
                "summary": "path to directory containing a file called certs.pem containing all the required certificates."
              },
              "name": "path",
              "type": {
                "primitive": "string"
              }
            }
          ]
        },
        {
          "docs": {
            "stability": "deprecated",
            "summary": "Uploads a folder to the build server at a given folder name."
          },
          "locationInModule": {
            "filename": "src/image-builders/codebuild-deprecated.ts",
            "line": 223
          },
          "name": "addFiles",
          "parameters": [
            {
              "docs": {
                "summary": "path to source directory."
              },
              "name": "sourcePath",
              "type": {
                "primitive": "string"
              }
            },
            {
              "docs": {
                "summary": "name of destination folder."
              },
              "name": "destName",
              "type": {
                "primitive": "string"
              }
            }
          ]
        },
        {
          "docs": {
            "stability": "deprecated",
            "summary": "Add a policy statement to the builder to access resources required to the image build."
          },
          "locationInModule": {
            "filename": "src/image-builders/codebuild-deprecated.ts",
            "line": 275
          },
          "name": "addPolicyStatement",
          "parameters": [
            {
              "docs": {
                "summary": "IAM policy statement."
              },
              "name": "statement",
              "type": {
                "fqn": "aws-cdk-lib.aws_iam.PolicyStatement"
              }
            }
          ]
        },
        {
          "docs": {
            "stability": "deprecated",
            "summary": "Adds a command that runs after `docker build` and `docker push`."
          },
          "locationInModule": {
            "filename": "src/image-builders/codebuild-deprecated.ts",
            "line": 250
          },
          "name": "addPostBuildCommand",
          "parameters": [
            {
              "docs": {
                "summary": "command to add."
              },
              "name": "command",
              "type": {
                "primitive": "string"
              }
            }
          ]
        },
        {
          "docs": {
            "stability": "deprecated",
            "summary": "Adds a command that runs before `docker build`."
          },
          "locationInModule": {
            "filename": "src/image-builders/codebuild-deprecated.ts",
            "line": 238
          },
          "name": "addPreBuildCommand",
          "parameters": [
            {
              "docs": {
                "summary": "command to add."
              },
              "name": "command",
              "type": {
                "primitive": "string"
              }
            }
          ]
        },
        {
          "docs": {
            "remarks": "Anything that ends up with a launch template pointing to an AMI that runs GitHub self-hosted runners can be used. A simple implementation could even point to an existing AMI and nothing else.\n\nThe AMI can be further updated over time manually or using a schedule as long as it is always written to the same launch template.",
            "stability": "deprecated",
            "summary": "Build and return an AMI with GitHub Runner installed in it."
          },
          "locationInModule": {
            "filename": "src/image-builders/codebuild-deprecated.ts",
            "line": 530
          },
          "name": "bindAmi",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerImageBuilder",
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.RunnerAmi"
            }
          }
        },
        {
          "docs": {
            "stability": "deprecated",
            "summary": "Called by IRunnerProvider to finalize settings and create the image builder."
          },
          "locationInModule": {
            "filename": "src/image-builders/codebuild-deprecated.ts",
            "line": 299
          },
          "name": "bindDockerImage",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerImageBuilder",
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImage"
            }
          }
        },
        {
          "docs": {
            "remarks": "See the documentation for the Dockerfile you're using for a list of supported build arguments.",
            "stability": "deprecated",
            "summary": "Adds a build argument for Docker."
          },
          "locationInModule": {
            "filename": "src/image-builders/codebuild-deprecated.ts",
            "line": 263
          },
          "name": "setBuildArg",
          "parameters": [
            {
              "docs": {
                "summary": "build argument name."
              },
              "name": "name",
              "type": {
                "primitive": "string"
              }
            },
            {
              "docs": {
                "summary": "build argument value."
              },
              "name": "value",
              "type": {
                "primitive": "string"
              }
            }
          ]
        }
      ],
      "name": "CodeBuildImageBuilder",
      "properties": [
        {
          "docs": {
            "stability": "deprecated"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/codebuild-deprecated.ts",
            "line": 524
          },
          "name": "connections",
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.Connections"
          }
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/codebuild-deprecated.ts",
            "line": 181
          },
          "name": "props",
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.CodeBuildImageBuilderProps"
          }
        }
      ],
      "symbolId": "src/image-builders/codebuild-deprecated:CodeBuildImageBuilder"
    },
    "@cloudsnorkel/cdk-github-runners.CodeBuildImageBuilderProps": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "datatype": true,
      "docs": {
        "stability": "experimental",
        "summary": "Properties for CodeBuildImageBuilder construct."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.CodeBuildImageBuilderProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/image-builders/codebuild-deprecated.ts",
        "line": 36
      },
      "name": "CodeBuildImageBuilderProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "remarks": "It can be a path to a Dockerfile, a folder containing a Dockerfile, or a zip file containing a Dockerfile.",
            "stability": "experimental",
            "summary": "Path to Dockerfile to be built."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/codebuild-deprecated.ts",
            "line": 54
          },
          "name": "dockerfilePath",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Architecture.X86_64",
            "stability": "experimental",
            "summary": "Image architecture."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/codebuild-deprecated.ts",
            "line": 42
          },
          "name": "architecture",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.Architecture"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Ubuntu 22.04 for x64 and Amazon Linux 2 for ARM64",
            "remarks": "This is the image that's going to run the code that builds the runner image.\n\nThe only action taken in CodeBuild is running `docker build`. You would therefore not need to change this setting often.",
            "stability": "experimental",
            "summary": "Build image to use in CodeBuild."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/codebuild-deprecated.ts",
            "line": 108
          },
          "name": "buildImage",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_codebuild.IBuildImage"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "{@link ComputeType#SMALL }",
            "remarks": "See the {@link ComputeType} enum for the possible values.",
            "stability": "experimental",
            "summary": "The type of compute to use for this build."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/codebuild-deprecated.ts",
            "line": 99
          },
          "name": "computeType",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_codebuild.ComputeType"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "RemovalPolicy.DESTROY",
            "remarks": "If deployment fails on the custom resource, try setting this to `RemovalPolicy.RETAIN`. This way the CodeBuild logs can still be viewed, and you can see why the build failed.\n\nWe try to not leave anything behind when removed. But sometimes a log staying behind is useful.",
            "stability": "experimental",
            "summary": "Removal policy for logs of image builds."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/codebuild-deprecated.ts",
            "line": 135
          },
          "name": "logRemovalPolicy",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.RemovalPolicy"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "logs.RetentionDays.ONE_MONTH",
            "remarks": "When updating\nthis property, unsetting it doesn't remove the log retention policy. To\nremove the retention policy, set the value to `INFINITE`.",
            "stability": "experimental",
            "summary": "The number of days log events are kept in CloudWatch Logs."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/codebuild-deprecated.ts",
            "line": 126
          },
          "name": "logRetention",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_logs.RetentionDays"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "OS.LINUX",
            "stability": "experimental",
            "summary": "Image OS."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/codebuild-deprecated.ts",
            "line": 49
          },
          "name": "os",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.Os"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Duration.days(7)",
            "remarks": "Useful for keeping the image up-do-date with the latest GitHub runner version and latest OS updates.\n\nSet to zero to disable.",
            "stability": "experimental",
            "summary": "Schedule the image to be rebuilt every given interval."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/codebuild-deprecated.ts",
            "line": 70
          },
          "name": "rebuildInterval",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.Duration"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "latest version available",
            "stability": "experimental",
            "summary": "Version of GitHub Runners to install."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/codebuild-deprecated.ts",
            "line": 61
          },
          "name": "runnerVersion",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.RunnerVersion"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "public project with no security group",
            "stability": "experimental",
            "summary": "Security Group to assign to this instance."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/codebuild-deprecated.ts",
            "line": 84
          },
          "name": "securityGroup",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.ISecurityGroup"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "no subnet",
            "stability": "experimental",
            "summary": "Where to place the network interfaces within the VPC."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/codebuild-deprecated.ts",
            "line": 91
          },
          "name": "subnetSelection",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.SubnetSelection"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Duration.hours(1)",
            "remarks": "For valid values, see the timeoutInMinutes field in the AWS\nCodeBuild User Guide.",
            "stability": "experimental",
            "summary": "The number of minutes after which AWS CodeBuild stops the build if it's not complete."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/codebuild-deprecated.ts",
            "line": 117
          },
          "name": "timeout",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.Duration"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "no VPC",
            "stability": "experimental",
            "summary": "VPC to build the image in."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/codebuild-deprecated.ts",
            "line": 77
          },
          "name": "vpc",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IVpc"
          }
        }
      ],
      "symbolId": "src/image-builders/codebuild-deprecated:CodeBuildImageBuilderProps"
    },
    "@cloudsnorkel/cdk-github-runners.CodeBuildRunner": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "base": "@cloudsnorkel/cdk-github-runners.CodeBuildRunnerProvider",
      "docs": {
        "deprecated": "use {@link CodeBuildRunnerProvider }",
        "stability": "deprecated"
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.CodeBuildRunner",
      "initializer": {
        "docs": {
          "stability": "experimental"
        },
        "locationInModule": {
          "filename": "src/providers/codebuild.ts",
          "line": 242
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          },
          {
            "name": "props",
            "optional": true,
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.CodeBuildRunnerProviderProps"
            }
          }
        ]
      },
      "kind": "class",
      "locationInModule": {
        "filename": "src/providers/codebuild.ts",
        "line": 465
      },
      "name": "CodeBuildRunner",
      "symbolId": "src/providers/codebuild:CodeBuildRunner"
    },
    "@cloudsnorkel/cdk-github-runners.CodeBuildRunnerImageBuilderProps": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "datatype": true,
      "docs": {
        "stability": "experimental"
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.CodeBuildRunnerImageBuilderProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/image-builders/codebuild.ts",
        "line": 32
      },
      "name": "CodeBuildRunnerImageBuilderProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "default": "Amazon Linux 2023",
            "remarks": "This is the image that's going to run the code that builds the runner image.\n\nThe only action taken in CodeBuild is running `docker build`. You would therefore not need to change this setting often.",
            "stability": "experimental",
            "summary": "Build image to use in CodeBuild."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/codebuild.ts",
            "line": 48
          },
          "name": "buildImage",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_codebuild.IBuildImage"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "{@link ComputeType#SMALL }",
            "remarks": "See the {@link ComputeType} enum for the possible values.",
            "stability": "experimental",
            "summary": "The type of compute to use for this build."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/codebuild.ts",
            "line": 39
          },
          "name": "computeType",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_codebuild.ComputeType"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Duration.hours(1)",
            "remarks": "For valid values, see the timeoutInMinutes field in the AWS\nCodeBuild User Guide.",
            "stability": "experimental",
            "summary": "The number of minutes after which AWS CodeBuild stops the build if it's not complete."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/codebuild.ts",
            "line": 57
          },
          "name": "timeout",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.Duration"
          }
        }
      ],
      "symbolId": "src/image-builders/codebuild:CodeBuildRunnerImageBuilderProps"
    },
    "@cloudsnorkel/cdk-github-runners.CodeBuildRunnerProvider": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "base": "constructs.Construct",
      "docs": {
        "remarks": "Creates a project that gets started for each job.\n\nThis construct is not meant to be used by itself. It should be passed in the providers property for GitHubRunners.",
        "stability": "experimental",
        "summary": "GitHub Actions runner provider using CodeBuild to execute jobs."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.CodeBuildRunnerProvider",
      "initializer": {
        "docs": {
          "stability": "experimental"
        },
        "locationInModule": {
          "filename": "src/providers/codebuild.ts",
          "line": 242
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          },
          {
            "name": "props",
            "optional": true,
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.CodeBuildRunnerProviderProps"
            }
          }
        ]
      },
      "interfaces": [
        "@cloudsnorkel/cdk-github-runners.IRunnerProvider"
      ],
      "kind": "class",
      "locationInModule": {
        "filename": "src/providers/codebuild.ts",
        "line": 139
      },
      "methods": [
        {
          "docs": {
            "remarks": "You can customize the OS, architecture, VPC, subnet, security groups, etc. by passing in props.\n\nYou can add components to the image builder by calling `imageBuilder.addComponent()`.\n\nThe default OS is Ubuntu running on x64 architecture.\n\nIncluded components:\n * `RunnerImageComponent.requiredPackages()`\n * `RunnerImageComponent.runnerUser()`\n * `RunnerImageComponent.git()`\n * `RunnerImageComponent.githubCli()`\n * `RunnerImageComponent.awsCli()`\n * `RunnerImageComponent.docker()`\n * `RunnerImageComponent.githubRunner()`",
            "stability": "experimental",
            "summary": "Create new image builder that builds CodeBuild specific runner images."
          },
          "locationInModule": {
            "filename": "src/providers/codebuild.ts",
            "line": 188
          },
          "name": "imageBuilder",
          "parameters": [
            {
              "name": "scope",
              "type": {
                "fqn": "constructs.Construct"
              }
            },
            {
              "name": "id",
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "props",
              "optional": true,
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageBuilderProps"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.IConfigurableRunnerImageBuilder"
            }
          },
          "static": true
        },
        {
          "docs": {
            "remarks": "Called by GithubRunners and shouldn't be called manually.",
            "stability": "experimental",
            "summary": "Generate step function task(s) to start a new runner."
          },
          "locationInModule": {
            "filename": "src/providers/codebuild.ts",
            "line": 388
          },
          "name": "getStepFunctionTask",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
          "parameters": [
            {
              "docs": {
                "summary": "workflow job details."
              },
              "name": "parameters",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.RunnerRuntimeParameters"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "aws-cdk-lib.aws_stepfunctions.IChainable"
            }
          }
        },
        {
          "docs": {
            "remarks": "This can be used to add additional policy\nstatements to the state machine role that are not automatically added by the task returned from {@link getStepFunctionTask}.",
            "stability": "experimental",
            "summary": "An optional method that modifies the role of the state machine after all the tasks have been generated."
          },
          "locationInModule": {
            "filename": "src/providers/codebuild.ts",
            "line": 433
          },
          "name": "grantStateMachine",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
          "parameters": [
            {
              "name": "_",
              "type": {
                "fqn": "aws-cdk-lib.aws_iam.IGrantable"
              }
            }
          ]
        },
        {
          "docs": {
            "stability": "experimental"
          },
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 528
          },
          "name": "labelsFromProperties",
          "parameters": [
            {
              "name": "defaultLabel",
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "propsLabel",
              "optional": true,
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "propsLabels",
              "optional": true,
              "type": {
                "collection": {
                  "elementtype": {
                    "primitive": "string"
                  },
                  "kind": "array"
                }
              }
            }
          ],
          "protected": true,
          "returns": {
            "type": {
              "collection": {
                "elementtype": {
                  "primitive": "string"
                },
                "kind": "array"
              }
            }
          }
        },
        {
          "docs": {
            "remarks": "Also gives the status function any needed permissions to query the Docker image or AMI.",
            "stability": "experimental",
            "summary": "Return status of the runner provider to be used in the main status function."
          },
          "locationInModule": {
            "filename": "src/providers/codebuild.ts",
            "line": 436
          },
          "name": "status",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
          "parameters": [
            {
              "name": "statusFunctionRole",
              "type": {
                "fqn": "aws-cdk-lib.aws_iam.IGrantable"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.IRunnerProviderStatus"
            }
          }
        }
      ],
      "name": "CodeBuildRunnerProvider",
      "properties": [
        {
          "const": true,
          "docs": {
            "deprecated": "Use `imageBuilder()` instead.",
            "remarks": "Use this Dockerfile unless you need to customize it further than allowed by hooks.\n\nAvailable build arguments that can be set in the image builder:\n* `BASE_IMAGE` sets the `FROM` line. This should be an Ubuntu compatible image.\n* `EXTRA_PACKAGES` can be used to install additional packages.\n* `DOCKER_CHANNEL` overrides the channel from which Docker will be downloaded. Defaults to `\"stable\"`.\n* `DIND_COMMIT` overrides the commit where dind is found.\n* `DOCKER_VERSION` overrides the installed Docker version.\n* `DOCKER_COMPOSE_VERSION` overrides the installed docker-compose version.",
            "stability": "deprecated",
            "summary": "Path to Dockerfile for Linux ARM64 with all the requirements for CodeBuild runner."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/codebuild.ts",
            "line": 168
          },
          "name": "LINUX_ARM64_DOCKERFILE_PATH",
          "static": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "const": true,
          "docs": {
            "deprecated": "Use `imageBuilder()` instead.",
            "remarks": "Use this Dockerfile unless you need to customize it further than allowed by hooks.\n\nAvailable build arguments that can be set in the image builder:\n* `BASE_IMAGE` sets the `FROM` line. This should be an Ubuntu compatible image.\n* `EXTRA_PACKAGES` can be used to install additional packages.\n* `DOCKER_CHANNEL` overrides the channel from which Docker will be downloaded. Defaults to `\"stable\"`.\n* `DIND_COMMIT` overrides the commit where dind is found.\n* `DOCKER_VERSION` overrides the installed Docker version.\n* `DOCKER_COMPOSE_VERSION` overrides the installed docker-compose version.",
            "stability": "deprecated",
            "summary": "Path to Dockerfile for Linux x64 with all the requirements for CodeBuild runner."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/codebuild.ts",
            "line": 153
          },
          "name": "LINUX_X64_DOCKERFILE_PATH",
          "static": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "The network connections associated with this resource."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/codebuild.ts",
            "line": 457
          },
          "name": "connections",
          "overrides": "aws-cdk-lib.aws_ec2.IConnectable",
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.Connections"
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "Grant principal used to add permissions to the runner role."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/codebuild.ts",
            "line": 218
          },
          "name": "grantPrincipal",
          "overrides": "aws-cdk-lib.aws_iam.IGrantable",
          "type": {
            "fqn": "aws-cdk-lib.aws_iam.IPrincipal"
          }
        },
        {
          "docs": {
            "remarks": "The image is built by an image builder and is specific to CodeBuild.",
            "stability": "experimental",
            "summary": "Docker image loaded with GitHub Actions Runner and its prerequisites."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/codebuild.ts",
            "line": 223
          },
          "name": "image",
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImage"
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "Labels associated with this provider."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/codebuild.ts",
            "line": 213
          },
          "name": "labels",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        },
        {
          "docs": {
            "remarks": "Note that this is not the job log, but the runner itself. It will not contain output from the GitHub Action but only metadata on its execution.",
            "stability": "experimental",
            "summary": "Log group where provided runners will save their logs."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/codebuild.ts",
            "line": 230
          },
          "name": "logGroup",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
          "type": {
            "fqn": "aws-cdk-lib.aws_logs.ILogGroup"
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "CodeBuild project hosting the runner."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/codebuild.ts",
            "line": 208
          },
          "name": "project",
          "type": {
            "fqn": "aws-cdk-lib.aws_codebuild.Project"
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "List of step functions errors that should be retried."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/codebuild.ts",
            "line": 232
          },
          "name": "retryableErrors",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        }
      ],
      "symbolId": "src/providers/codebuild:CodeBuildRunnerProvider"
    },
    "@cloudsnorkel/cdk-github-runners.CodeBuildRunnerProviderProps": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "datatype": true,
      "docs": {
        "stability": "experimental"
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.CodeBuildRunnerProviderProps",
      "interfaces": [
        "@cloudsnorkel/cdk-github-runners.RunnerProviderProps"
      ],
      "kind": "interface",
      "locationInModule": {
        "filename": "src/providers/codebuild.ts",
        "line": 31
      },
      "name": "CodeBuildRunnerProviderProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "default": "{@link ComputeType#SMALL }",
            "remarks": "See the {@link ComputeType} enum for the possible values.",
            "stability": "experimental",
            "summary": "The type of compute to use for this build."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/codebuild.ts",
            "line": 112
          },
          "name": "computeType",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_codebuild.ComputeType"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "true",
            "remarks": "Disabling this can\nspeed up provisioning of CodeBuild runners. If you don't intend on running or building Docker images, disable this for faster start-up times.",
            "stability": "experimental",
            "summary": "Support building and running Docker images by enabling Docker-in-Docker (dind) and the required CodeBuild privileged mode."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/codebuild.ts",
            "line": 129
          },
          "name": "dockerInDocker",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "undefined",
            "remarks": "If specified, the runner will be registered with this group name. Setting a runner group can help managing access to self-hosted runners. It\nrequires a paid GitHub account.\n\nThe group must exist or the runner will not start.\n\nUsers will still be able to trigger this runner with the correct labels. But the runner will only be able to run jobs from repos allowed to use the group.",
            "stability": "experimental",
            "summary": "GitHub Actions runner group name."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/codebuild.ts",
            "line": 74
          },
          "name": "group",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "CodeBuildRunnerProvider.imageBuilder()",
            "remarks": "The image builder must contain the {@link RunnerImageComponent.docker} component unless `dockerInDocker` is set to false.\n\nThe image builder determines the OS and architecture of the runner.",
            "stability": "experimental",
            "summary": "Runner image builder used to build Docker images containing GitHub Runner and all requirements."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/codebuild.ts",
            "line": 41
          },
          "name": "imageBuilder",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.IRunnerImageBuilder"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "undefined",
            "deprecated": "use {@link labels } instead",
            "stability": "deprecated",
            "summary": "GitHub Actions label used for this provider."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/codebuild.ts",
            "line": 49
          },
          "name": "label",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "['codebuild']",
            "remarks": "These labels are used to identify which provider should spawn a new on-demand runner. Every job sends a webhook with the labels it's looking for\nbased on runs-on. We match the labels from the webhook with the labels specified here. If all the labels specified here are present in the\njob's labels, this provider will be chosen and spawn a new runner.",
            "stability": "experimental",
            "summary": "GitHub Actions labels used for this provider."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/codebuild.ts",
            "line": 60
          },
          "name": "labels",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "public project with no security group",
            "deprecated": "use {@link securityGroups }",
            "stability": "deprecated",
            "summary": "Security group to assign to this instance."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/codebuild.ts",
            "line": 90
          },
          "name": "securityGroup",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.ISecurityGroup"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "a new security group, if {@link vpc } is used",
            "stability": "experimental",
            "summary": "Security groups to assign to this instance."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/codebuild.ts",
            "line": 97
          },
          "name": "securityGroups",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_ec2.ISecurityGroup"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "no subnet",
            "stability": "experimental",
            "summary": "Where to place the network interfaces within the VPC."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/codebuild.ts",
            "line": 104
          },
          "name": "subnetSelection",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.SubnetSelection"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Duration.hours(1)",
            "remarks": "For valid values, see the timeoutInMinutes field in the AWS\nCodeBuild User Guide.",
            "stability": "experimental",
            "summary": "The number of minutes after which AWS CodeBuild stops the build if it's not complete."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/codebuild.ts",
            "line": 121
          },
          "name": "timeout",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.Duration"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "no VPC",
            "stability": "experimental",
            "summary": "VPC to launch the runners in."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/codebuild.ts",
            "line": 81
          },
          "name": "vpc",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IVpc"
          }
        }
      ],
      "symbolId": "src/providers/codebuild:CodeBuildRunnerProviderProps"
    },
    "@cloudsnorkel/cdk-github-runners.ContainerImageBuilder": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "base": "constructs.Construct",
      "docs": {
        "deprecated": "use RunnerImageBuilder",
        "remarks": "Builders can be used with runner providers.\n\nThe CodeBuild builder is better and faster. Only use this one if you have no choice. For example, if you need Windows containers.\n\nEach builder re-runs automatically at a set interval to make sure the images contain the latest versions of everything.\n\nYou can create an instance of this construct to customize the image used to spin-up runners. Some runner providers may require custom components. Check the runner provider documentation. The default components work with CodeBuild and Fargate.\n\nFor example, to set a specific runner version, rebuild the image every 2 weeks, and add a few packages for the Fargate provider, use:\n\n```\nconst builder = new ContainerImageBuilder(this, 'Builder', {\n    runnerVersion: RunnerVersion.specific('2.293.0'),\n    rebuildInterval: Duration.days(14),\n});\nnew CodeBuildRunnerProvider(this, 'CodeBuild provider', {\n    labels: ['custom-codebuild'],\n    imageBuilder: builder,\n});\n```",
        "stability": "deprecated",
        "summary": "An image builder that uses AWS Image Builder to build Docker images pre-baked with all the GitHub Actions runner requirements."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.ContainerImageBuilder",
      "initializer": {
        "docs": {
          "stability": "deprecated"
        },
        "locationInModule": {
          "filename": "src/image-builders/aws-image-builder/deprecated/container.ts",
          "line": 155
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          },
          {
            "name": "props",
            "optional": true,
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.ContainerImageBuilderProps"
            }
          }
        ]
      },
      "interfaces": [
        "@cloudsnorkel/cdk-github-runners.IRunnerImageBuilder"
      ],
      "kind": "class",
      "locationInModule": {
        "filename": "src/image-builders/aws-image-builder/deprecated/container.ts",
        "line": 150
      },
      "methods": [
        {
          "docs": {
            "stability": "deprecated",
            "summary": "Add a component to be installed."
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/container.ts",
            "line": 218
          },
          "name": "addComponent",
          "parameters": [
            {
              "name": "component",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.ImageBuilderComponent"
              }
            }
          ]
        },
        {
          "docs": {
            "remarks": "All first party Dockerfiles support this. Others may not.",
            "stability": "deprecated",
            "summary": "Add extra trusted certificates. This helps deal with self-signed certificates for GitHub Enterprise Server."
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/container.ts",
            "line": 235
          },
          "name": "addExtraCertificates",
          "parameters": [
            {
              "docs": {
                "summary": "path to directory containing a file called certs.pem containing all the required certificates."
              },
              "name": "path",
              "type": {
                "primitive": "string"
              }
            }
          ]
        },
        {
          "docs": {
            "remarks": "Anything that ends up with a launch template pointing to an AMI that runs GitHub self-hosted runners can be used. A simple implementation could even point to an existing AMI and nothing else.\n\nThe AMI can be further updated over time manually or using a schedule as long as it is always written to the same launch template.",
            "stability": "deprecated",
            "summary": "Build and return an AMI with GitHub Runner installed in it."
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/container.ts",
            "line": 315
          },
          "name": "bindAmi",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerImageBuilder",
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.RunnerAmi"
            }
          }
        },
        {
          "docs": {
            "stability": "deprecated",
            "summary": "Called by IRunnerProvider to finalize settings and create the image builder."
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/container.ts",
            "line": 248
          },
          "name": "bindDockerImage",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerImageBuilder",
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImage"
            }
          }
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/common.ts",
            "line": 126
          },
          "name": "createImage",
          "parameters": [
            {
              "name": "infra",
              "type": {
                "fqn": "aws-cdk-lib.aws_imagebuilder.CfnInfrastructureConfiguration"
              }
            },
            {
              "name": "dist",
              "type": {
                "fqn": "aws-cdk-lib.aws_imagebuilder.CfnDistributionConfiguration"
              }
            },
            {
              "name": "log",
              "type": {
                "fqn": "aws-cdk-lib.aws_logs.LogGroup"
              }
            },
            {
              "name": "imageRecipeArn",
              "optional": true,
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "containerRecipeArn",
              "optional": true,
              "type": {
                "primitive": "string"
              }
            }
          ],
          "protected": true,
          "returns": {
            "type": {
              "fqn": "aws-cdk-lib.aws_imagebuilder.CfnImage"
            }
          }
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/common.ts",
            "line": 97
          },
          "name": "createInfrastructure",
          "parameters": [
            {
              "name": "managedPolicies",
              "type": {
                "collection": {
                  "elementtype": {
                    "fqn": "aws-cdk-lib.aws_iam.IManagedPolicy"
                  },
                  "kind": "array"
                }
              }
            }
          ],
          "protected": true,
          "returns": {
            "type": {
              "fqn": "aws-cdk-lib.aws_imagebuilder.CfnInfrastructureConfiguration"
            }
          }
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/common.ts",
            "line": 89
          },
          "name": "createLog",
          "parameters": [
            {
              "name": "recipeName",
              "type": {
                "primitive": "string"
              }
            }
          ],
          "protected": true,
          "returns": {
            "type": {
              "fqn": "aws-cdk-lib.aws_logs.LogGroup"
            }
          }
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/common.ts",
            "line": 143
          },
          "name": "createPipeline",
          "parameters": [
            {
              "name": "infra",
              "type": {
                "fqn": "aws-cdk-lib.aws_imagebuilder.CfnInfrastructureConfiguration"
              }
            },
            {
              "name": "dist",
              "type": {
                "fqn": "aws-cdk-lib.aws_imagebuilder.CfnDistributionConfiguration"
              }
            },
            {
              "name": "log",
              "type": {
                "fqn": "aws-cdk-lib.aws_logs.LogGroup"
              }
            },
            {
              "name": "imageRecipeArn",
              "optional": true,
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "containerRecipeArn",
              "optional": true,
              "type": {
                "primitive": "string"
              }
            }
          ],
          "protected": true,
          "returns": {
            "type": {
              "fqn": "aws-cdk-lib.aws_imagebuilder.CfnImagePipeline"
            }
          }
        },
        {
          "docs": {
            "remarks": "Useful for required system settings like certificates or proxy settings.",
            "stability": "deprecated",
            "summary": "Add a component to be installed before any other components."
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/container.ts",
            "line": 204
          },
          "name": "prependComponent",
          "parameters": [
            {
              "name": "component",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.ImageBuilderComponent"
              }
            }
          ]
        }
      ],
      "name": "ContainerImageBuilder",
      "properties": [
        {
          "docs": {
            "stability": "deprecated"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/common.ts",
            "line": 12
          },
          "name": "architecture",
          "protected": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.Architecture"
          }
        },
        {
          "docs": {
            "stability": "deprecated",
            "summary": "The network connections associated with this resource."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/common.ts",
            "line": 173
          },
          "name": "connections",
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.Connections"
          }
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/common.ts",
            "line": 16
          },
          "name": "description",
          "protected": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/common.ts",
            "line": 13
          },
          "name": "os",
          "protected": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.Os"
          }
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/common.ts",
            "line": 14
          },
          "name": "platform",
          "protected": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/container.ts",
            "line": 151
          },
          "name": "repository",
          "type": {
            "fqn": "aws-cdk-lib.aws_ecr.IRepository"
          }
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/common.ts",
            "line": 18
          },
          "name": "runnerVersion",
          "protected": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.RunnerVersion"
          }
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/common.ts",
            "line": 20
          },
          "name": "components",
          "protected": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "@cloudsnorkel/cdk-github-runners.ImageBuilderComponent"
              },
              "kind": "array"
            }
          }
        }
      ],
      "symbolId": "src/image-builders/aws-image-builder/deprecated/container:ContainerImageBuilder"
    },
    "@cloudsnorkel/cdk-github-runners.ContainerImageBuilderProps": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "datatype": true,
      "docs": {
        "stability": "experimental",
        "summary": "Properties for ContainerImageBuilder construct."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.ContainerImageBuilderProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/image-builders/aws-image-builder/deprecated/container.ts",
        "line": 32
      },
      "name": "ContainerImageBuilderProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "default": "Architecture.X86_64",
            "stability": "experimental",
            "summary": "Image architecture."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/container.ts",
            "line": 38
          },
          "name": "architecture",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.Architecture"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "m6i.large",
            "stability": "experimental",
            "summary": "The instance type used to build the image."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/container.ts",
            "line": 105
          },
          "name": "instanceType",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.InstanceType"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "RemovalPolicy.DESTROY",
            "remarks": "If deployment fails on the custom resource, try setting this to `RemovalPolicy.RETAIN`. This way the CodeBuild logs can still be viewed, and you can see why the build failed.\n\nWe try to not leave anything behind when removed. But sometimes a log staying behind is useful.",
            "stability": "experimental",
            "summary": "Removal policy for logs of image builds."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/container.ts",
            "line": 123
          },
          "name": "logRemovalPolicy",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.RemovalPolicy"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "logs.RetentionDays.ONE_MONTH",
            "remarks": "When updating\nthis property, unsetting it doesn't remove the log retention policy. To\nremove the retention policy, set the value to `INFINITE`.",
            "stability": "experimental",
            "summary": "The number of days log events are kept in CloudWatch Logs."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/container.ts",
            "line": 114
          },
          "name": "logRetention",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_logs.RetentionDays"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "OS.LINUX",
            "stability": "experimental",
            "summary": "Image OS."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/container.ts",
            "line": 45
          },
          "name": "os",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.Os"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "'mcr.microsoft.com/windows/servercore:ltsc2019-amd64'",
            "remarks": "You can use either Image Builder image ARN or public registry image.",
            "stability": "experimental",
            "summary": "Parent image for the new Docker Image."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/container.ts",
            "line": 52
          },
          "name": "parentImage",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Duration.days(7)",
            "remarks": "Useful for keeping the image up-do-date with the latest GitHub runner version and latest OS updates.\n\nSet to zero to disable.",
            "stability": "experimental",
            "summary": "Schedule the image to be rebuilt every given interval."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/container.ts",
            "line": 68
          },
          "name": "rebuildInterval",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.Duration"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "latest version available",
            "stability": "experimental",
            "summary": "Version of GitHub Runners to install."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/container.ts",
            "line": 59
          },
          "name": "runnerVersion",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.RunnerVersion"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "new security group",
            "deprecated": "use {@link securityGroups }",
            "stability": "deprecated",
            "summary": "Security group to assign to launched builder instances."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/container.ts",
            "line": 84
          },
          "name": "securityGroup",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.ISecurityGroup"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "new security group",
            "stability": "experimental",
            "summary": "Security groups to assign to launched builder instances."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/container.ts",
            "line": 91
          },
          "name": "securityGroups",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_ec2.ISecurityGroup"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "default VPC subnet",
            "stability": "experimental",
            "summary": "Where to place the network interfaces within the VPC."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/container.ts",
            "line": 98
          },
          "name": "subnetSelection",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.SubnetSelection"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "default account VPC",
            "stability": "experimental",
            "summary": "VPC to launch the runners in."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/container.ts",
            "line": 75
          },
          "name": "vpc",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IVpc"
          }
        }
      ],
      "symbolId": "src/image-builders/aws-image-builder/deprecated/container:ContainerImageBuilderProps"
    },
    "@cloudsnorkel/cdk-github-runners.Ec2Runner": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "base": "@cloudsnorkel/cdk-github-runners.Ec2RunnerProvider",
      "docs": {
        "deprecated": "use {@link Ec2RunnerProvider }",
        "stability": "deprecated"
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.Ec2Runner",
      "initializer": {
        "docs": {
          "stability": "experimental"
        },
        "locationInModule": {
          "filename": "src/providers/ec2.ts",
          "line": 380
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          },
          {
            "name": "props",
            "optional": true,
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.Ec2RunnerProviderProps"
            }
          }
        ]
      },
      "kind": "class",
      "locationInModule": {
        "filename": "src/providers/ec2.ts",
        "line": 621
      },
      "name": "Ec2Runner",
      "symbolId": "src/providers/ec2:Ec2Runner"
    },
    "@cloudsnorkel/cdk-github-runners.Ec2RunnerProvider": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "base": "constructs.Construct",
      "docs": {
        "remarks": "This construct is not meant to be used by itself. It should be passed in the providers property for GitHubRunners.",
        "stability": "experimental",
        "summary": "GitHub Actions runner provider using EC2 to execute jobs."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.Ec2RunnerProvider",
      "initializer": {
        "docs": {
          "stability": "experimental"
        },
        "locationInModule": {
          "filename": "src/providers/ec2.ts",
          "line": 380
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          },
          {
            "name": "props",
            "optional": true,
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.Ec2RunnerProviderProps"
            }
          }
        ]
      },
      "interfaces": [
        "@cloudsnorkel/cdk-github-runners.IRunnerProvider"
      ],
      "kind": "class",
      "locationInModule": {
        "filename": "src/providers/ec2.ts",
        "line": 308
      },
      "methods": [
        {
          "docs": {
            "remarks": "You can customize the OS, architecture, VPC, subnet, security groups, etc. by passing in props.\n\nYou can add components to the image builder by calling `imageBuilder.addComponent()`.\n\nThe default OS is Ubuntu running on x64 architecture.\n\nIncluded components:\n * `RunnerImageComponent.requiredPackages()`\n * `RunnerImageComponent.runnerUser()`\n * `RunnerImageComponent.git()`\n * `RunnerImageComponent.githubCli()`\n * `RunnerImageComponent.awsCli()`\n * `RunnerImageComponent.docker()`\n * `RunnerImageComponent.githubRunner()`",
            "stability": "experimental",
            "summary": "Create new image builder that builds EC2 specific runner images."
          },
          "locationInModule": {
            "filename": "src/providers/ec2.ts",
            "line": 327
          },
          "name": "imageBuilder",
          "parameters": [
            {
              "name": "scope",
              "type": {
                "fqn": "constructs.Construct"
              }
            },
            {
              "name": "id",
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "props",
              "optional": true,
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageBuilderProps"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.IConfigurableRunnerImageBuilder"
            }
          },
          "static": true
        },
        {
          "docs": {
            "remarks": "Called by GithubRunners and shouldn't be called manually.",
            "stability": "experimental",
            "summary": "Generate step function task(s) to start a new runner."
          },
          "locationInModule": {
            "filename": "src/providers/ec2.ts",
            "line": 443
          },
          "name": "getStepFunctionTask",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
          "parameters": [
            {
              "docs": {
                "summary": "workflow job details."
              },
              "name": "parameters",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.RunnerRuntimeParameters"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "aws-cdk-lib.aws_stepfunctions.IChainable"
            }
          }
        },
        {
          "docs": {
            "remarks": "This can be used to add additional policy\nstatements to the state machine role that are not automatically added by the task returned from {@link getStepFunctionTask}.",
            "stability": "experimental",
            "summary": "An optional method that modifies the role of the state machine after all the tasks have been generated."
          },
          "locationInModule": {
            "filename": "src/providers/ec2.ts",
            "line": 561
          },
          "name": "grantStateMachine",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
          "parameters": [
            {
              "name": "stateMachineRole",
              "type": {
                "fqn": "aws-cdk-lib.aws_iam.IGrantable"
              }
            }
          ]
        },
        {
          "docs": {
            "stability": "experimental"
          },
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 528
          },
          "name": "labelsFromProperties",
          "parameters": [
            {
              "name": "defaultLabel",
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "propsLabel",
              "optional": true,
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "propsLabels",
              "optional": true,
              "type": {
                "collection": {
                  "elementtype": {
                    "primitive": "string"
                  },
                  "kind": "array"
                }
              }
            }
          ],
          "protected": true,
          "returns": {
            "type": {
              "collection": {
                "elementtype": {
                  "primitive": "string"
                },
                "kind": "array"
              }
            }
          }
        },
        {
          "docs": {
            "remarks": "Also gives the status function any needed permissions to query the Docker image or AMI.",
            "stability": "experimental",
            "summary": "Return status of the runner provider to be used in the main status function."
          },
          "locationInModule": {
            "filename": "src/providers/ec2.ts",
            "line": 591
          },
          "name": "status",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
          "parameters": [
            {
              "name": "statusFunctionRole",
              "type": {
                "fqn": "aws-cdk-lib.aws_iam.IGrantable"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.IRunnerProviderStatus"
            }
          }
        }
      ],
      "name": "Ec2RunnerProvider",
      "properties": [
        {
          "docs": {
            "stability": "experimental",
            "summary": "The network connections associated with this resource."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ec2.ts",
            "line": 613
          },
          "name": "connections",
          "overrides": "aws-cdk-lib.aws_ec2.IConnectable",
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.Connections"
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "Grant principal used to add permissions to the runner role."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ec2.ts",
            "line": 353
          },
          "name": "grantPrincipal",
          "overrides": "aws-cdk-lib.aws_iam.IGrantable",
          "type": {
            "fqn": "aws-cdk-lib.aws_iam.IPrincipal"
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "Labels associated with this provider."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ec2.ts",
            "line": 348
          },
          "name": "labels",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        },
        {
          "docs": {
            "remarks": "Note that this is not the job log, but the runner itself. It will not contain output from the GitHub Action but only metadata on its execution.",
            "stability": "experimental",
            "summary": "Log group where provided runners will save their logs."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ec2.ts",
            "line": 360
          },
          "name": "logGroup",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
          "type": {
            "fqn": "aws-cdk-lib.aws_logs.ILogGroup"
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "List of step functions errors that should be retried."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ec2.ts",
            "line": 362
          },
          "name": "retryableErrors",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        }
      ],
      "symbolId": "src/providers/ec2:Ec2RunnerProvider"
    },
    "@cloudsnorkel/cdk-github-runners.Ec2RunnerProviderProps": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "datatype": true,
      "docs": {
        "stability": "experimental",
        "summary": "Properties for {@link Ec2RunnerProvider} construct."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.Ec2RunnerProviderProps",
      "interfaces": [
        "@cloudsnorkel/cdk-github-runners.RunnerProviderProps"
      ],
      "kind": "interface",
      "locationInModule": {
        "filename": "src/providers/ec2.ts",
        "line": 190
      },
      "name": "Ec2RunnerProviderProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "deprecated": "use imageBuilder",
            "stability": "deprecated"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ec2.ts",
            "line": 203
          },
          "name": "amiBuilder",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.IRunnerImageBuilder"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "undefined",
            "remarks": "If specified, the runner will be registered with this group name. Setting a runner group can help managing access to self-hosted runners. It\nrequires a paid GitHub account.\n\nThe group must exist or the runner will not start.\n\nUsers will still be able to trigger this runner with the correct labels. But the runner will only be able to run jobs from repos allowed to use the group.",
            "stability": "experimental",
            "summary": "GitHub Actions runner group name."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ec2.ts",
            "line": 228
          },
          "name": "group",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Ec2RunnerProvider.imageBuilder()",
            "remarks": "The image builder determines the OS and architecture of the runner.",
            "stability": "experimental",
            "summary": "Runner image builder used to build AMI containing GitHub Runner and all requirements."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ec2.ts",
            "line": 198
          },
          "name": "imageBuilder",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.IRunnerImageBuilder"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "m6i.large",
            "stability": "experimental",
            "summary": "Instance type for launched runner instances."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ec2.ts",
            "line": 235
          },
          "name": "instanceType",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.InstanceType"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "['ec2']",
            "remarks": "These labels are used to identify which provider should spawn a new on-demand runner. Every job sends a webhook with the labels it's looking for\nbased on runs-on. We match the labels from the webhook with the labels specified here. If all the labels specified here are present in the\njob's labels, this provider will be chosen and spawn a new runner.",
            "stability": "experimental",
            "summary": "GitHub Actions labels used for this provider."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ec2.ts",
            "line": 214
          },
          "name": "labels",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "a new security group",
            "deprecated": "use {@link securityGroups }",
            "stability": "deprecated",
            "summary": "Security Group to assign to launched runner instances."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ec2.ts",
            "line": 256
          },
          "name": "securityGroup",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.ISecurityGroup"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "a new security group",
            "stability": "experimental",
            "summary": "Security groups to assign to launched runner instances."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ec2.ts",
            "line": 263
          },
          "name": "securityGroups",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_ec2.ISecurityGroup"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "false",
            "remarks": "Spot instances are cheaper but not always available and can be stopped prematurely.",
            "stability": "experimental",
            "summary": "Use spot instances to save money."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ec2.ts",
            "line": 293
          },
          "name": "spot",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "no max price (you will pay current spot price)",
            "stability": "experimental",
            "summary": "Set a maximum price for spot instances."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ec2.ts",
            "line": 300
          },
          "name": "spotMaxPrice",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Options for runner instance storage volume."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ec2.ts",
            "line": 247
          },
          "name": "storageOptions",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.StorageOptions"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "30GB",
            "remarks": "This modifies the boot volume size and doesn't add any additional volumes.",
            "stability": "experimental",
            "summary": "Size of volume available for launched runner instances."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ec2.ts",
            "line": 242
          },
          "name": "storageSize",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.Size"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "default subnet of account's default VPC",
            "deprecated": "use {@link vpc } and {@link subnetSelection }",
            "stability": "deprecated",
            "summary": "Subnet where the runner instances will be launched."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ec2.ts",
            "line": 272
          },
          "name": "subnet",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.ISubnet"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "default VPC subnet",
            "remarks": "Only the first matched subnet will be used.",
            "stability": "experimental",
            "summary": "Where to place the network interfaces within the VPC."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ec2.ts",
            "line": 286
          },
          "name": "subnetSelection",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.SubnetSelection"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "default account VPC",
            "stability": "experimental",
            "summary": "VPC where runner instances will be launched."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ec2.ts",
            "line": 279
          },
          "name": "vpc",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IVpc"
          }
        }
      ],
      "symbolId": "src/providers/ec2:Ec2RunnerProviderProps"
    },
    "@cloudsnorkel/cdk-github-runners.EcsRunnerProvider": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "base": "constructs.Construct",
      "docs": {
        "remarks": "ECS can be useful when you want more control of the infrastructure running the GitHub Actions Docker containers. You can control the autoscaling\ngroup to scale down to zero during the night and scale up during work hours. This way you can still save money, but have to wait less for\ninfrastructure to spin up.\n\nThis construct is not meant to be used by itself. It should be passed in the providers property for GitHubRunners.",
        "stability": "experimental",
        "summary": "GitHub Actions runner provider using ECS on EC2 to execute jobs."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.EcsRunnerProvider",
      "initializer": {
        "docs": {
          "stability": "experimental"
        },
        "locationInModule": {
          "filename": "src/providers/ecs.ts",
          "line": 350
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          },
          {
            "name": "props",
            "optional": true,
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.EcsRunnerProviderProps"
            }
          }
        ]
      },
      "interfaces": [
        "@cloudsnorkel/cdk-github-runners.IRunnerProvider"
      ],
      "kind": "class",
      "locationInModule": {
        "filename": "src/providers/ecs.ts",
        "line": 230
      },
      "methods": [
        {
          "docs": {
            "remarks": "You can customize the OS, architecture, VPC, subnet, security groups, etc. by passing in props.\n\nYou can add components to the image builder by calling `imageBuilder.addComponent()`.\n\nThe default OS is Ubuntu running on x64 architecture.\n\nIncluded components:\n * `RunnerImageComponent.requiredPackages()`\n * `RunnerImageComponent.runnerUser()`\n * `RunnerImageComponent.git()`\n * `RunnerImageComponent.githubCli()`\n * `RunnerImageComponent.awsCli()`\n * `RunnerImageComponent.docker()`\n * `RunnerImageComponent.githubRunner()`",
            "stability": "experimental",
            "summary": "Create new image builder that builds ECS specific runner images."
          },
          "locationInModule": {
            "filename": "src/providers/ecs.ts",
            "line": 249
          },
          "name": "imageBuilder",
          "parameters": [
            {
              "name": "scope",
              "type": {
                "fqn": "constructs.Construct"
              }
            },
            {
              "name": "id",
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "props",
              "optional": true,
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageBuilderProps"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.IConfigurableRunnerImageBuilder"
            }
          },
          "static": true
        },
        {
          "docs": {
            "remarks": "Called by GithubRunners and shouldn't be called manually.",
            "stability": "experimental",
            "summary": "Generate step function task(s) to start a new runner."
          },
          "locationInModule": {
            "filename": "src/providers/ecs.ts",
            "line": 571
          },
          "name": "getStepFunctionTask",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
          "parameters": [
            {
              "docs": {
                "summary": "workflow job details."
              },
              "name": "parameters",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.RunnerRuntimeParameters"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "aws-cdk-lib.aws_stepfunctions.IChainable"
            }
          }
        },
        {
          "docs": {
            "remarks": "This can be used to add additional policy\nstatements to the state machine role that are not automatically added by the task returned from {@link getStepFunctionTask}.",
            "stability": "experimental",
            "summary": "An optional method that modifies the role of the state machine after all the tasks have been generated."
          },
          "locationInModule": {
            "filename": "src/providers/ecs.ts",
            "line": 627
          },
          "name": "grantStateMachine",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
          "parameters": [
            {
              "name": "_",
              "type": {
                "fqn": "aws-cdk-lib.aws_iam.IGrantable"
              }
            }
          ]
        },
        {
          "docs": {
            "stability": "experimental"
          },
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 528
          },
          "name": "labelsFromProperties",
          "parameters": [
            {
              "name": "defaultLabel",
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "propsLabel",
              "optional": true,
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "propsLabels",
              "optional": true,
              "type": {
                "collection": {
                  "elementtype": {
                    "primitive": "string"
                  },
                  "kind": "array"
                }
              }
            }
          ],
          "protected": true,
          "returns": {
            "type": {
              "collection": {
                "elementtype": {
                  "primitive": "string"
                },
                "kind": "array"
              }
            }
          }
        },
        {
          "docs": {
            "remarks": "Also gives the status function any needed permissions to query the Docker image or AMI.",
            "stability": "experimental",
            "summary": "Return status of the runner provider to be used in the main status function."
          },
          "locationInModule": {
            "filename": "src/providers/ecs.ts",
            "line": 630
          },
          "name": "status",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
          "parameters": [
            {
              "name": "statusFunctionRole",
              "type": {
                "fqn": "aws-cdk-lib.aws_iam.IGrantable"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.IRunnerProviderStatus"
            }
          }
        }
      ],
      "name": "EcsRunnerProvider",
      "properties": [
        {
          "docs": {
            "stability": "experimental",
            "summary": "The network connections associated with this resource."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ecs.ts",
            "line": 314
          },
          "name": "connections",
          "overrides": "aws-cdk-lib.aws_ec2.IConnectable",
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.Connections"
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "Grant principal used to add permissions to the runner role."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ecs.ts",
            "line": 309
          },
          "name": "grantPrincipal",
          "overrides": "aws-cdk-lib.aws_iam.IGrantable",
          "type": {
            "fqn": "aws-cdk-lib.aws_iam.IPrincipal"
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "Labels associated with this provider."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ecs.ts",
            "line": 289
          },
          "name": "labels",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        },
        {
          "docs": {
            "remarks": "Note that this is not the job log, but the runner itself. It will not contain output from the GitHub Action but only metadata on its execution.",
            "stability": "experimental",
            "summary": "Log group where provided runners will save their logs."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ecs.ts",
            "line": 326
          },
          "name": "logGroup",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
          "type": {
            "fqn": "aws-cdk-lib.aws_logs.ILogGroup"
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "List of step functions errors that should be retried."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ecs.ts",
            "line": 343
          },
          "name": "retryableErrors",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        }
      ],
      "symbolId": "src/providers/ecs:EcsRunnerProvider"
    },
    "@cloudsnorkel/cdk-github-runners.EcsRunnerProviderProps": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "datatype": true,
      "docs": {
        "stability": "experimental",
        "summary": "Properties for EcsRunnerProvider."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.EcsRunnerProviderProps",
      "interfaces": [
        "@cloudsnorkel/cdk-github-runners.RunnerProviderProps"
      ],
      "kind": "interface",
      "locationInModule": {
        "filename": "src/providers/ecs.ts",
        "line": 37
      },
      "name": "EcsRunnerProviderProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "default": "true",
            "remarks": "Make sure the task will have access to GitHub. A public IP might be required unless you have NAT gateway.",
            "stability": "experimental",
            "summary": "Assign public IP to the runner task."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ecs.ts",
            "line": 116
          },
          "name": "assignPublicIp",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "new capacity provider",
            "remarks": "Make sure the AMI used by the capacity provider is compatible with ECS.",
            "stability": "experimental",
            "summary": "Existing capacity provider to use."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ecs.ts",
            "line": 107
          },
          "name": "capacityProvider",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ecs.AsgCapacityProvider"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "a new cluster",
            "stability": "experimental",
            "summary": "Existing ECS cluster to use."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ecs.ts",
            "line": 98
          },
          "name": "cluster",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ecs.Cluster"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "1024",
            "remarks": "1024 units is 1 vCPU. Fractions of a vCPU are supported.",
            "stability": "experimental",
            "summary": "The number of cpu units used by the task."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ecs.ts",
            "line": 123
          },
          "name": "cpu",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "true",
            "remarks": "Disabling this can\nspeed up provisioning of CodeBuild runners. If you don't intend on running or building Docker images, disable this for faster start-up times.",
            "stability": "experimental",
            "summary": "Support building and running Docker images by enabling Docker-in-Docker (dind) and the required CodeBuild privileged mode."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ecs.ts",
            "line": 180
          },
          "name": "dockerInDocker",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "undefined",
            "remarks": "If specified, the runner will be registered with this group name. Setting a runner group can help managing access to self-hosted runners. It\nrequires a paid GitHub account.\n\nThe group must exist or the runner will not start.\n\nUsers will still be able to trigger this runner with the correct labels. But the runner will only be able to run jobs from repos allowed to use the group.",
            "stability": "experimental",
            "summary": "GitHub Actions runner group name."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ecs.ts",
            "line": 70
          },
          "name": "group",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "EcsRunnerProvider.imageBuilder()",
            "remarks": "The image builder determines the OS and architecture of the runner.",
            "stability": "experimental",
            "summary": "Runner image builder used to build Docker images containing GitHub Runner and all requirements."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ecs.ts",
            "line": 45
          },
          "name": "imageBuilder",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.IRunnerImageBuilder"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "m6i.large or m6g.large",
            "remarks": "Only used when creating a new cluster.",
            "stability": "experimental",
            "summary": "Instance type of ECS cluster instances."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ecs.ts",
            "line": 144
          },
          "name": "instanceType",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.InstanceType"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "['ecs']",
            "remarks": "These labels are used to identify which provider should spawn a new on-demand runner. Every job sends a webhook with the labels it's looking for\nbased on runs-on. We match the labels from the webhook with the labels specified here. If all the labels specified here are present in the\njob's labels, this provider will be chosen and spawn a new runner.",
            "stability": "experimental",
            "summary": "GitHub Actions labels used for this provider."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ecs.ts",
            "line": 56
          },
          "name": "labels",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "5",
            "remarks": "Only used when creating a new cluster.",
            "stability": "experimental",
            "summary": "The maximum number of instances to run in the cluster."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ecs.ts",
            "line": 158
          },
          "name": "maxInstances",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "3500, unless `memoryReservationMiB` is used and then it's undefined",
            "stability": "experimental",
            "summary": "The amount (in MiB) of memory used by the task."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ecs.ts",
            "line": 130
          },
          "name": "memoryLimitMiB",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "undefined",
            "stability": "experimental",
            "summary": "The soft limit (in MiB) of memory to reserve for the container."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ecs.ts",
            "line": 137
          },
          "name": "memoryReservationMiB",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "0",
            "remarks": "Only used when creating a new cluster.",
            "stability": "experimental",
            "summary": "The minimum number of instances to run in the cluster."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ecs.ts",
            "line": 151
          },
          "name": "minInstances",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "a new security group",
            "stability": "experimental",
            "summary": "Security groups to assign to the task."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ecs.ts",
            "line": 91
          },
          "name": "securityGroups",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_ec2.ISecurityGroup"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "false (true if spotMaxPrice is specified)",
            "stability": "experimental",
            "summary": "Use spot capacity."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ecs.ts",
            "line": 187
          },
          "name": "spot",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Maximum price for spot instances."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ecs.ts",
            "line": 192
          },
          "name": "spotMaxPrice",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Options for runner instance storage volume."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ecs.ts",
            "line": 172
          },
          "name": "storageOptions",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.StorageOptions"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "default size for AMI (usually 30GB for Linux and 50GB for Windows)",
            "remarks": "This modifies the boot volume size and doesn't add any additional volumes.\n\nEach instance can be used by multiple runners, so make sure there is enough space for all of them.",
            "stability": "experimental",
            "summary": "Size of volume available for launched cluster instances."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ecs.ts",
            "line": 167
          },
          "name": "storageSize",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.Size"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "ECS default",
            "stability": "experimental",
            "summary": "Subnets to run the runners in."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ecs.ts",
            "line": 84
          },
          "name": "subnetSelection",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.SubnetSelection"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "default account VPC",
            "stability": "experimental",
            "summary": "VPC to launch the runners in."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/ecs.ts",
            "line": 77
          },
          "name": "vpc",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IVpc"
          }
        }
      ],
      "symbolId": "src/providers/ecs:EcsRunnerProviderProps"
    },
    "@cloudsnorkel/cdk-github-runners.FargateRunner": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "base": "@cloudsnorkel/cdk-github-runners.FargateRunnerProvider",
      "docs": {
        "deprecated": "use {@link FargateRunnerProvider }",
        "stability": "deprecated"
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.FargateRunner",
      "initializer": {
        "docs": {
          "stability": "experimental"
        },
        "locationInModule": {
          "filename": "src/providers/fargate.ts",
          "line": 383
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          },
          {
            "name": "props",
            "optional": true,
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.FargateRunnerProviderProps"
            }
          }
        ]
      },
      "kind": "class",
      "locationInModule": {
        "filename": "src/providers/fargate.ts",
        "line": 554
      },
      "name": "FargateRunner",
      "symbolId": "src/providers/fargate:FargateRunner"
    },
    "@cloudsnorkel/cdk-github-runners.FargateRunnerProvider": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "base": "constructs.Construct",
      "docs": {
        "remarks": "Creates a task definition with a single container that gets started for each job.\n\nThis construct is not meant to be used by itself. It should be passed in the providers property for GitHubRunners.",
        "stability": "experimental",
        "summary": "GitHub Actions runner provider using Fargate to execute jobs."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.FargateRunnerProvider",
      "initializer": {
        "docs": {
          "stability": "experimental"
        },
        "locationInModule": {
          "filename": "src/providers/fargate.ts",
          "line": 383
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          },
          {
            "name": "props",
            "optional": true,
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.FargateRunnerProviderProps"
            }
          }
        ]
      },
      "interfaces": [
        "@cloudsnorkel/cdk-github-runners.IRunnerProvider"
      ],
      "kind": "class",
      "locationInModule": {
        "filename": "src/providers/fargate.ts",
        "line": 256
      },
      "methods": [
        {
          "docs": {
            "remarks": "You can customize the OS, architecture, VPC, subnet, security groups, etc. by passing in props.\n\nYou can add components to the image builder by calling `imageBuilder.addComponent()`.\n\nThe default OS is Ubuntu running on x64 architecture.\n\nIncluded components:\n * `RunnerImageComponent.requiredPackages()`\n * `RunnerImageComponent.runnerUser()`\n * `RunnerImageComponent.git()`\n * `RunnerImageComponent.githubCli()`\n * `RunnerImageComponent.awsCli()`\n * `RunnerImageComponent.githubRunner()`",
            "stability": "experimental",
            "summary": "Create new image builder that builds Fargate specific runner images."
          },
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 296
          },
          "name": "imageBuilder",
          "parameters": [
            {
              "name": "scope",
              "type": {
                "fqn": "constructs.Construct"
              }
            },
            {
              "name": "id",
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "props",
              "optional": true,
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageBuilderProps"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.IConfigurableRunnerImageBuilder"
            }
          },
          "static": true
        },
        {
          "docs": {
            "remarks": "Called by GithubRunners and shouldn't be called manually.",
            "stability": "experimental",
            "summary": "Generate step function task(s) to start a new runner."
          },
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 471
          },
          "name": "getStepFunctionTask",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
          "parameters": [
            {
              "docs": {
                "summary": "workflow job details."
              },
              "name": "parameters",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.RunnerRuntimeParameters"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "aws-cdk-lib.aws_stepfunctions.IChainable"
            }
          }
        },
        {
          "docs": {
            "remarks": "This can be used to add additional policy\nstatements to the state machine role that are not automatically added by the task returned from {@link getStepFunctionTask}.",
            "stability": "experimental",
            "summary": "An optional method that modifies the role of the state machine after all the tasks have been generated."
          },
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 529
          },
          "name": "grantStateMachine",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
          "parameters": [
            {
              "name": "_",
              "type": {
                "fqn": "aws-cdk-lib.aws_iam.IGrantable"
              }
            }
          ]
        },
        {
          "docs": {
            "stability": "experimental"
          },
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 528
          },
          "name": "labelsFromProperties",
          "parameters": [
            {
              "name": "defaultLabel",
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "propsLabel",
              "optional": true,
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "propsLabels",
              "optional": true,
              "type": {
                "collection": {
                  "elementtype": {
                    "primitive": "string"
                  },
                  "kind": "array"
                }
              }
            }
          ],
          "protected": true,
          "returns": {
            "type": {
              "collection": {
                "elementtype": {
                  "primitive": "string"
                },
                "kind": "array"
              }
            }
          }
        },
        {
          "docs": {
            "remarks": "Also gives the status function any needed permissions to query the Docker image or AMI.",
            "stability": "experimental",
            "summary": "Return status of the runner provider to be used in the main status function."
          },
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 532
          },
          "name": "status",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
          "parameters": [
            {
              "name": "statusFunctionRole",
              "type": {
                "fqn": "aws-cdk-lib.aws_iam.IGrantable"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.IRunnerProviderStatus"
            }
          }
        }
      ],
      "name": "FargateRunnerProvider",
      "properties": [
        {
          "const": true,
          "docs": {
            "deprecated": "Use `imageBuilder()` instead.",
            "remarks": "Use this Dockerfile unless you need to customize it further than allowed by hooks.\n\nAvailable build arguments that can be set in the image builder:\n* `BASE_IMAGE` sets the `FROM` line. This should be an Ubuntu compatible image.\n* `EXTRA_PACKAGES` can be used to install additional packages.",
            "stability": "deprecated",
            "summary": "Path to Dockerfile for Linux ARM64 with all the requirement for Fargate runner."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 277
          },
          "name": "LINUX_ARM64_DOCKERFILE_PATH",
          "static": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "const": true,
          "docs": {
            "deprecated": "Use `imageBuilder()` instead.",
            "remarks": "Use this Dockerfile unless you need to customize it further than allowed by hooks.\n\nAvailable build arguments that can be set in the image builder:\n* `BASE_IMAGE` sets the `FROM` line. This should be an Ubuntu compatible image.\n* `EXTRA_PACKAGES` can be used to install additional packages.",
            "stability": "deprecated",
            "summary": "Path to Dockerfile for Linux x64 with all the requirement for Fargate runner."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 266
          },
          "name": "LINUX_X64_DOCKERFILE_PATH",
          "static": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "Whether runner task will have a public IP."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 345
          },
          "name": "assignPublicIp",
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "Cluster hosting the task hosting the runner."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 315
          },
          "name": "cluster",
          "type": {
            "fqn": "aws-cdk-lib.aws_ecs.Cluster"
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "The network connections associated with this resource."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 355
          },
          "name": "connections",
          "overrides": "aws-cdk-lib.aws_ec2.IConnectable",
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.Connections"
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "Container definition hosting the runner."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 325
          },
          "name": "container",
          "type": {
            "fqn": "aws-cdk-lib.aws_ecs.ContainerDefinition"
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "Grant principal used to add permissions to the runner role."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 350
          },
          "name": "grantPrincipal",
          "overrides": "aws-cdk-lib.aws_iam.IGrantable",
          "type": {
            "fqn": "aws-cdk-lib.aws_iam.IPrincipal"
          }
        },
        {
          "docs": {
            "remarks": "The image is built by an image builder and is specific to Fargate tasks.",
            "stability": "experimental",
            "summary": "Docker image loaded with GitHub Actions Runner and its prerequisites."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 365
          },
          "name": "image",
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImage"
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "Labels associated with this provider."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 330
          },
          "name": "labels",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        },
        {
          "docs": {
            "remarks": "Note that this is not the job log, but the runner itself. It will not contain output from the GitHub Action but only metadata on its execution.",
            "stability": "experimental",
            "summary": "Log group where provided runners will save their logs."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 372
          },
          "name": "logGroup",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
          "type": {
            "fqn": "aws-cdk-lib.aws_logs.ILogGroup"
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "List of step functions errors that should be retried."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 374
          },
          "name": "retryableErrors",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "Use spot pricing for Fargate tasks."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 360
          },
          "name": "spot",
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "Fargate task hosting the runner."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 320
          },
          "name": "task",
          "type": {
            "fqn": "aws-cdk-lib.aws_ecs.FargateTaskDefinition"
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "Subnets used for hosting the runner task."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 340
          },
          "name": "subnetSelection",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.SubnetSelection"
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "VPC used for hosting the runner task."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 335
          },
          "name": "vpc",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IVpc"
          }
        }
      ],
      "symbolId": "src/providers/fargate:FargateRunnerProvider"
    },
    "@cloudsnorkel/cdk-github-runners.FargateRunnerProviderProps": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "datatype": true,
      "docs": {
        "stability": "experimental",
        "summary": "Properties for FargateRunnerProvider."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.FargateRunnerProviderProps",
      "interfaces": [
        "@cloudsnorkel/cdk-github-runners.RunnerProviderProps"
      ],
      "kind": "interface",
      "locationInModule": {
        "filename": "src/providers/fargate.ts",
        "line": 31
      },
      "name": "FargateRunnerProviderProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "default": "true",
            "remarks": "Make sure the task will have access to GitHub. A public IP might be required unless you have NAT gateway.",
            "stability": "experimental",
            "summary": "Assign public IP to the runner task."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 118
          },
          "name": "assignPublicIp",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "a new cluster",
            "stability": "experimental",
            "summary": "Existing Fargate cluster to use."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 109
          },
          "name": "cluster",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ecs.Cluster"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "1024",
            "remarks": "For tasks using the Fargate launch type,\nthis field is required and you must use one of the following values,\nwhich determines your range of valid values for the memory parameter:\n\n256 (.25 vCPU) - Available memory values: 512 (0.5 GB), 1024 (1 GB), 2048 (2 GB)\n\n512 (.5 vCPU) - Available memory values: 1024 (1 GB), 2048 (2 GB), 3072 (3 GB), 4096 (4 GB)\n\n1024 (1 vCPU) - Available memory values: 2048 (2 GB), 3072 (3 GB), 4096 (4 GB), 5120 (5 GB), 6144 (6 GB), 7168 (7 GB), 8192 (8 GB)\n\n2048 (2 vCPU) - Available memory values: Between 4096 (4 GB) and 16384 (16 GB) in increments of 1024 (1 GB)\n\n4096 (4 vCPU) - Available memory values: Between 8192 (8 GB) and 30720 (30 GB) in increments of 1024 (1 GB)",
            "stability": "experimental",
            "summary": "The number of cpu units used by the task."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 137
          },
          "name": "cpu",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "20",
            "remarks": "The maximum supported value is 200 GiB.\n\nNOTE: This parameter is only supported for tasks hosted on AWS Fargate using platform version 1.4.0 or later.",
            "stability": "experimental",
            "summary": "The amount (in GiB) of ephemeral storage to be allocated to the task."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 164
          },
          "name": "ephemeralStorageGiB",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "undefined",
            "remarks": "If specified, the runner will be registered with this group name. Setting a runner group can help managing access to self-hosted runners. It\nrequires a paid GitHub account.\n\nThe group must exist or the runner will not start.\n\nUsers will still be able to trigger this runner with the correct labels. But the runner will only be able to run jobs from repos allowed to use the group.",
            "stability": "experimental",
            "summary": "GitHub Actions runner group name."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 72
          },
          "name": "group",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "FargateRunnerProvider.imageBuilder()",
            "remarks": "The image builder determines the OS and architecture of the runner.",
            "stability": "experimental",
            "summary": "Runner image builder used to build Docker images containing GitHub Runner and all requirements."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 39
          },
          "name": "imageBuilder",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.IRunnerImageBuilder"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "undefined",
            "deprecated": "use {@link labels } instead",
            "stability": "deprecated",
            "summary": "GitHub Actions label used for this provider."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 47
          },
          "name": "label",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "['fargate']",
            "remarks": "These labels are used to identify which provider should spawn a new on-demand runner. Every job sends a webhook with the labels it's looking for\nbased on runs-on. We match the labels from the webhook with the labels specified here. If all the labels specified here are present in the\njob's labels, this provider will be chosen and spawn a new runner.",
            "stability": "experimental",
            "summary": "GitHub Actions labels used for this provider."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 58
          },
          "name": "labels",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "2048",
            "remarks": "For tasks using the Fargate launch type,\nthis field is required and you must use one of the following values, which determines your range of valid values for the cpu parameter:\n\n512 (0.5 GB), 1024 (1 GB), 2048 (2 GB) - Available cpu values: 256 (.25 vCPU)\n\n1024 (1 GB), 2048 (2 GB), 3072 (3 GB), 4096 (4 GB) - Available cpu values: 512 (.5 vCPU)\n\n2048 (2 GB), 3072 (3 GB), 4096 (4 GB), 5120 (5 GB), 6144 (6 GB), 7168 (7 GB), 8192 (8 GB) - Available cpu values: 1024 (1 vCPU)\n\nBetween 4096 (4 GB) and 16384 (16 GB) in increments of 1024 (1 GB) - Available cpu values: 2048 (2 vCPU)\n\nBetween 8192 (8 GB) and 30720 (30 GB) in increments of 1024 (1 GB) - Available cpu values: 4096 (4 vCPU)",
            "stability": "experimental",
            "summary": "The amount (in MiB) of memory used by the task."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 155
          },
          "name": "memoryLimitMiB",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "a new security group",
            "deprecated": "use {@link securityGroups }",
            "stability": "deprecated",
            "summary": "Security group to assign to the task."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 95
          },
          "name": "securityGroup",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.ISecurityGroup"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "a new security group",
            "stability": "experimental",
            "summary": "Security groups to assign to the task."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 102
          },
          "name": "securityGroups",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_ec2.ISecurityGroup"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "false",
            "remarks": "* Runners may fail to start due to missing capacity.\n* Runners might be stopped prematurely with spot pricing.",
            "stability": "experimental",
            "summary": "Use Fargate spot capacity provider to save money."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 174
          },
          "name": "spot",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Fargate default",
            "stability": "experimental",
            "summary": "Subnets to run the runners in."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 86
          },
          "name": "subnetSelection",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.SubnetSelection"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "default account VPC",
            "stability": "experimental",
            "summary": "VPC to launch the runners in."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/fargate.ts",
            "line": 79
          },
          "name": "vpc",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IVpc"
          }
        }
      ],
      "symbolId": "src/providers/fargate:FargateRunnerProviderProps"
    },
    "@cloudsnorkel/cdk-github-runners.FastLaunchOptions": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "datatype": true,
      "docs": {
        "stability": "experimental",
        "summary": "Options for fast launch."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.FastLaunchOptions",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/image-builders/aws-image-builder/builder.ts",
        "line": 64
      },
      "name": "FastLaunchOptions",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "custom": {
              "note": "enabling fast launch on an existing builder will not enable it for existing AMIs. It will only affect new AMIs. If you want immediate effect, trigger a new image build. Alternatively, you can create a new builder with fast launch enabled and use it for new AMIs."
            },
            "default": "false",
            "remarks": "It creates a snapshot of the root volume and uses it to launch new instances faster.\n\nThis is only supported for Windows AMIs.",
            "stability": "experimental",
            "summary": "Enable fast launch for AMIs generated by this builder."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/builder.ts",
            "line": 75
          },
          "name": "enabled",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "6",
            "remarks": "Must be at least 6.",
            "stability": "experimental",
            "summary": "The maximum number of parallel instances that are launched for creating resources."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/builder.ts",
            "line": 84
          },
          "name": "maxParallelLaunches",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "1",
            "stability": "experimental",
            "summary": "The number of pre-provisioned snapshots to keep on hand for a fast-launch enabled Windows AMI."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/builder.ts",
            "line": 91
          },
          "name": "targetResourceCount",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        }
      ],
      "symbolId": "src/image-builders/aws-image-builder/builder:FastLaunchOptions"
    },
    "@cloudsnorkel/cdk-github-runners.GitHubRunners": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "base": "constructs.Construct",
      "docs": {
        "remarks": "It creates a webhook, secrets, and a step function to orchestrate all runs. Secrets are not automatically filled. See README.md for instructions on how to setup GitHub integration.\n\nBy default, this will create a runner provider of each available type with the defaults. This is good enough for the initial setup stage when you just want to get GitHub integration working.\n\n```typescript\nnew GitHubRunners(this, 'runners');\n```\n\nUsually you'd want to configure the runner providers so the runners can run in a certain VPC or have certain permissions.\n\n```typescript\nconst vpc = ec2.Vpc.fromLookup(this, 'vpc', { vpcId: 'vpc-1234567' });\nconst runnerSg = new ec2.SecurityGroup(this, 'runner security group', { vpc: vpc });\nconst dbSg = ec2.SecurityGroup.fromSecurityGroupId(this, 'database security group', 'sg-1234567');\nconst bucket = new s3.Bucket(this, 'runner bucket');\n\n// create a custom CodeBuild provider\nconst myProvider = new CodeBuildRunnerProvider(\n  this, 'codebuild runner',\n  {\n     labels: ['my-codebuild'],\n     vpc: vpc,\n     securityGroups: [runnerSg],\n  },\n);\n// grant some permissions to the provider\nbucket.grantReadWrite(myProvider);\ndbSg.connections.allowFrom(runnerSg, ec2.Port.tcp(3306), 'allow runners to connect to MySQL database');\n\n// create the runner infrastructure\nnew GitHubRunners(\n  this,\n  'runners',\n  {\n    providers: [myProvider],\n  }\n);\n```",
        "stability": "experimental",
        "summary": "Create all the required infrastructure to provide self-hosted GitHub runners."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.GitHubRunners",
      "initializer": {
        "docs": {
          "stability": "experimental"
        },
        "locationInModule": {
          "filename": "src/runner.ts",
          "line": 270
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          },
          {
            "name": "props",
            "optional": true,
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.GitHubRunnersProps"
            }
          }
        ]
      },
      "interfaces": [
        "aws-cdk-lib.aws_ec2.IConnectable"
      ],
      "kind": "class",
      "locationInModule": {
        "filename": "src/runner.ts",
        "line": 244
      },
      "methods": [
        {
          "docs": {
            "remarks": "* \"Webhook errors\" helps diagnose configuration issues with GitHub integration\n* \"Ignored webhook\" helps understand why runners aren't started\n* \"Ignored jobs based on labels\" helps debug label matching issues\n* \"Webhook started runners\" helps understand which runners were started",
            "stability": "experimental",
            "summary": "Creates CloudWatch Logs Insights saved queries that can be used to debug issues with the runners."
          },
          "locationInModule": {
            "filename": "src/runner.ts",
            "line": 787
          },
          "name": "createLogsInsightsQueries"
        },
        {
          "docs": {
            "remarks": "Runner images are rebuilt every week by default. This provides the latest GitHub Runner version and software updates.\n\nIf you want to be sure you are using the latest runner version, you can use this topic to be notified when a build fails.",
            "stability": "experimental",
            "summary": "Creates a topic for notifications when a runner image build fails."
          },
          "locationInModule": {
            "filename": "src/runner.ts",
            "line": 767
          },
          "name": "failedImageBuildsTopic",
          "returns": {
            "type": {
              "fqn": "aws-cdk-lib.aws_sns.Topic"
            }
          }
        },
        {
          "docs": {
            "remarks": "A failed runner usually means the runner failed to start and so a job was never executed. It doesn't necessarily mean the job was executed and failed. For that, see {@link metricJobCompleted}.",
            "stability": "experimental",
            "summary": "Metric for failed runner executions."
          },
          "locationInModule": {
            "filename": "src/runner.ts",
            "line": 749
          },
          "name": "metricFailed",
          "parameters": [
            {
              "name": "props",
              "optional": true,
              "type": {
                "fqn": "aws-cdk-lib.aws_cloudwatch.MetricProps"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "aws-cdk-lib.aws_cloudwatch.Metric"
            }
          }
        },
        {
          "docs": {
            "remarks": "It has `ProviderLabels` and `Status` dimensions. The status can be one of \"Succeeded\", \"SucceededWithIssues\", \"Failed\", \"Canceled\", \"Skipped\", or \"Abandoned\".\n\n**WARNING:** this method creates a metric filter for each provider. Each metric has a status dimension with six possible values. These resources may incur cost.",
            "stability": "experimental",
            "summary": "Metric for the number of GitHub Actions jobs completed."
          },
          "locationInModule": {
            "filename": "src/runner.ts",
            "line": 694
          },
          "name": "metricJobCompleted",
          "parameters": [
            {
              "name": "props",
              "optional": true,
              "type": {
                "fqn": "aws-cdk-lib.aws_cloudwatch.MetricProps"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "aws-cdk-lib.aws_cloudwatch.Metric"
            }
          }
        },
        {
          "docs": {
            "remarks": "A successful execution doesn't always mean a runner was started. It can be successful even without any label matches.\n\nA successful runner doesn't mean the job it executed was successful. For that, see {@link metricJobCompleted}.",
            "stability": "experimental",
            "summary": "Metric for successful executions."
          },
          "locationInModule": {
            "filename": "src/runner.ts",
            "line": 740
          },
          "name": "metricSucceeded",
          "parameters": [
            {
              "name": "props",
              "optional": true,
              "type": {
                "fqn": "aws-cdk-lib.aws_cloudwatch.MetricProps"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "aws-cdk-lib.aws_cloudwatch.Metric"
            }
          }
        },
        {
          "docs": {
            "remarks": "This time may be longer than the time the runner took.",
            "stability": "experimental",
            "summary": "Metric for the interval, in milliseconds, between the time the execution starts and the time it closes."
          },
          "locationInModule": {
            "filename": "src/runner.ts",
            "line": 756
          },
          "name": "metricTime",
          "parameters": [
            {
              "name": "props",
              "optional": true,
              "type": {
                "fqn": "aws-cdk-lib.aws_cloudwatch.MetricProps"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "aws-cdk-lib.aws_cloudwatch.Metric"
            }
          }
        }
      ],
      "name": "GitHubRunners",
      "properties": [
        {
          "docs": {
            "remarks": "Use this to enable connections to your GitHub Enterprise Server in a VPC.\n\nThis cannot be used to manage connections of the runners. Use the `connections` property of each runner provider to manage runner connections.",
            "stability": "experimental",
            "summary": "Manage the connections of all management functions."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/runner.ts",
            "line": 260
          },
          "name": "connections",
          "overrides": "aws-cdk-lib.aws_ec2.IConnectable",
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.Connections"
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "Configured runner providers."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/runner.ts",
            "line": 248
          },
          "name": "providers",
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "@cloudsnorkel/cdk-github-runners.IRunnerProvider"
              },
              "kind": "array"
            }
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "Secrets for GitHub communication including webhook secret and runner authentication."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/runner.ts",
            "line": 253
          },
          "name": "secrets",
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.Secrets"
          }
        },
        {
          "docs": {
            "stability": "experimental"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/runner.ts",
            "line": 270
          },
          "name": "props",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.GitHubRunnersProps"
          }
        }
      ],
      "symbolId": "src/runner:GitHubRunners"
    },
    "@cloudsnorkel/cdk-github-runners.GitHubRunnersProps": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "datatype": true,
      "docs": {
        "stability": "experimental",
        "summary": "Properties for GitHubRunners."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.GitHubRunnersProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/runner.ts",
        "line": 39
      },
      "name": "GitHubRunnersProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "default": "false",
            "remarks": "Lambda Functions in a public subnet can NOT access the internet.",
            "stability": "experimental",
            "summary": "Allow management functions to run in public subnets."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/runner.ts",
            "line": 80
          },
          "name": "allowPublicSubnet",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "You may also want to use custom images for your runner providers that contain the same certificates. See {@link CodeBuildImageBuilder.addCertificates }.\n\n```typescript\nconst imageBuilder = CodeBuildRunnerProvider.imageBuilder(this, 'Image Builder with Certs');\nimageBuilder.addComponent(RunnerImageComponent.extraCertificates('path-to-my-extra-certs-folder/certs.pem', 'private-ca');\n\nconst provider = new CodeBuildRunnerProvider(this, 'CodeBuild', {\n    imageBuilder: imageBuilder,\n});\n\nnew GitHubRunners(\n  this,\n  'runners',\n  {\n    providers: [provider],\n    extraCertificates: 'path-to-my-extra-certs-folder',\n  }\n);\n```",
            "stability": "experimental",
            "summary": "Path to a directory containing a file named certs.pem containing any additional certificates required to trust GitHub Enterprise Server. Use this when GitHub Enterprise Server certificates are self-signed."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/runner.ts",
            "line": 117
          },
          "name": "extraCertificates",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "5 minutes",
            "remarks": "If the user cancelled the job, or if another runner stole it, this stops the runner to avoid wasting resources.",
            "stability": "experimental",
            "summary": "Time to wait before stopping a runner that remains idle."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/runner.ts",
            "line": 124
          },
          "name": "idleTimeout",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.Duration"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "no logs",
            "stability": "experimental",
            "summary": "Logging options for the state machine that manages the runners."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/runner.ts",
            "line": 131
          },
          "name": "logOptions",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.LogOptions"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "CodeBuild, Lambda and Fargate runners with all the defaults (no VPC or default account VPC)",
            "remarks": "At least one provider is required. Provider will be selected when its label matches the labels requested by the workflow job.",
            "stability": "experimental",
            "summary": "List of runner providers to use."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/runner.ts",
            "line": 45
          },
          "name": "providers",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "@cloudsnorkel/cdk-github-runners.IRunnerProvider"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "true",
            "remarks": "If `true`, the runner will only start if the workflow job explicitly requests the `self-hosted` label.\n\nBe careful when setting this to `false`. Avoid setting up providers with generic label requirements like `linux` as they may match workflows that are not meant to run on self-hosted runners.",
            "stability": "experimental",
            "summary": "Whether to require the `self-hosted` label."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/runner.ts",
            "line": 54
          },
          "name": "requireSelfHostedLabel",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "retry 23 times up to about 24 hours",
            "remarks": "GitHub jobs time out after not being able to get a runner for 24 hours. You should not retry for more than 24 hours.\n\nTotal time spent waiting can be calculated with interval * (backoffRate ^ maxAttempts) / (backoffRate - 1).",
            "stability": "experimental",
            "summary": "Options to retry operation in case of failure like missing capacity, or API quota issues."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/runner.ts",
            "line": 168
          },
          "name": "retryOptions",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.ProviderRetryOptions"
          }
        },
        {
          "abstract": true,
          "docs": {
            "deprecated": "use {@link securityGroups } instead",
            "remarks": "Use this with to provide access to GitHub Enterprise Server hosted inside a VPC.",
            "stability": "deprecated",
            "summary": "Security group attached to all management functions."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/runner.ts",
            "line": 87
          },
          "name": "securityGroup",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.ISecurityGroup"
          }
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "Use this with to provide access to GitHub Enterprise Server hosted inside a VPC.",
            "stability": "experimental",
            "summary": "Security groups attached to all management functions."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/runner.ts",
            "line": 92
          },
          "name": "securityGroups",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_ec2.ISecurityGroup"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "LambdaAccess.lambdaUrl()",
            "remarks": "Once you finish the setup process, you can set this to `LambdaAccess.noAccess()` to remove access to the setup function. You can also use `LambdaAccess.apiGateway({ allowedIps: ['my-ip/0']})` to limit access to your IP only.",
            "stability": "experimental",
            "summary": "Access configuration for the setup function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/runner.ts",
            "line": 138
          },
          "name": "setupAccess",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.LambdaAccess"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "LambdaAccess.noAccess()",
            "remarks": "This function returns a lot of sensitive information about the runner, so you should only allow access to it from trusted IPs, if at all.",
            "stability": "experimental",
            "summary": "Access configuration for the status function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/runner.ts",
            "line": 157
          },
          "name": "statusAccess",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.LambdaAccess"
          }
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "Make sure the selected VPC and subnets have access to the following with either NAT Gateway or VPC Endpoints:\n* GitHub Enterprise Server\n* Secrets Manager\n* SQS\n* Step Functions\n* CloudFormation (status function only)\n* EC2 (status function only)\n* ECR (status function only)",
            "stability": "experimental",
            "summary": "VPC used for all management functions. Use this with GitHub Enterprise Server hosted that's inaccessible from outside the VPC."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/runner.ts",
            "line": 68
          },
          "name": "vpc",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IVpc"
          }
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "Use this with GitHub Enterprise Server hosted that's inaccessible from outside the VPC.",
            "stability": "experimental",
            "summary": "VPC subnets used for all management functions."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/runner.ts",
            "line": 73
          },
          "name": "vpcSubnets",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.SubnetSelection"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "LambdaAccess.lambdaUrl()",
            "remarks": "This function is called by GitHub when a new workflow job is scheduled. For an extra layer of security, you can set this to `LambdaAccess.apiGateway({ allowedIps: LambdaAccess.githubWebhookIps() })`.\n\nYou can also set this to `LambdaAccess.apiGateway({allowedVpc: vpc, allowedIps: ['GHES.IP.ADDRESS/32']})` if your GitHub Enterprise Server is hosted in a VPC. This will create an API Gateway endpoint that's only accessible from within the VPC.\n\n*WARNING*: changing access type may change the URL. When the URL changes, you must update GitHub as well.",
            "stability": "experimental",
            "summary": "Access configuration for the webhook function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/runner.ts",
            "line": 150
          },
          "name": "webhookAccess",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.LambdaAccess"
          }
        }
      ],
      "symbolId": "src/runner:GitHubRunnersProps"
    },
    "@cloudsnorkel/cdk-github-runners.IConfigurableRunnerImageBuilder": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "docs": {
        "remarks": "The image can be configured by adding or removing components. The image builder can be configured by adding grants or allowing connections.\n\nAn image can be a Docker image or AMI.",
        "stability": "experimental",
        "summary": "Interface for constructs that build an image that can be used in {@link IRunnerProvider }."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.IConfigurableRunnerImageBuilder",
      "interfaces": [
        "@cloudsnorkel/cdk-github-runners.IRunnerImageBuilder",
        "aws-cdk-lib.aws_ec2.IConnectable",
        "aws-cdk-lib.aws_iam.IGrantable"
      ],
      "kind": "interface",
      "locationInModule": {
        "filename": "src/image-builders/common.ts",
        "line": 308
      },
      "methods": [
        {
          "abstract": true,
          "docs": {
            "remarks": "The component will be added to the end of the list of components.",
            "stability": "experimental",
            "summary": "Add a component to the image builder."
          },
          "locationInModule": {
            "filename": "src/image-builders/common.ts",
            "line": 314
          },
          "name": "addComponent",
          "parameters": [
            {
              "docs": {
                "summary": "component to add."
              },
              "name": "component",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageComponent"
              }
            }
          ]
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "Removal is done by component name. Multiple components with the same name will all be removed.",
            "stability": "experimental",
            "summary": "Remove a component from the image builder."
          },
          "locationInModule": {
            "filename": "src/image-builders/common.ts",
            "line": 321
          },
          "name": "removeComponent",
          "parameters": [
            {
              "docs": {
                "summary": "component to remove."
              },
              "name": "component",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageComponent"
              }
            }
          ]
        }
      ],
      "name": "IConfigurableRunnerImageBuilder",
      "symbolId": "src/image-builders/common:IConfigurableRunnerImageBuilder"
    },
    "@cloudsnorkel/cdk-github-runners.IRunnerAmiStatus": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "docs": {
        "stability": "experimental",
        "summary": "AMI status returned from runner providers to be displayed as output of status function."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.IRunnerAmiStatus",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/providers/common.ts",
        "line": 372
      },
      "name": "IRunnerAmiStatus",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Id of launch template pointing to the latest AMI built by the AMI builder."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 376
          },
          "name": "launchTemplate",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Log group name for the AMI builder where history of builds can be analyzed."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 381
          },
          "name": "amiBuilderLogGroup",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        }
      ],
      "symbolId": "src/providers/common:IRunnerAmiStatus"
    },
    "@cloudsnorkel/cdk-github-runners.IRunnerImageBuilder": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "docs": {
        "remarks": "An image can be a Docker image or AMI.",
        "stability": "experimental",
        "summary": "Interface for constructs that build an image that can be used in {@link IRunnerProvider }."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.IRunnerImageBuilder",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/image-builders/common.ts",
        "line": 281
      },
      "methods": [
        {
          "abstract": true,
          "docs": {
            "remarks": "Anything that ends up with a launch template pointing to an AMI that runs GitHub self-hosted runners can be used. A simple implementation could even point to an existing AMI and nothing else.\n\nThe AMI can be further updated over time manually or using a schedule as long as it is always written to the same launch template.",
            "stability": "experimental",
            "summary": "Build and return an AMI with GitHub Runner installed in it."
          },
          "locationInModule": {
            "filename": "src/image-builders/common.ts",
            "line": 300
          },
          "name": "bindAmi",
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.RunnerAmi"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "Anything that ends up with an ECR repository containing a Docker image that runs GitHub self-hosted runners can be used. A simple implementation could even point to an existing image and nothing else.\n\nIt's important that the specified image tag be available at the time the repository is available. Providers usually assume the image is ready and will fail if it's not.\n\nThe image can be further updated over time manually or using a schedule as long as it is always written to the same tag.",
            "stability": "experimental",
            "summary": "Build and return a Docker image with GitHub Runner installed in it."
          },
          "locationInModule": {
            "filename": "src/image-builders/common.ts",
            "line": 291
          },
          "name": "bindDockerImage",
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImage"
            }
          }
        }
      ],
      "name": "IRunnerImageBuilder",
      "symbolId": "src/image-builders/common:IRunnerImageBuilder"
    },
    "@cloudsnorkel/cdk-github-runners.IRunnerImageStatus": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "docs": {
        "stability": "experimental",
        "summary": "Image status returned from runner providers to be displayed in status.json."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.IRunnerImageStatus",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/providers/common.ts",
        "line": 352
      },
      "name": "IRunnerImageStatus",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Image repository where image builder pushes runner images."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 356
          },
          "name": "imageRepository",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Tag of image that should be used."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 361
          },
          "name": "imageTag",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Log group name for the image builder where history of image builds can be analyzed."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 366
          },
          "name": "imageBuilderLogGroup",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        }
      ],
      "symbolId": "src/providers/common:IRunnerImageStatus"
    },
    "@cloudsnorkel/cdk-github-runners.IRunnerProvider": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "docs": {
        "remarks": "Implementations create all required resources and return a step function task that starts those resources from {@link getStepFunctionTask}.",
        "stability": "experimental",
        "summary": "Interface for all runner providers."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
      "interfaces": [
        "aws-cdk-lib.aws_ec2.IConnectable",
        "aws-cdk-lib.aws_iam.IGrantable",
        "constructs.IConstruct"
      ],
      "kind": "interface",
      "locationInModule": {
        "filename": "src/providers/common.ts",
        "line": 432
      },
      "methods": [
        {
          "abstract": true,
          "docs": {
            "remarks": "Called by GithubRunners and shouldn't be called manually.",
            "stability": "experimental",
            "summary": "Generate step function tasks that execute the runner."
          },
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 463
          },
          "name": "getStepFunctionTask",
          "parameters": [
            {
              "docs": {
                "summary": "specific build parameters."
              },
              "name": "parameters",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.RunnerRuntimeParameters"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "aws-cdk-lib.aws_stepfunctions.IChainable"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "This can be used to add additional policy\nstatements to the state machine role that are not automatically added by the task returned from {@link getStepFunctionTask}.",
            "stability": "experimental",
            "summary": "An optional method that modifies the role of the state machine after all the tasks have been generated."
          },
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 471
          },
          "name": "grantStateMachine",
          "parameters": [
            {
              "docs": {
                "summary": "role for the state machine that executes the task returned from {@link getStepFunctionTask}."
              },
              "name": "stateMachineRole",
              "type": {
                "fqn": "aws-cdk-lib.aws_iam.IGrantable"
              }
            }
          ]
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "Also gives the status function any needed permissions to query the Docker image or AMI.",
            "stability": "experimental",
            "summary": "Return status of the runner provider to be used in the main status function."
          },
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 478
          },
          "name": "status",
          "parameters": [
            {
              "docs": {
                "summary": "grantable for the status function."
              },
              "name": "statusFunctionRole",
              "type": {
                "fqn": "aws-cdk-lib.aws_iam.IGrantable"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.IRunnerProviderStatus"
            }
          }
        }
      ],
      "name": "IRunnerProvider",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "remarks": "These labels are used to identify which provider should spawn a new on-demand runner. Every job sends a webhook with the labels it's looking for\nbased on runs-on. We use match the labels from the webhook with the labels specified here. If all the labels specified here are present in the\njob's labels, this provider will be chosen and spawn a new runner.",
            "stability": "experimental",
            "summary": "GitHub Actions labels used for this provider."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 440
          },
          "name": "labels",
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "Note that this is not the job log, but the runner itself. It will not contain output from the GitHub Action but only metadata on its execution.",
            "stability": "experimental",
            "summary": "Log group where provided runners will save their logs."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 447
          },
          "name": "logGroup",
          "type": {
            "fqn": "aws-cdk-lib.aws_logs.ILogGroup"
          }
        },
        {
          "abstract": true,
          "docs": {
            "deprecated": "do not use",
            "stability": "deprecated",
            "summary": "List of step functions errors that should be retried."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 454
          },
          "name": "retryableErrors",
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        }
      ],
      "symbolId": "src/providers/common:IRunnerProvider"
    },
    "@cloudsnorkel/cdk-github-runners.IRunnerProviderStatus": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "docs": {
        "stability": "experimental",
        "summary": "Interface for runner image status used by status.json."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.IRunnerProviderStatus",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/providers/common.ts",
        "line": 387
      },
      "name": "IRunnerProviderStatus",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Labels associated with provider."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 396
          },
          "name": "labels",
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Runner provider type."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 391
          },
          "name": "type",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Details about AMI used by this runner provider."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 421
          },
          "name": "ami",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.IRunnerAmiStatus"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Details about Docker image used by this runner provider."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 416
          },
          "name": "image",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.IRunnerImageStatus"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Log group for runners."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 426
          },
          "name": "logGroup",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Role attached to runners."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 411
          },
          "name": "roleArn",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Security groups attached to runners."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 406
          },
          "name": "securityGroups",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "VPC where runners will be launched."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 401
          },
          "name": "vpcArn",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        }
      ],
      "symbolId": "src/providers/common:IRunnerProviderStatus"
    },
    "@cloudsnorkel/cdk-github-runners.ImageBuilderAsset": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "datatype": true,
      "docs": {
        "stability": "experimental",
        "summary": "An asset including file or directory to place inside the built image."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.ImageBuilderAsset",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/image-builders/aws-image-builder/builder.ts",
        "line": 97
      },
      "name": "ImageBuilderAsset",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Asset to place in the image."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/builder.ts",
            "line": 106
          },
          "name": "asset",
          "type": {
            "fqn": "aws-cdk-lib.aws_s3_assets.Asset"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Path to place asset in the image."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/builder.ts",
            "line": 101
          },
          "name": "path",
          "type": {
            "primitive": "string"
          }
        }
      ],
      "symbolId": "src/image-builders/aws-image-builder/builder:ImageBuilderAsset"
    },
    "@cloudsnorkel/cdk-github-runners.ImageBuilderComponent": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "base": "aws-cdk-lib.Resource",
      "docs": {
        "deprecated": "Use `RunnerImageComponent` instead as this be internal soon.",
        "remarks": "Components are the building blocks of images built by Image Builder.\n\nExample:\n\n```\nnew ImageBuilderComponent(this, 'AWS CLI', {\n  platform: 'Windows',\n  displayName: 'AWS CLI',\n  description: 'Install latest version of AWS CLI',\n  commands: [\n    '$p = Start-Process msiexec.exe -PassThru -Wait -ArgumentList \\'/i https://awscli.amazonaws.com/AWSCLIV2.msi /qn\\'',\n    'if ($p.ExitCode -ne 0) { throw \"Exit code is $p.ExitCode\" }',\n  ],\n}\n```",
        "stability": "deprecated",
        "summary": "Components are a set of commands to run and optional files to add to an image."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.ImageBuilderComponent",
      "initializer": {
        "docs": {
          "stability": "deprecated"
        },
        "locationInModule": {
          "filename": "src/image-builders/aws-image-builder/builder.ts",
          "line": 180
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          },
          {
            "name": "props",
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.ImageBuilderComponentProperties"
            }
          }
        ]
      },
      "kind": "class",
      "locationInModule": {
        "filename": "src/image-builders/aws-image-builder/builder.ts",
        "line": 167
      },
      "methods": [
        {
          "docs": {
            "stability": "deprecated"
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/common.ts",
            "line": 15
          },
          "name": "generateVersion",
          "parameters": [
            {
              "name": "type",
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "name",
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "data",
              "type": {
                "primitive": "any"
              }
            }
          ],
          "protected": true,
          "returns": {
            "type": {
              "primitive": "string"
            }
          }
        },
        {
          "docs": {
            "stability": "deprecated",
            "summary": "Grants read permissions to the principal on the assets buckets."
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/builder.ts",
            "line": 282
          },
          "name": "grantAssetsRead",
          "parameters": [
            {
              "name": "grantee",
              "type": {
                "fqn": "aws-cdk-lib.aws_iam.IGrantable"
              }
            }
          ]
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/builder.ts",
            "line": 288
          },
          "name": "prefixCommandsWithErrorHandling",
          "parameters": [
            {
              "name": "platform",
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "commands",
              "type": {
                "collection": {
                  "elementtype": {
                    "primitive": "string"
                  },
                  "kind": "array"
                }
              }
            }
          ],
          "returns": {
            "type": {
              "collection": {
                "elementtype": {
                  "primitive": "string"
                },
                "kind": "array"
              }
            }
          }
        }
      ],
      "name": "ImageBuilderComponent",
      "properties": [
        {
          "docs": {
            "stability": "deprecated",
            "summary": "Component ARN."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/builder.ts",
            "line": 171
          },
          "name": "arn",
          "type": {
            "primitive": "string"
          }
        },
        {
          "docs": {
            "stability": "deprecated",
            "summary": "Supported platform for the component."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/builder.ts",
            "line": 176
          },
          "name": "platform",
          "type": {
            "primitive": "string"
          }
        }
      ],
      "symbolId": "src/image-builders/aws-image-builder/builder:ImageBuilderComponent"
    },
    "@cloudsnorkel/cdk-github-runners.ImageBuilderComponentProperties": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "datatype": true,
      "docs": {
        "stability": "experimental",
        "summary": "Properties for ImageBuilderComponent construct."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.ImageBuilderComponentProperties",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/image-builders/aws-image-builder/builder.ts",
        "line": 112
      },
      "name": "ImageBuilderComponentProperties",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "remarks": "On Linux, these are bash commands. On Windows, there are PowerShell commands.",
            "stability": "experimental",
            "summary": "Shell commands to run when adding this component to the image."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/builder.ts",
            "line": 133
          },
          "name": "commands",
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Component description."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/builder.ts",
            "line": 126
          },
          "name": "description",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Component display name."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/builder.ts",
            "line": 121
          },
          "name": "displayName",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "Must match the builder platform.",
            "stability": "experimental",
            "summary": "Component platform."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/builder.ts",
            "line": 116
          },
          "name": "platform",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Optional assets to add to the built image."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/builder.ts",
            "line": 138
          },
          "name": "assets",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "@cloudsnorkel/cdk-github-runners.ImageBuilderAsset"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "false",
            "stability": "experimental",
            "summary": "Require a reboot after installing this component."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/builder.ts",
            "line": 145
          },
          "name": "reboot",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        }
      ],
      "symbolId": "src/image-builders/aws-image-builder/builder:ImageBuilderComponentProperties"
    },
    "@cloudsnorkel/cdk-github-runners.LambdaAccess": {
      "abstract": true,
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "docs": {
        "remarks": "If you need a custom access point, you can implement this abstract class yourself. Note that the Lambda functions expect API Gateway v1 or v2 input. They also expect every URL under the constructed URL to point to the function.",
        "stability": "experimental",
        "summary": "Access configuration options for Lambda functions like setup and webhook function. Use this to limit access to these functions."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.LambdaAccess",
      "initializer": {
        "docs": {
          "stability": "experimental"
        }
      },
      "kind": "class",
      "locationInModule": {
        "filename": "src/access.ts",
        "line": 48
      },
      "methods": [
        {
          "docs": {
            "remarks": "This is the most secure option, but requires additional configuration. It allows you to limit access to specific IP addresses and even to a specific VPC.\n\nTo limit access to GitHub.com use:\n\n```\nLambdaAccess.apiGateway({\n  allowedIps: LambdaAccess.githubWebhookIps(),\n});\n```\n\nAlternatively, get and manually update the list manually with:\n\n```\ncurl https://api.github.com/meta | jq .hooks\n```",
            "stability": "experimental",
            "summary": "Provide access using API Gateway."
          },
          "locationInModule": {
            "filename": "src/access.ts",
            "line": 80
          },
          "name": "apiGateway",
          "parameters": [
            {
              "name": "props",
              "optional": true,
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.ApiGatewayAccessProps"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.LambdaAccess"
            }
          },
          "static": true
        },
        {
          "docs": {
            "remarks": "Note that downloading dynamic data during deployment is not recommended in CDK. This is a workaround for the lack of a better solution.",
            "stability": "experimental",
            "summary": "Downloads the list of IP addresses used by GitHub.com for webhooks."
          },
          "locationInModule": {
            "filename": "src/access.ts",
            "line": 89
          },
          "name": "githubWebhookIps",
          "returns": {
            "type": {
              "collection": {
                "elementtype": {
                  "primitive": "string"
                },
                "kind": "array"
              }
            }
          },
          "static": true
        },
        {
          "docs": {
            "remarks": "This is the default and simplest option. It puts no limits on the requester, but the Lambda functions themselves authenticate every request.",
            "stability": "experimental",
            "summary": "Provide access using Lambda URL."
          },
          "locationInModule": {
            "filename": "src/access.ts",
            "line": 59
          },
          "name": "lambdaUrl",
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.LambdaAccess"
            }
          },
          "static": true
        },
        {
          "docs": {
            "remarks": "This is useful for the setup function after setup is done.",
            "stability": "experimental",
            "summary": "Disables access to the configured Lambda function."
          },
          "locationInModule": {
            "filename": "src/access.ts",
            "line": 52
          },
          "name": "noAccess",
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.LambdaAccess"
            }
          },
          "static": true
        },
        {
          "abstract": true,
          "docs": {
            "returns": "access URL or empty string if disabled",
            "stability": "experimental",
            "summary": "Creates all required resources and returns access URL or empty string if disabled."
          },
          "locationInModule": {
            "filename": "src/access.ts",
            "line": 100
          },
          "name": "bind",
          "parameters": [
            {
              "name": "scope",
              "type": {
                "fqn": "constructs.Construct"
              }
            },
            {
              "name": "id",
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "lambdaFunction",
              "type": {
                "fqn": "aws-cdk-lib.aws_lambda.Function"
              }
            }
          ],
          "returns": {
            "type": {
              "primitive": "string"
            }
          }
        }
      ],
      "name": "LambdaAccess",
      "symbolId": "src/access:LambdaAccess"
    },
    "@cloudsnorkel/cdk-github-runners.LambdaRunner": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "base": "@cloudsnorkel/cdk-github-runners.LambdaRunnerProvider",
      "docs": {
        "deprecated": "use {@link LambdaRunnerProvider }",
        "stability": "deprecated"
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.LambdaRunner",
      "initializer": {
        "docs": {
          "stability": "experimental"
        },
        "locationInModule": {
          "filename": "src/providers/lambda.ts",
          "line": 237
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          },
          {
            "name": "props",
            "optional": true,
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.LambdaRunnerProviderProps"
            }
          }
        ]
      },
      "kind": "class",
      "locationInModule": {
        "filename": "src/providers/lambda.ts",
        "line": 475
      },
      "name": "LambdaRunner",
      "symbolId": "src/providers/lambda:LambdaRunner"
    },
    "@cloudsnorkel/cdk-github-runners.LambdaRunnerProvider": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "base": "constructs.Construct",
      "docs": {
        "remarks": "Creates a Docker-based function that gets executed for each job.\n\nThis construct is not meant to be used by itself. It should be passed in the providers property for GitHubRunners.",
        "stability": "experimental",
        "summary": "GitHub Actions runner provider using Lambda to execute jobs."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.LambdaRunnerProvider",
      "initializer": {
        "docs": {
          "stability": "experimental"
        },
        "locationInModule": {
          "filename": "src/providers/lambda.ts",
          "line": 237
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          },
          {
            "name": "props",
            "optional": true,
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.LambdaRunnerProviderProps"
            }
          }
        ]
      },
      "interfaces": [
        "@cloudsnorkel/cdk-github-runners.IRunnerProvider"
      ],
      "kind": "class",
      "locationInModule": {
        "filename": "src/providers/lambda.ts",
        "line": 140
      },
      "methods": [
        {
          "docs": {
            "remarks": "You can customize the OS, architecture, VPC, subnet, security groups, etc. by passing in props.\n\nYou can add components to the image builder by calling `imageBuilder.addComponent()`.\n\nThe default OS is Amazon Linux 2023 running on x64 architecture.\n\nIncluded components:\n * `RunnerImageComponent.requiredPackages()`\n * `RunnerImageComponent.runnerUser()`\n * `RunnerImageComponent.git()`\n * `RunnerImageComponent.githubCli()`\n * `RunnerImageComponent.awsCli()`\n * `RunnerImageComponent.githubRunner()`\n * `RunnerImageComponent.lambdaEntrypoint()`",
            "stability": "experimental",
            "summary": "Create new image builder that builds Lambda specific runner images."
          },
          "locationInModule": {
            "filename": "src/providers/lambda.ts",
            "line": 181
          },
          "name": "imageBuilder",
          "parameters": [
            {
              "name": "scope",
              "type": {
                "fqn": "constructs.Construct"
              }
            },
            {
              "name": "id",
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "props",
              "optional": true,
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageBuilderProps"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.IConfigurableRunnerImageBuilder"
            }
          },
          "static": true
        },
        {
          "docs": {
            "remarks": "Called by GithubRunners and shouldn't be called manually.",
            "stability": "experimental",
            "summary": "Generate step function task(s) to start a new runner."
          },
          "locationInModule": {
            "filename": "src/providers/lambda.ts",
            "line": 330
          },
          "name": "getStepFunctionTask",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
          "parameters": [
            {
              "docs": {
                "summary": "workflow job details."
              },
              "name": "parameters",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.RunnerRuntimeParameters"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "aws-cdk-lib.aws_stepfunctions.IChainable"
            }
          }
        },
        {
          "docs": {
            "remarks": "This can be used to add additional policy\nstatements to the state machine role that are not automatically added by the task returned from {@link getStepFunctionTask}.",
            "stability": "experimental",
            "summary": "An optional method that modifies the role of the state machine after all the tasks have been generated."
          },
          "locationInModule": {
            "filename": "src/providers/lambda.ts",
            "line": 392
          },
          "name": "grantStateMachine",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
          "parameters": [
            {
              "name": "_",
              "type": {
                "fqn": "aws-cdk-lib.aws_iam.IGrantable"
              }
            }
          ]
        },
        {
          "docs": {
            "stability": "experimental"
          },
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 528
          },
          "name": "labelsFromProperties",
          "parameters": [
            {
              "name": "defaultLabel",
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "propsLabel",
              "optional": true,
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "propsLabels",
              "optional": true,
              "type": {
                "collection": {
                  "elementtype": {
                    "primitive": "string"
                  },
                  "kind": "array"
                }
              }
            }
          ],
          "protected": true,
          "returns": {
            "type": {
              "collection": {
                "elementtype": {
                  "primitive": "string"
                },
                "kind": "array"
              }
            }
          }
        },
        {
          "docs": {
            "remarks": "Also gives the status function any needed permissions to query the Docker image or AMI.",
            "stability": "experimental",
            "summary": "Return status of the runner provider to be used in the main status function."
          },
          "locationInModule": {
            "filename": "src/providers/lambda.ts",
            "line": 395
          },
          "name": "status",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
          "parameters": [
            {
              "name": "statusFunctionRole",
              "type": {
                "fqn": "aws-cdk-lib.aws_iam.IGrantable"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.IRunnerProviderStatus"
            }
          }
        }
      ],
      "name": "LambdaRunnerProvider",
      "properties": [
        {
          "const": true,
          "docs": {
            "deprecated": "Use `imageBuilder()` instead.",
            "remarks": "Use this Dockerfile unless you need to customize it further than allowed by hooks.\n\nAvailable build arguments that can be set in the image builder:\n* `BASE_IMAGE` sets the `FROM` line. This should be similar to public.ecr.aws/lambda/nodejs:14.\n* `EXTRA_PACKAGES` can be used to install additional packages.",
            "stability": "deprecated",
            "summary": "Path to Dockerfile for Linux ARM64 with all the requirement for Lambda runner."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/lambda.ts",
            "line": 161
          },
          "name": "LINUX_ARM64_DOCKERFILE_PATH",
          "static": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "const": true,
          "docs": {
            "deprecated": "Use `imageBuilder()` instead.",
            "remarks": "Use this Dockerfile unless you need to customize it further than allowed by hooks.\n\nAvailable build arguments that can be set in the image builder:\n* `BASE_IMAGE` sets the `FROM` line. This should be similar to public.ecr.aws/lambda/nodejs:14.\n* `EXTRA_PACKAGES` can be used to install additional packages.",
            "stability": "deprecated",
            "summary": "Path to Dockerfile for Linux x64 with all the requirement for Lambda runner."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/lambda.ts",
            "line": 150
          },
          "name": "LINUX_X64_DOCKERFILE_PATH",
          "static": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "The network connections associated with this resource."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/lambda.ts",
            "line": 319
          },
          "name": "connections",
          "overrides": "aws-cdk-lib.aws_ec2.IConnectable",
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.Connections"
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "The function hosting the GitHub runner."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/lambda.ts",
            "line": 201
          },
          "name": "function",
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.Function"
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "Grant principal used to add permissions to the runner role."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/lambda.ts",
            "line": 211
          },
          "name": "grantPrincipal",
          "overrides": "aws-cdk-lib.aws_iam.IGrantable",
          "type": {
            "fqn": "aws-cdk-lib.aws_iam.IPrincipal"
          }
        },
        {
          "docs": {
            "remarks": "The image is built by an image builder and is specific to Lambda.",
            "stability": "experimental",
            "summary": "Docker image loaded with GitHub Actions Runner and its prerequisites."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/lambda.ts",
            "line": 216
          },
          "name": "image",
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImage"
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "Labels associated with this provider."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/lambda.ts",
            "line": 206
          },
          "name": "labels",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        },
        {
          "docs": {
            "remarks": "Note that this is not the job log, but the runner itself. It will not contain output from the GitHub Action but only metadata on its execution.",
            "stability": "experimental",
            "summary": "Log group where provided runners will save their logs."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/lambda.ts",
            "line": 223
          },
          "name": "logGroup",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
          "type": {
            "fqn": "aws-cdk-lib.aws_logs.ILogGroup"
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "List of step functions errors that should be retried."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/lambda.ts",
            "line": 225
          },
          "name": "retryableErrors",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerProvider",
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        }
      ],
      "symbolId": "src/providers/lambda:LambdaRunnerProvider"
    },
    "@cloudsnorkel/cdk-github-runners.LambdaRunnerProviderProps": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "datatype": true,
      "docs": {
        "stability": "experimental"
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.LambdaRunnerProviderProps",
      "interfaces": [
        "@cloudsnorkel/cdk-github-runners.RunnerProviderProps"
      ],
      "kind": "interface",
      "locationInModule": {
        "filename": "src/providers/lambda.ts",
        "line": 31
      },
      "name": "LambdaRunnerProviderProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "default": "10 GiB",
            "stability": "experimental",
            "summary": "The size of the function’s /tmp directory in MiB."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/lambda.ts",
            "line": 91
          },
          "name": "ephemeralStorageSize",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.Size"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "undefined",
            "remarks": "If specified, the runner will be registered with this group name. Setting a runner group can help managing access to self-hosted runners. It\nrequires a paid GitHub account.\n\nThe group must exist or the runner will not start.\n\nUsers will still be able to trigger this runner with the correct labels. But the runner will only be able to run jobs from repos allowed to use the group.",
            "stability": "experimental",
            "summary": "GitHub Actions runner group name."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/lambda.ts",
            "line": 74
          },
          "name": "group",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "LambdaRunnerProvider.imageBuilder()",
            "remarks": "The image builder must contain the {@link RunnerImageComponent.lambdaEntrypoint} component.\n\nThe image builder determines the OS and architecture of the runner.",
            "stability": "experimental",
            "summary": "Runner image builder used to build Docker images containing GitHub Runner and all requirements."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/lambda.ts",
            "line": 41
          },
          "name": "imageBuilder",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.IRunnerImageBuilder"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "undefined",
            "deprecated": "use {@link labels } instead",
            "stability": "deprecated",
            "summary": "GitHub Actions label used for this provider."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/lambda.ts",
            "line": 49
          },
          "name": "label",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "['lambda']",
            "remarks": "These labels are used to identify which provider should spawn a new on-demand runner. Every job sends a webhook with the labels it's looking for\nbased on runs-on. We match the labels from the webhook with the labels specified here. If all the labels specified here are present in the\njob's labels, this provider will be chosen and spawn a new runner.",
            "stability": "experimental",
            "summary": "GitHub Actions labels used for this provider."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/lambda.ts",
            "line": 60
          },
          "name": "labels",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "2048",
            "remarks": "Lambda uses this value to proportionally allocate the amount of CPU\npower. For more information, see Resource Model in the AWS Lambda\nDeveloper Guide.",
            "stability": "experimental",
            "summary": "The amount of memory, in MB, that is allocated to your Lambda function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/lambda.ts",
            "line": 84
          },
          "name": "memorySize",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "public lambda with no security group",
            "deprecated": "use {@link securityGroups }",
            "stability": "deprecated",
            "summary": "Security group to assign to this instance."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/lambda.ts",
            "line": 116
          },
          "name": "securityGroup",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.ISecurityGroup"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "public lambda with no security group",
            "stability": "experimental",
            "summary": "Security groups to assign to this instance."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/lambda.ts",
            "line": 123
          },
          "name": "securityGroups",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_ec2.ISecurityGroup"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "no subnet",
            "stability": "experimental",
            "summary": "Where to place the network interfaces within the VPC."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/lambda.ts",
            "line": 130
          },
          "name": "subnetSelection",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.SubnetSelection"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Duration.minutes(15)",
            "remarks": "Because the execution time affects cost, set this value\nbased on the function's expected execution time.",
            "stability": "experimental",
            "summary": "The function execution time (in seconds) after which Lambda terminates the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/lambda.ts",
            "line": 100
          },
          "name": "timeout",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.Duration"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "no VPC",
            "stability": "experimental",
            "summary": "VPC to launch the runners in."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/lambda.ts",
            "line": 107
          },
          "name": "vpc",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IVpc"
          }
        }
      ],
      "symbolId": "src/providers/lambda:LambdaRunnerProviderProps"
    },
    "@cloudsnorkel/cdk-github-runners.LinuxUbuntuComponents": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "docs": {
        "deprecated": "Use `RunnerImageComponent` instead.",
        "remarks": "These cannot be used by {@link CodeBuildImageBuilder }.",
        "stability": "deprecated",
        "summary": "Components for Ubuntu Linux that can be used with AWS Image Builder based builders."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.LinuxUbuntuComponents",
      "initializer": {
        "docs": {
          "stability": "experimental"
        }
      },
      "kind": "class",
      "locationInModule": {
        "filename": "src/image-builders/aws-image-builder/deprecated/linux-components.ts",
        "line": 11
      },
      "methods": [
        {
          "docs": {
            "stability": "deprecated"
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/linux-components.ts",
            "line": 50
          },
          "name": "awsCli",
          "parameters": [
            {
              "name": "scope",
              "type": {
                "fqn": "constructs.Construct"
              }
            },
            {
              "name": "id",
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "architecture",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.Architecture"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.ImageBuilderComponent"
            }
          },
          "static": true
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/linux-components.ts",
            "line": 133
          },
          "name": "docker",
          "parameters": [
            {
              "name": "scope",
              "type": {
                "fqn": "constructs.Construct"
              }
            },
            {
              "name": "id",
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "_architecture",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.Architecture"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.ImageBuilderComponent"
            }
          },
          "static": true
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/linux-components.ts",
            "line": 151
          },
          "name": "extraCertificates",
          "parameters": [
            {
              "name": "scope",
              "type": {
                "fqn": "constructs.Construct"
              }
            },
            {
              "name": "id",
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "path",
              "type": {
                "primitive": "string"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.ImageBuilderComponent"
            }
          },
          "static": true
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/linux-components.ts",
            "line": 88
          },
          "name": "git",
          "parameters": [
            {
              "name": "scope",
              "type": {
                "fqn": "constructs.Construct"
              }
            },
            {
              "name": "id",
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "_architecture",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.Architecture"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.ImageBuilderComponent"
            }
          },
          "static": true
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/linux-components.ts",
            "line": 73
          },
          "name": "githubCli",
          "parameters": [
            {
              "name": "scope",
              "type": {
                "fqn": "constructs.Construct"
              }
            },
            {
              "name": "id",
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "_architecture",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.Architecture"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.ImageBuilderComponent"
            }
          },
          "static": true
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/linux-components.ts",
            "line": 101
          },
          "name": "githubRunner",
          "parameters": [
            {
              "name": "scope",
              "type": {
                "fqn": "constructs.Construct"
              }
            },
            {
              "name": "id",
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "runnerVersion",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.RunnerVersion"
              }
            },
            {
              "name": "architecture",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.Architecture"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.ImageBuilderComponent"
            }
          },
          "static": true
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/linux-components.ts",
            "line": 12
          },
          "name": "requiredPackages",
          "parameters": [
            {
              "name": "scope",
              "type": {
                "fqn": "constructs.Construct"
              }
            },
            {
              "name": "id",
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "architecture",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.Architecture"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.ImageBuilderComponent"
            }
          },
          "static": true
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/linux-components.ts",
            "line": 37
          },
          "name": "runnerUser",
          "parameters": [
            {
              "name": "scope",
              "type": {
                "fqn": "constructs.Construct"
              }
            },
            {
              "name": "id",
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "_architecture",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.Architecture"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.ImageBuilderComponent"
            }
          },
          "static": true
        }
      ],
      "name": "LinuxUbuntuComponents",
      "symbolId": "src/image-builders/aws-image-builder/deprecated/linux-components:LinuxUbuntuComponents"
    },
    "@cloudsnorkel/cdk-github-runners.LogOptions": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "datatype": true,
      "docs": {
        "stability": "experimental",
        "summary": "Defines what execution history events are logged and where they are logged."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.LogOptions",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/runner.ts",
        "line": 174
      },
      "name": "LogOptions",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "default": "false",
            "stability": "experimental",
            "summary": "Determines whether execution data is included in your log."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/runner.ts",
            "line": 185
          },
          "name": "includeExecutionData",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "ERROR",
            "stability": "experimental",
            "summary": "Defines which category of execution history events are logged."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/runner.ts",
            "line": 192
          },
          "name": "level",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_stepfunctions.LogLevel"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "The log group where the execution history events will be logged."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/runner.ts",
            "line": 178
          },
          "name": "logGroupName",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "logs.RetentionDays.ONE_MONTH",
            "remarks": "When updating\nthis property, unsetting it doesn't remove the log retention policy. To\nremove the retention policy, set the value to `INFINITE`.",
            "stability": "experimental",
            "summary": "The number of days log events are kept in CloudWatch Logs."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/runner.ts",
            "line": 201
          },
          "name": "logRetention",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_logs.RetentionDays"
          }
        }
      ],
      "symbolId": "src/runner:LogOptions"
    },
    "@cloudsnorkel/cdk-github-runners.Os": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "docs": {
        "stability": "experimental",
        "summary": "OS enum for an image."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.Os",
      "kind": "class",
      "locationInModule": {
        "filename": "src/providers/common.ts",
        "line": 115
      },
      "methods": [
        {
          "docs": {
            "stability": "experimental",
            "summary": "Checks if the given OS is the same as this one."
          },
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 160
          },
          "name": "is",
          "parameters": [
            {
              "docs": {
                "summary": "OS to compare."
              },
              "name": "os",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.Os"
              }
            }
          ],
          "returns": {
            "type": {
              "primitive": "boolean"
            }
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "Checks if this OS is in a given list."
          },
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 169
          },
          "name": "isIn",
          "parameters": [
            {
              "docs": {
                "summary": "list of OS to check."
              },
              "name": "oses",
              "type": {
                "collection": {
                  "elementtype": {
                    "fqn": "@cloudsnorkel/cdk-github-runners.Os"
                  },
                  "kind": "array"
                }
              }
            }
          ],
          "returns": {
            "type": {
              "primitive": "boolean"
            }
          }
        }
      ],
      "name": "Os",
      "properties": [
        {
          "const": true,
          "docs": {
            "deprecated": "use {@link LINUX_UBUNTU } or {@link LINUX_AMAZON_2 } or {@link LINUX_AMAZON_2023 }",
            "stability": "deprecated",
            "summary": "Linux."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 121
          },
          "name": "LINUX",
          "static": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.Os"
          }
        },
        {
          "const": true,
          "docs": {
            "stability": "experimental",
            "summary": "Amazon Linux 2."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 131
          },
          "name": "LINUX_AMAZON_2",
          "static": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.Os"
          }
        },
        {
          "const": true,
          "docs": {
            "stability": "experimental",
            "summary": "Amazon Linux 2023."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 136
          },
          "name": "LINUX_AMAZON_2023",
          "static": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.Os"
          }
        },
        {
          "const": true,
          "docs": {
            "stability": "experimental",
            "summary": "Ubuntu Linux."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 126
          },
          "name": "LINUX_UBUNTU",
          "static": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.Os"
          }
        },
        {
          "const": true,
          "docs": {
            "stability": "experimental",
            "summary": "Windows."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 146
          },
          "name": "WINDOWS",
          "static": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.Os"
          }
        },
        {
          "docs": {
            "stability": "experimental"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 152
          },
          "name": "name",
          "type": {
            "primitive": "string"
          }
        }
      ],
      "symbolId": "src/providers/common:Os"
    },
    "@cloudsnorkel/cdk-github-runners.ProviderRetryOptions": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "datatype": true,
      "docs": {
        "remarks": "The default is to retry 23 times for about 24 hours with increasing interval.",
        "stability": "experimental",
        "summary": "Retry options for providers."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.ProviderRetryOptions",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/providers/common.ts",
        "line": 258
      },
      "name": "ProviderRetryOptions",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "default": "1.3",
            "stability": "experimental",
            "summary": "Multiplication for how much longer the wait interval gets on every retry."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 285
          },
          "name": "backoffRate",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "1 minute",
            "remarks": "This interval will be multiplied by {@link backoffRate} each retry.",
            "stability": "experimental",
            "summary": "How much time to wait after first retryable failure."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 271
          },
          "name": "interval",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.Duration"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "23",
            "stability": "experimental",
            "summary": "How many times to retry."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 278
          },
          "name": "maxAttempts",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "true",
            "remarks": "Which failures generate a retry depends on the specific provider.",
            "stability": "experimental",
            "summary": "Set to true to retry provider on supported failures."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 264
          },
          "name": "retry",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        }
      ],
      "symbolId": "src/providers/common:ProviderRetryOptions"
    },
    "@cloudsnorkel/cdk-github-runners.RunnerAmi": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "datatype": true,
      "docs": {
        "stability": "experimental",
        "summary": "Description of a AMI built by {@link RunnerImageBuilder }."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.RunnerAmi",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/providers/common.ts",
        "line": 226
      },
      "name": "RunnerAmi",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Architecture of the image."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 235
          },
          "name": "architecture",
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.Architecture"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Launch template pointing to the latest AMI."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 230
          },
          "name": "launchTemplate",
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.ILaunchTemplate"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "OS type of the image."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 240
          },
          "name": "os",
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.Os"
          }
        },
        {
          "abstract": true,
          "docs": {
            "deprecated": "open a ticket if you need this",
            "stability": "deprecated",
            "summary": "Installed runner version."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 252
          },
          "name": "runnerVersion",
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.RunnerVersion"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Log group where image builds are logged."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 245
          },
          "name": "logGroup",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_logs.LogGroup"
          }
        }
      ],
      "symbolId": "src/providers/common:RunnerAmi"
    },
    "@cloudsnorkel/cdk-github-runners.RunnerImage": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "datatype": true,
      "docs": {
        "stability": "experimental",
        "summary": "Description of a Docker image built by {@link RunnerImageBuilder }."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImage",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/providers/common.ts",
        "line": 182
      },
      "name": "RunnerImage",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Architecture of the image."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 196
          },
          "name": "architecture",
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.Architecture"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "ECR repository containing the image."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 186
          },
          "name": "imageRepository",
          "type": {
            "fqn": "aws-cdk-lib.aws_ecr.IRepository"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Static image tag where the image will be pushed."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 191
          },
          "name": "imageTag",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "OS type of the image."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 201
          },
          "name": "os",
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.Os"
          }
        },
        {
          "abstract": true,
          "docs": {
            "deprecated": "open a ticket if you need this",
            "stability": "deprecated",
            "summary": "Installed runner version."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 213
          },
          "name": "runnerVersion",
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.RunnerVersion"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Log group where image builds are logged."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 206
          },
          "name": "logGroup",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_logs.LogGroup"
          }
        }
      ],
      "symbolId": "src/providers/common:RunnerImage"
    },
    "@cloudsnorkel/cdk-github-runners.RunnerImageAsset": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "datatype": true,
      "docs": {
        "stability": "experimental",
        "summary": "Asset to copy into a built image."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageAsset",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/image-builders/common.ts",
        "line": 119
      },
      "name": "RunnerImageAsset",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "remarks": "Can be a file or a directory.",
            "stability": "experimental",
            "summary": "Path on local system to copy into the image."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/common.ts",
            "line": 123
          },
          "name": "source",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Target path in the built image."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/common.ts",
            "line": 128
          },
          "name": "target",
          "type": {
            "primitive": "string"
          }
        }
      ],
      "symbolId": "src/image-builders/common:RunnerImageAsset"
    },
    "@cloudsnorkel/cdk-github-runners.RunnerImageBuilder": {
      "abstract": true,
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "base": "constructs.Construct",
      "docs": {
        "remarks": "Images can be customized before passed into the provider by adding or removing components to be installed.\n\nImages are rebuilt every week by default to ensure that the latest security patches are applied.",
        "stability": "experimental",
        "summary": "GitHub Runner image builder. Builds a Docker image or AMI with GitHub Runner and other requirements installed."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageBuilder",
      "initializer": {
        "docs": {
          "stability": "experimental"
        },
        "locationInModule": {
          "filename": "src/image-builders/common.ts",
          "line": 330
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          },
          {
            "name": "props",
            "optional": true,
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageBuilderProps"
            }
          }
        ],
        "protected": true
      },
      "interfaces": [
        "@cloudsnorkel/cdk-github-runners.IConfigurableRunnerImageBuilder"
      ],
      "kind": "class",
      "locationInModule": {
        "filename": "src/image-builders/api.ts",
        "line": 15
      },
      "methods": [
        {
          "docs": {
            "remarks": "The implementation will differ based on the OS, architecture, and requested builder type.",
            "stability": "experimental",
            "summary": "Create a new image builder based on the provided properties."
          },
          "locationInModule": {
            "filename": "src/image-builders/api.ts",
            "line": 19
          },
          "name": "new",
          "parameters": [
            {
              "name": "scope",
              "type": {
                "fqn": "constructs.Construct"
              }
            },
            {
              "name": "id",
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "props",
              "optional": true,
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageBuilderProps"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.IConfigurableRunnerImageBuilder"
            }
          },
          "static": true
        },
        {
          "docs": {
            "remarks": "The component will be added to the end of the list of components.",
            "stability": "experimental",
            "summary": "Add a component to the image builder."
          },
          "locationInModule": {
            "filename": "src/image-builders/common.ts",
            "line": 345
          },
          "name": "addComponent",
          "overrides": "@cloudsnorkel/cdk-github-runners.IConfigurableRunnerImageBuilder",
          "parameters": [
            {
              "name": "component",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageComponent"
              }
            }
          ]
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "Anything that ends up with a launch template pointing to an AMI that runs GitHub self-hosted runners can be used. A simple implementation could even point to an existing AMI and nothing else.\n\nThe AMI can be further updated over time manually or using a schedule as long as it is always written to the same launch template.",
            "stability": "experimental",
            "summary": "Build and return an AMI with GitHub Runner installed in it."
          },
          "locationInModule": {
            "filename": "src/image-builders/common.ts",
            "line": 340
          },
          "name": "bindAmi",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerImageBuilder",
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.RunnerAmi"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "Anything that ends up with an ECR repository containing a Docker image that runs GitHub self-hosted runners can be used. A simple implementation could even point to an existing image and nothing else.\n\nIt's important that the specified image tag be available at the time the repository is available. Providers usually assume the image is ready and will fail if it's not.\n\nThe image can be further updated over time manually or using a schedule as long as it is always written to the same tag.",
            "stability": "experimental",
            "summary": "Build and return a Docker image with GitHub Runner installed in it."
          },
          "locationInModule": {
            "filename": "src/image-builders/common.ts",
            "line": 338
          },
          "name": "bindDockerImage",
          "overrides": "@cloudsnorkel/cdk-github-runners.IRunnerImageBuilder",
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImage"
            }
          }
        },
        {
          "docs": {
            "remarks": "Removal is done by component name. Multiple components with the same name will all be removed.",
            "stability": "experimental",
            "summary": "Remove a component from the image builder."
          },
          "locationInModule": {
            "filename": "src/image-builders/common.ts",
            "line": 349
          },
          "name": "removeComponent",
          "overrides": "@cloudsnorkel/cdk-github-runners.IConfigurableRunnerImageBuilder",
          "parameters": [
            {
              "name": "component",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageComponent"
              }
            }
          ]
        }
      ],
      "name": "RunnerImageBuilder",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "The network connections associated with this resource."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/common.ts",
            "line": 342
          },
          "name": "connections",
          "overrides": "aws-cdk-lib.aws_ec2.IConnectable",
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.Connections"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "The principal to grant permissions to."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/common.ts",
            "line": 343
          },
          "name": "grantPrincipal",
          "overrides": "aws-cdk-lib.aws_iam.IGrantable",
          "type": {
            "fqn": "aws-cdk-lib.aws_iam.IPrincipal"
          }
        },
        {
          "docs": {
            "stability": "experimental"
          },
          "locationInModule": {
            "filename": "src/image-builders/common.ts",
            "line": 328
          },
          "name": "components",
          "protected": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageComponent"
              },
              "kind": "array"
            }
          }
        }
      ],
      "symbolId": "src/image-builders/api:RunnerImageBuilder"
    },
    "@cloudsnorkel/cdk-github-runners.RunnerImageBuilderProps": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "datatype": true,
      "docs": {
        "stability": "experimental"
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageBuilderProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/image-builders/common.ts",
        "line": 131
      },
      "name": "RunnerImageBuilderProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "default": "Architecture.X86_64",
            "stability": "experimental",
            "summary": "Image architecture."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/common.ts",
            "line": 137
          },
          "name": "architecture",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.Architecture"
          }
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "Only used when builderType is RunnerImageBuilderType.AWS_IMAGE_BUILDER.",
            "stability": "experimental",
            "summary": "Options specific to AWS Image Builder."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/common.ts",
            "line": 246
          },
          "name": "awsImageBuilderOptions",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.AwsImageBuilderRunnerImageBuilderProps"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "latest Ubuntu 22.04 AMI for Os.LINUX_UBUNTU, latest Amazon Linux 2 AMI for Os.LINUX_AMAZON_2, latest Windows Server 2022 AMI for Os.WINDOWS",
            "remarks": "This can be an actual AMI or an AWS Image Builder ARN that points to the latest AMI. For example `arn:aws:imagebuilder:us-east-1:aws:image/ubuntu-server-22-lts-x86/x.x.x` would always use the latest version of Ubuntu 22.04 in each build. If you want a specific version, you can replace `x.x.x` with that version.",
            "stability": "experimental",
            "summary": "Base AMI from which runner AMIs will be built."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/common.ts",
            "line": 171
          },
          "name": "baseAmi",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "public.ecr.aws/lts/ubuntu:22.04 for Os.LINUX_UBUNTU, public.ecr.aws/amazonlinux/amazonlinux:2 for Os.LINUX_AMAZON_2, mcr.microsoft.com/windows/servercore:ltsc2019-amd64 for Os.WINDOWS",
            "remarks": "When using private images from a different account or not on ECR, you may need to include additional setup commands with {@link dockerSetupCommands}.",
            "stability": "experimental",
            "summary": "Base image from which Docker runner images will be built."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/common.ts",
            "line": 153
          },
          "name": "baseDockerImage",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "CodeBuild for Linux Docker image, AWS Image Builder for Windows Docker image and any AMI",
            "stability": "experimental"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/common.ts",
            "line": 236
          },
          "name": "builderType",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageBuilderType"
          }
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "Only used when builderType is RunnerImageBuilderType.CODE_BUILD.",
            "stability": "experimental",
            "summary": "Options specific to CodeBuild image builder."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/common.ts",
            "line": 241
          },
          "name": "codeBuildOptions",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.CodeBuildRunnerImageBuilderProps"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "none",
            "stability": "experimental",
            "summary": "Components to install on the image."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/common.ts",
            "line": 185
          },
          "name": "components",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageComponent"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "[]",
            "remarks": "Use this to execute commands such as `docker login` or `aws ecr get-login-password` to pull private base images.",
            "stability": "experimental",
            "summary": "Additional commands to run on the build host before starting the Docker runner image build."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/common.ts",
            "line": 162
          },
          "name": "dockerSetupCommands",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "RemovalPolicy.DESTROY",
            "remarks": "If deployment fails on the custom resource, try setting this to `RemovalPolicy.RETAIN`. This way the CodeBuild logs can still be viewed, and you can see why the build failed.\n\nWe try to not leave anything behind when removed. But sometimes a log staying behind is useful.",
            "stability": "experimental",
            "summary": "Removal policy for logs of image builds."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/common.ts",
            "line": 231
          },
          "name": "logRemovalPolicy",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.RemovalPolicy"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "logs.RetentionDays.ONE_MONTH",
            "remarks": "When updating\nthis property, unsetting it doesn't remove the log retention policy. To\nremove the retention policy, set the value to `INFINITE`.",
            "stability": "experimental",
            "summary": "The number of days log events are kept in CloudWatch Logs."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/common.ts",
            "line": 222
          },
          "name": "logRetention",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_logs.RetentionDays"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "OS.LINUX_UBUNTU",
            "stability": "experimental",
            "summary": "Image OS."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/common.ts",
            "line": 144
          },
          "name": "os",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.Os"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Duration.days(7)",
            "remarks": "Useful for keeping the image up-do-date with the latest GitHub runner version and latest OS updates.\n\nSet to zero to disable.",
            "stability": "experimental",
            "summary": "Schedule the image to be rebuilt every given interval."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/common.ts",
            "line": 194
          },
          "name": "rebuildInterval",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.Duration"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "latest version available",
            "stability": "experimental",
            "summary": "Version of GitHub Runners to install."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/common.ts",
            "line": 178
          },
          "name": "runnerVersion",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.RunnerVersion"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Security Groups to assign to this instance."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/common.ts",
            "line": 206
          },
          "name": "securityGroups",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_ec2.ISecurityGroup"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "no subnet",
            "stability": "experimental",
            "summary": "Where to place the network interfaces within the VPC."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/common.ts",
            "line": 213
          },
          "name": "subnetSelection",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.SubnetSelection"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "no VPC",
            "stability": "experimental",
            "summary": "VPC to build the image in."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/common.ts",
            "line": 201
          },
          "name": "vpc",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IVpc"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "true",
            "remarks": "It's usually best to leave this enabled to ensure everything is ready once deployment is done. However, it can be disabled to speed up deployment in case where you have a lot of image components that can take a long time to build.\n\nDisabling this option means a finished deployment is not ready to be used. You will have to wait for the image to finish building before the system can be used.\n\nDisabling this option may also mean any changes to settings or components can take up to a week (default rebuild interval) to take effect.",
            "stability": "experimental",
            "summary": "Wait for image to finish building during deployment."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/common.ts",
            "line": 257
          },
          "name": "waitOnDeploy",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        }
      ],
      "symbolId": "src/image-builders/common:RunnerImageBuilderProps"
    },
    "@cloudsnorkel/cdk-github-runners.RunnerImageBuilderType": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "docs": {
        "stability": "experimental"
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageBuilderType",
      "kind": "enum",
      "locationInModule": {
        "filename": "src/image-builders/common.ts",
        "line": 260
      },
      "members": [
        {
          "docs": {
            "remarks": "Faster than AWS Image Builder, but can only be used to build Linux Docker images.",
            "stability": "experimental",
            "summary": "Build runner images using AWS CodeBuild."
          },
          "name": "CODE_BUILD"
        },
        {
          "docs": {
            "remarks": "Slower than CodeBuild, but can be used to build any type of image including AMIs and Windows images.",
            "stability": "experimental",
            "summary": "Build runner images using AWS Image Builder."
          },
          "name": "AWS_IMAGE_BUILDER"
        }
      ],
      "name": "RunnerImageBuilderType",
      "symbolId": "src/image-builders/common:RunnerImageBuilderType"
    },
    "@cloudsnorkel/cdk-github-runners.RunnerImageComponent": {
      "abstract": true,
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "docs": {
        "remarks": "They can run commands in the image, copy files into the image, and run some Docker commands.",
        "stability": "experimental",
        "summary": "Components are used to build runner images."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageComponent",
      "initializer": {
        "docs": {
          "stability": "experimental"
        }
      },
      "kind": "class",
      "locationInModule": {
        "filename": "src/image-builders/components.ts",
        "line": 39
      },
      "methods": [
        {
          "docs": {
            "stability": "experimental",
            "summary": "A component to install the AWS CLI."
          },
          "locationInModule": {
            "filename": "src/image-builders/components.ts",
            "line": 153
          },
          "name": "awsCli",
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageComponent"
            }
          },
          "static": true
        },
        {
          "docs": {
            "remarks": "The order of operations is (1) assets (2) commands (3) docker commands.\n\nUse this to customize the image for the runner.\n\n**WARNING:** Docker commands are not guaranteed to be included before the next component",
            "stability": "experimental",
            "summary": "Define a custom component that can run commands in the image, copy files into the image, and run some Docker commands."
          },
          "locationInModule": {
            "filename": "src/image-builders/components.ts",
            "line": 49
          },
          "name": "custom",
          "parameters": [
            {
              "name": "props",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageComponentCustomProps"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageComponent"
            }
          },
          "static": true
        },
        {
          "docs": {
            "remarks": "On Windows this sets up dockerd for Windows containers without Docker Desktop. If you need Linux containers on Windows, you'll need to install Docker Desktop which doesn't seem to play well with servers (PRs welcome).",
            "stability": "experimental",
            "summary": "A component to install Docker."
          },
          "locationInModule": {
            "filename": "src/image-builders/components.ts",
            "line": 371
          },
          "name": "docker",
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageComponent"
            }
          },
          "static": true
        },
        {
          "docs": {
            "deprecated": "use `docker()`",
            "stability": "deprecated",
            "summary": "A component to install Docker-in-Docker."
          },
          "locationInModule": {
            "filename": "src/image-builders/components.ts",
            "line": 447
          },
          "name": "dockerInDocker",
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageComponent"
            }
          },
          "static": true
        },
        {
          "docs": {
            "remarks": "These variables only affect the jobs ran by the runner. They are not global. They do not affect other components.\n\nIt is not recommended to use this component to pass secrets. Instead, use GitHub Secrets or AWS Secrets Manager.\n\nMust be used after the {@link githubRunner} component.",
            "stability": "experimental",
            "summary": "A component to add environment variables for jobs the runner executes."
          },
          "locationInModule": {
            "filename": "src/image-builders/components.ts",
            "line": 549
          },
          "name": "environmentVariables",
          "parameters": [
            {
              "name": "vars",
              "type": {
                "collection": {
                  "elementtype": {
                    "primitive": "string"
                  },
                  "kind": "map"
                }
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageComponent"
            }
          },
          "static": true
        },
        {
          "docs": {
            "remarks": "This can be used to support GitHub Enterprise Server with self-signed certificate.",
            "stability": "experimental",
            "summary": "A component to add a trusted certificate authority."
          },
          "locationInModule": {
            "filename": "src/image-builders/components.ts",
            "line": 457
          },
          "name": "extraCertificates",
          "parameters": [
            {
              "docs": {
                "summary": "path to certificate file in PEM format."
              },
              "name": "source",
              "type": {
                "primitive": "string"
              }
            },
            {
              "docs": {
                "summary": "unique certificate name to be used on runner file system."
              },
              "name": "name",
              "type": {
                "primitive": "string"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageComponent"
            }
          },
          "static": true
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "A component to install the GitHub CLI."
          },
          "locationInModule": {
            "filename": "src/image-builders/components.ts",
            "line": 232
          },
          "name": "git",
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageComponent"
            }
          },
          "static": true
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "A component to install the GitHub CLI."
          },
          "locationInModule": {
            "filename": "src/image-builders/components.ts",
            "line": 189
          },
          "name": "githubCli",
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageComponent"
            }
          },
          "static": true
        },
        {
          "docs": {
            "remarks": "This is the actual executable that connects to GitHub to ask for jobs and then execute them.",
            "stability": "experimental",
            "summary": "A component to install the GitHub Actions Runner."
          },
          "locationInModule": {
            "filename": "src/image-builders/components.ts",
            "line": 276
          },
          "name": "githubRunner",
          "parameters": [
            {
              "docs": {
                "remarks": "Usually you would set this to latest.",
                "summary": "The version of the runner to install."
              },
              "name": "runnerVersion",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.RunnerVersion"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageComponent"
            }
          },
          "static": true
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "A component to set up the required Lambda entrypoint for Lambda runners."
          },
          "locationInModule": {
            "filename": "src/image-builders/components.ts",
            "line": 507
          },
          "name": "lambdaEntrypoint",
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageComponent"
            }
          },
          "static": true
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "A component to install the required packages for the runner."
          },
          "locationInModule": {
            "filename": "src/image-builders/components.ts",
            "line": 74
          },
          "name": "requiredPackages",
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageComponent"
            }
          },
          "static": true
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "A component to prepare the required runner user."
          },
          "locationInModule": {
            "filename": "src/image-builders/components.ts",
            "line": 122
          },
          "name": "runnerUser",
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageComponent"
            }
          },
          "static": true
        },
        {
          "docs": {
            "remarks": "Can be used to copy files into the image.",
            "stability": "experimental",
            "summary": "Returns assets to copy into the built image."
          },
          "locationInModule": {
            "filename": "src/image-builders/components.ts",
            "line": 586
          },
          "name": "getAssets",
          "parameters": [
            {
              "name": "_os",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.Os"
              }
            },
            {
              "name": "_architecture",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.Architecture"
              }
            }
          ],
          "returns": {
            "type": {
              "collection": {
                "elementtype": {
                  "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageAsset"
                },
                "kind": "array"
              }
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "Can be used to install packages, setup build prerequisites, etc.",
            "stability": "experimental",
            "summary": "Returns commands to run to in built image."
          },
          "locationInModule": {
            "filename": "src/image-builders/components.ts",
            "line": 581
          },
          "name": "getCommands",
          "parameters": [
            {
              "name": "_os",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.Os"
              }
            },
            {
              "name": "_architecture",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.Architecture"
              }
            }
          ],
          "returns": {
            "type": {
              "collection": {
                "elementtype": {
                  "primitive": "string"
                },
                "kind": "array"
              }
            }
          }
        },
        {
          "docs": {
            "remarks": "Can be used to add commands like `VOLUME`, `ENTRYPOINT`, `CMD`, etc.\n\nDocker commands are added after assets and normal commands.",
            "stability": "experimental",
            "summary": "Returns Docker commands to run to in built image."
          },
          "locationInModule": {
            "filename": "src/image-builders/components.ts",
            "line": 595
          },
          "name": "getDockerCommands",
          "parameters": [
            {
              "name": "_os",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.Os"
              }
            },
            {
              "name": "_architecture",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.Architecture"
              }
            }
          ],
          "returns": {
            "type": {
              "collection": {
                "elementtype": {
                  "primitive": "string"
                },
                "kind": "array"
              }
            }
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "Returns true if the image builder should be rebooted after this component is installed."
          },
          "locationInModule": {
            "filename": "src/image-builders/components.ts",
            "line": 602
          },
          "name": "shouldReboot",
          "parameters": [
            {
              "name": "_os",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.Os"
              }
            },
            {
              "name": "_architecture",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.Architecture"
              }
            }
          ],
          "returns": {
            "type": {
              "primitive": "boolean"
            }
          }
        }
      ],
      "name": "RunnerImageComponent",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "remarks": "Used to identify component in image build logs, and for {@link IConfigurableRunnerImageBuilder.removeComponent }",
            "stability": "experimental",
            "summary": "Component name."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/components.ts",
            "line": 576
          },
          "name": "name",
          "type": {
            "primitive": "string"
          }
        }
      ],
      "symbolId": "src/image-builders/components:RunnerImageComponent"
    },
    "@cloudsnorkel/cdk-github-runners.RunnerImageComponentCustomProps": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "datatype": true,
      "docs": {
        "stability": "experimental"
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageComponentCustomProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/image-builders/components.ts",
        "line": 8
      },
      "name": "RunnerImageComponentCustomProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Assets to copy into the built image."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/components.ts",
            "line": 24
          },
          "name": "assets",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "@cloudsnorkel/cdk-github-runners.RunnerImageAsset"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Commands to run in the built image."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/components.ts",
            "line": 19
          },
          "name": "commands",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "For example: `['ENV foo=bar', 'RUN echo $foo']`\n\nThese commands are ignored when building AMIs.",
            "stability": "experimental",
            "summary": "Docker commands to run in the built image."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/components.ts",
            "line": 33
          },
          "name": "dockerCommands",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "Name must only contain alphanumeric characters and dashes.",
            "stability": "experimental",
            "summary": "Component name used for (1) image build logging and (2) identifier for {@link IConfigurableRunnerImageBuilder.removeComponent }."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/image-builders/components.ts",
            "line": 14
          },
          "name": "name",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        }
      ],
      "symbolId": "src/image-builders/components:RunnerImageComponentCustomProps"
    },
    "@cloudsnorkel/cdk-github-runners.RunnerProviderProps": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "datatype": true,
      "docs": {
        "stability": "experimental",
        "summary": "Common properties for all runner providers."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.RunnerProviderProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/providers/common.ts",
        "line": 291
      },
      "name": "RunnerProviderProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "default": "logs.RetentionDays.ONE_MONTH",
            "remarks": "When updating\nthis property, unsetting it doesn't remove the log retention policy. To\nremove the retention policy, set the value to `INFINITE`.",
            "stability": "experimental",
            "summary": "The number of days log events are kept in CloudWatch Logs."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 299
          },
          "name": "logRetention",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_logs.RetentionDays"
          }
        },
        {
          "abstract": true,
          "docs": {
            "deprecated": "use {@link retryOptions } on {@link GitHubRunners } instead",
            "stability": "deprecated"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 304
          },
          "name": "retryOptions",
          "optional": true,
          "type": {
            "fqn": "@cloudsnorkel/cdk-github-runners.ProviderRetryOptions"
          }
        }
      ],
      "symbolId": "src/providers/common:RunnerProviderProps"
    },
    "@cloudsnorkel/cdk-github-runners.RunnerRuntimeParameters": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "datatype": true,
      "docs": {
        "remarks": "```sh\n./config.sh --unattended --url \"{REGISTRATION_URL}\" --token \"${RUNNER_TOKEN}\" --ephemeral --work _work --labels \"${RUNNER_LABEL}\" --name \"${RUNNER_NAME}\" --disableupdate\n```\n\nAll parameters are specified as step function paths and therefore must be used only in step function task parameters.",
        "stability": "experimental",
        "summary": "Workflow job parameters as parsed from the webhook event. Pass these into your runner executor and run something like:."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.RunnerRuntimeParameters",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/providers/common.ts",
        "line": 316
      },
      "name": "RunnerRuntimeParameters",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "remarks": "Most of the time this will be github.com but for self-hosted GitHub instances, this will be different.",
            "stability": "experimental",
            "summary": "Path to GitHub domain."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 330
          },
          "name": "githubDomainPath",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Path to repository owner name."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 335
          },
          "name": "ownerPath",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Repository or organization URL to register runner at."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 345
          },
          "name": "registrationUrl",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Path to repository name."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 340
          },
          "name": "repoPath",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "We specifically set the name to make troubleshooting easier.",
            "stability": "experimental",
            "summary": "Path to desired runner name."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 325
          },
          "name": "runnerNamePath",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "experimental",
            "summary": "Path to runner token used to register token."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 320
          },
          "name": "runnerTokenPath",
          "type": {
            "primitive": "string"
          }
        }
      ],
      "symbolId": "src/providers/common:RunnerRuntimeParameters"
    },
    "@cloudsnorkel/cdk-github-runners.RunnerVersion": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "docs": {
        "stability": "experimental",
        "summary": "Defines desired GitHub Actions runner version."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.RunnerVersion",
      "initializer": {
        "docs": {
          "stability": "experimental"
        },
        "locationInModule": {
          "filename": "src/providers/common.ts",
          "line": 39
        },
        "parameters": [
          {
            "name": "version",
            "type": {
              "primitive": "string"
            }
          }
        ],
        "protected": true
      },
      "kind": "class",
      "locationInModule": {
        "filename": "src/providers/common.ts",
        "line": 20
      },
      "methods": [
        {
          "docs": {
            "stability": "experimental",
            "summary": "Use the latest version available at the time the runner provider image is built."
          },
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 24
          },
          "name": "latest",
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.RunnerVersion"
            }
          },
          "static": true
        },
        {
          "docs": {
            "see": "https://github.com/actions/runner/releases",
            "stability": "experimental",
            "summary": "Use a specific version."
          },
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 35
          },
          "name": "specific",
          "parameters": [
            {
              "docs": {
                "summary": "GitHub Runner version."
              },
              "name": "version",
              "type": {
                "primitive": "string"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.RunnerVersion"
            }
          },
          "static": true
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "Check if two versions are the same."
          },
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 47
          },
          "name": "is",
          "parameters": [
            {
              "docs": {
                "summary": "version to compare."
              },
              "name": "other",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.RunnerVersion"
              }
            }
          ],
          "returns": {
            "type": {
              "primitive": "boolean"
            }
          }
        }
      ],
      "name": "RunnerVersion",
      "properties": [
        {
          "docs": {
            "stability": "experimental"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 39
          },
          "name": "version",
          "type": {
            "primitive": "string"
          }
        }
      ],
      "symbolId": "src/providers/common:RunnerVersion"
    },
    "@cloudsnorkel/cdk-github-runners.Secrets": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "base": "constructs.Construct",
      "docs": {
        "stability": "experimental",
        "summary": "Secrets required for GitHub runners operation."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.Secrets",
      "initializer": {
        "docs": {
          "stability": "experimental"
        },
        "locationInModule": {
          "filename": "src/secrets.ts",
          "line": 34
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          }
        ]
      },
      "kind": "class",
      "locationInModule": {
        "filename": "src/secrets.ts",
        "line": 8
      },
      "name": "Secrets",
      "properties": [
        {
          "docs": {
            "remarks": "This secret is used to register runners and\ncancel jobs when the runner fails to start.\n\nThis secret is meant to be edited by the user after being created.",
            "stability": "experimental",
            "summary": "Authentication secret for GitHub containing either app details or personal access token."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/secrets.ts",
            "line": 20
          },
          "name": "github",
          "type": {
            "fqn": "aws-cdk-lib.aws_secretsmanager.Secret"
          }
        },
        {
          "docs": {
            "remarks": "This secret is meant to be edited by the user after being created. It is separate than the main GitHub secret because inserting private keys into JSON is hard.",
            "stability": "experimental",
            "summary": "GitHub app private key. Not needed when using personal access tokens."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/secrets.ts",
            "line": 27
          },
          "name": "githubPrivateKey",
          "type": {
            "fqn": "aws-cdk-lib.aws_secretsmanager.Secret"
          }
        },
        {
          "docs": {
            "remarks": "Should be empty after setup has been completed.",
            "stability": "experimental",
            "summary": "Setup secret used to authenticate user for our setup wizard."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/secrets.ts",
            "line": 32
          },
          "name": "setup",
          "type": {
            "fqn": "aws-cdk-lib.aws_secretsmanager.Secret"
          }
        },
        {
          "docs": {
            "stability": "experimental",
            "summary": "Webhook secret used to confirm events are coming from GitHub and nowhere else."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/secrets.ts",
            "line": 12
          },
          "name": "webhook",
          "type": {
            "fqn": "aws-cdk-lib.aws_secretsmanager.Secret"
          }
        }
      ],
      "symbolId": "src/secrets:Secrets"
    },
    "@cloudsnorkel/cdk-github-runners.StaticRunnerImage": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "docs": {
        "stability": "experimental",
        "summary": "Helper class with methods to use static images that are built outside the context of this project."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.StaticRunnerImage",
      "initializer": {
        "docs": {
          "stability": "experimental"
        }
      },
      "kind": "class",
      "locationInModule": {
        "filename": "src/image-builders/static.ts",
        "line": 10
      },
      "methods": [
        {
          "docs": {
            "remarks": "The image must already have GitHub Actions runner installed. You are responsible to update it and remove it when done.\n\nWe create a CodeBuild image builder behind the scenes to copy the image over to ECR. This helps avoid Docker Hub rate limits and prevent failures.",
            "stability": "experimental",
            "summary": "Create a builder from an existing Docker Hub image."
          },
          "locationInModule": {
            "filename": "src/image-builders/static.ts",
            "line": 49
          },
          "name": "fromDockerHub",
          "parameters": [
            {
              "name": "scope",
              "type": {
                "fqn": "constructs.Construct"
              }
            },
            {
              "name": "id",
              "type": {
                "primitive": "string"
              }
            },
            {
              "docs": {
                "summary": "Docker Hub image with optional tag."
              },
              "name": "image",
              "type": {
                "primitive": "string"
              }
            },
            {
              "docs": {
                "summary": "image architecture."
              },
              "name": "architecture",
              "optional": true,
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.Architecture"
              }
            },
            {
              "docs": {
                "summary": "image OS."
              },
              "name": "os",
              "optional": true,
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.Os"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.IRunnerImageBuilder"
            }
          },
          "static": true
        },
        {
          "docs": {
            "remarks": "The image must already have GitHub Actions runner installed. You are responsible to update it and remove it when done.",
            "stability": "experimental",
            "summary": "Create a builder (that doesn't actually build anything) from an existing image in an existing repository."
          },
          "locationInModule": {
            "filename": "src/image-builders/static.ts",
            "line": 19
          },
          "name": "fromEcrRepository",
          "parameters": [
            {
              "docs": {
                "summary": "ECR repository."
              },
              "name": "repository",
              "type": {
                "fqn": "aws-cdk-lib.aws_ecr.IRepository"
              }
            },
            {
              "docs": {
                "summary": "image tag."
              },
              "name": "tag",
              "optional": true,
              "type": {
                "primitive": "string"
              }
            },
            {
              "docs": {
                "summary": "image architecture."
              },
              "name": "architecture",
              "optional": true,
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.Architecture"
              }
            },
            {
              "docs": {
                "summary": "image OS."
              },
              "name": "os",
              "optional": true,
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.Os"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.IRunnerImageBuilder"
            }
          },
          "static": true
        }
      ],
      "name": "StaticRunnerImage",
      "symbolId": "src/image-builders/static:StaticRunnerImage"
    },
    "@cloudsnorkel/cdk-github-runners.StorageOptions": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "datatype": true,
      "docs": {
        "stability": "experimental",
        "summary": "Storage options for the runner instance."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.StorageOptions",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/providers/common.ts",
        "line": 484
      },
      "name": "StorageOptions",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "default": "- none, required for `EbsDeviceVolumeType.IO1`",
            "remarks": "Must only be set for `volumeType`: `EbsDeviceVolumeType.IO1`\n\nThe maximum ratio of IOPS to volume size (in GiB) is 50:1, so for 5,000 provisioned IOPS,\nyou need at least 100 GiB storage on the volume.",
            "see": "https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html",
            "stability": "experimental",
            "summary": "The number of I/O operations per second (IOPS) to provision for the volume."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 505
          },
          "name": "iops",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- 125 MiB/s. Only valid on gp3 volumes.",
            "see": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html#cfn-ec2-volume-throughput",
            "stability": "experimental",
            "summary": "The throughput that the volume supports, in MiB/s Takes a minimum of 125 and maximum of 1000."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 513
          },
          "name": "throughput",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "`EbsDeviceVolumeType.GP2`",
            "see": "https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html",
            "stability": "experimental",
            "summary": "The EBS volume type."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/providers/common.ts",
            "line": 491
          },
          "name": "volumeType",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.EbsDeviceVolumeType"
          }
        }
      ],
      "symbolId": "src/providers/common:StorageOptions"
    },
    "@cloudsnorkel/cdk-github-runners.WindowsComponents": {
      "assembly": "@cloudsnorkel/cdk-github-runners",
      "docs": {
        "deprecated": "Use `RunnerImageComponent` instead.",
        "remarks": "These cannot be used by {@link CodeBuildImageBuilder }.",
        "stability": "deprecated",
        "summary": "Components for Windows that can be used with AWS Image Builder based builders."
      },
      "fqn": "@cloudsnorkel/cdk-github-runners.WindowsComponents",
      "initializer": {
        "docs": {
          "stability": "experimental"
        }
      },
      "kind": "class",
      "locationInModule": {
        "filename": "src/image-builders/aws-image-builder/deprecated/windows-components.ts",
        "line": 12
      },
      "methods": [
        {
          "docs": {
            "stability": "deprecated"
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/windows-components.ts",
            "line": 25
          },
          "name": "awsCli",
          "parameters": [
            {
              "name": "scope",
              "type": {
                "fqn": "constructs.Construct"
              }
            },
            {
              "name": "id",
              "type": {
                "primitive": "string"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.ImageBuilderComponent"
            }
          },
          "static": true
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/windows-components.ts",
            "line": 13
          },
          "name": "cloudwatchAgent",
          "parameters": [
            {
              "name": "scope",
              "type": {
                "fqn": "constructs.Construct"
              }
            },
            {
              "name": "id",
              "type": {
                "primitive": "string"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.ImageBuilderComponent"
            }
          },
          "static": true
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/windows-components.ts",
            "line": 99
          },
          "name": "docker",
          "parameters": [
            {
              "name": "scope",
              "type": {
                "fqn": "constructs.Construct"
              }
            },
            {
              "name": "id",
              "type": {
                "primitive": "string"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.ImageBuilderComponent"
            }
          },
          "static": true
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/windows-components.ts",
            "line": 109
          },
          "name": "extraCertificates",
          "parameters": [
            {
              "name": "scope",
              "type": {
                "fqn": "constructs.Construct"
              }
            },
            {
              "name": "id",
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "path",
              "type": {
                "primitive": "string"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.ImageBuilderComponent"
            }
          },
          "static": true
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/windows-components.ts",
            "line": 54
          },
          "name": "git",
          "parameters": [
            {
              "name": "scope",
              "type": {
                "fqn": "constructs.Construct"
              }
            },
            {
              "name": "id",
              "type": {
                "primitive": "string"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.ImageBuilderComponent"
            }
          },
          "static": true
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/windows-components.ts",
            "line": 37
          },
          "name": "githubCli",
          "parameters": [
            {
              "name": "scope",
              "type": {
                "fqn": "constructs.Construct"
              }
            },
            {
              "name": "id",
              "type": {
                "primitive": "string"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.ImageBuilderComponent"
            }
          },
          "static": true
        },
        {
          "docs": {
            "stability": "deprecated"
          },
          "locationInModule": {
            "filename": "src/image-builders/aws-image-builder/deprecated/windows-components.ts",
            "line": 74
          },
          "name": "githubRunner",
          "parameters": [
            {
              "name": "scope",
              "type": {
                "fqn": "constructs.Construct"
              }
            },
            {
              "name": "id",
              "type": {
                "primitive": "string"
              }
            },
            {
              "name": "runnerVersion",
              "type": {
                "fqn": "@cloudsnorkel/cdk-github-runners.RunnerVersion"
              }
            }
          ],
          "returns": {
            "type": {
              "fqn": "@cloudsnorkel/cdk-github-runners.ImageBuilderComponent"
            }
          },
          "static": true
        }
      ],
      "name": "WindowsComponents",
      "symbolId": "src/image-builders/aws-image-builder/deprecated/windows-components:WindowsComponents"
    }
  },
  "version": "0.14.7",
  "fingerprint": "A1ND9oGi1xUz0Bd+QrivB9z+DfH3HRLAy0BYjqNaBxA="
}