{"kind":"SourceFile","statements":[{"kind":"ImportDeclaration","importClause":{"kind":"ImportClause","isTypeOnly":false,"namedBindings":{"kind":"NamespaceImport","name":{"kind":"Identifier","escapedText":"fs","id":5},"id":4},"id":3},"moduleSpecifier":{"kind":"StringLiteral","text":"fs","hasExtendedUnicodeEscape":false,"id":6},"id":2},{"kind":"ImportDeclaration","importClause":{"kind":"ImportClause","isTypeOnly":false,"namedBindings":{"kind":"NamedImports","elements":[{"kind":"ImportSpecifier","isTypeOnly":false,"name":{"kind":"Identifier","escapedText":"Project","id":11},"id":10}],"id":9},"id":8},"moduleSpecifier":{"kind":"StringLiteral","text":"projen","hasExtendedUnicodeEscape":false,"id":12},"id":7},{"kind":"ImportDeclaration","importClause":{"kind":"ImportClause","isTypeOnly":false,"namedBindings":{"kind":"NamedImports","elements":[{"kind":"ImportSpecifier","isTypeOnly":false,"name":{"kind":"Identifier","escapedText":"Context","id":17},"id":16}],"id":15},"id":14},"moduleSpecifier":{"kind":"StringLiteral","text":"./context/context","hasExtendedUnicodeEscape":false,"id":18},"id":13},{"kind":"ImportDeclaration","importClause":{"kind":"ImportClause","isTypeOnly":false,"namedBindings":{"kind":"NamedImports","elements":[{"kind":"ImportSpecifier","isTypeOnly":false,"name":{"kind":"Identifier","escapedText":"DurableStorage","id":23},"id":22}],"id":21},"id":20},"moduleSpecifier":{"kind":"StringLiteral","text":"./durable-storage/durable-storage","hasExtendedUnicodeEscape":false,"id":24},"id":19},{"kind":"ImportDeclaration","importClause":{"kind":"ImportClause","isTypeOnly":false,"namedBindings":{"kind":"NamedImports","elements":[{"kind":"ImportSpecifier","isTypeOnly":false,"name":{"kind":"Identifier","escapedText":"ContextFile","id":29},"id":28}],"id":27},"id":26},"moduleSpecifier":{"kind":"StringLiteral","text":"./resynthesis/context-file","hasExtendedUnicodeEscape":false,"id":30},"id":25},{"kind":"ImportDeclaration","importClause":{"kind":"ImportClause","isTypeOnly":false,"namedBindings":{"kind":"NamedImports","elements":[{"kind":"ImportSpecifier","isTypeOnly":false,"name":{"kind":"Identifier","escapedText":"StrategyLocations","id":35},"id":34}],"id":33},"id":32},"moduleSpecifier":{"kind":"StringLiteral","text":"./resynthesis/merge-strategies/deserialize-strategies","hasExtendedUnicodeEscape":false,"id":36},"id":31},{"kind":"ImportDeclaration","importClause":{"kind":"ImportClause","isTypeOnly":false,"namedBindings":{"kind":"NamedImports","elements":[{"kind":"ImportSpecifier","isTypeOnly":false,"name":{"kind":"Identifier","escapedText":"Strategy","id":41},"id":40}],"id":39},"id":38},"moduleSpecifier":{"kind":"StringLiteral","text":"./resynthesis/merge-strategies/models","hasExtendedUnicodeEscape":false,"id":42},"id":37},{"kind":"InterfaceDeclaration","name":{"kind":"Identifier","escapedText":"ParentOptions","id":45},"modifiers":[{"kind":"ExportKeyword","id":44}],"members":[{"kind":"PropertySignature","name":{"kind":"Identifier","escapedText":"outdir","id":47},"type":{"kind":"StringKeyword","id":48},"id":46},{"kind":"PropertySignature","name":{"kind":"Identifier","escapedText":"parent","id":50},"type":{"kind":"TypeReference","typeName":{"kind":"Identifier","escapedText":"Project","id":53},"id":52},"questionToken":{"kind":"QuestionToken","id":51},"id":49}],"id":43},{"kind":"InterfaceDeclaration","name":{"kind":"Identifier","escapedText":"Options","id":56},"modifiers":[{"kind":"ExportKeyword","id":55}],"heritageClauses":[{"kind":"HeritageClause","token":94,"types":[{"kind":"ExpressionWithTypeArguments","expression":{"kind":"Identifier","escapedText":"ParentOptions","id":59},"id":58}],"id":57}],"members":[],"id":54},{"kind":"ClassDeclaration","name":{"kind":"Identifier","escapedText":"Blueprint","id":63},"modifiers":[{"kind":"ExportKeyword","id":61},{"kind":"DeclareKeyword","id":62}],"heritageClauses":[{"kind":"HeritageClause","token":94,"types":[{"kind":"ExpressionWithTypeArguments","expression":{"kind":"Identifier","escapedText":"Project","id":66},"id":65}],"id":64}],"members":[{"kind":"PropertyDeclaration","name":{"kind":"Identifier","escapedText":"context","id":69},"modifiers":[{"kind":"ReadonlyKeyword","id":68}],"type":{"kind":"TypeReference","typeName":{"kind":"Identifier","escapedText":"Context","id":71},"id":70},"id":67},{"kind":"PropertyDeclaration","name":{"kind":"Identifier","escapedText":"strategies","id":74},"modifiers":[{"kind":"ProtectedKeyword","id":73}],"type":{"kind":"UnionType","types":[{"kind":"TypeReference","typeName":{"kind":"Identifier","escapedText":"StrategyLocations","id":77},"id":76},{"kind":"UndefinedKeyword","id":78}],"id":75},"id":72},{"kind":"PropertyDeclaration","name":{"kind":"Identifier","escapedText":"durableState","id":80},"type":{"kind":"TypeReference","typeName":{"kind":"Identifier","escapedText":"DurableStorage","id":82},"id":81},"jsDoc":[{"kind":"JSDocComment","comment":"Used for preserving information between synthesis requests"}],"id":79},{"kind":"PropertyDeclaration","name":{"kind":"Identifier","escapedText":"resynthPullRequest","id":84},"type":{"kind":"TypeLiteral","members":[{"kind":"PropertySignature","name":{"kind":"Identifier","escapedText":"title","id":87},"type":{"kind":"StringKeyword","id":88},"id":86},{"kind":"PropertySignature","name":{"kind":"Identifier","escapedText":"description","id":90},"type":{"kind":"StringKeyword","id":91},"id":89},{"kind":"PropertySignature","name":{"kind":"Identifier","escapedText":"originBranch","id":93},"type":{"kind":"StringKeyword","id":94},"id":92},{"kind":"PropertySignature","name":{"kind":"Identifier","escapedText":"targetBranch","id":96},"type":{"kind":"StringKeyword","id":98},"questionToken":{"kind":"QuestionToken","id":97},"id":95}],"id":85},"jsDoc":[{"kind":"JSDocComment","comment":"Set information used on the pull request generated by resynthesis"}],"id":83},{"kind":"Constructor","parameters":[{"kind":"Parameter","name":{"kind":"Identifier","escapedText":"options","id":101},"type":{"kind":"TypeReference","typeName":{"kind":"Identifier","escapedText":"Options","id":103},"id":102},"id":100}],"id":99},{"kind":"MethodDeclaration","name":{"kind":"Identifier","escapedText":"setResynthStrategies","id":105},"parameters":[{"kind":"Parameter","name":{"kind":"Identifier","escapedText":"bundlepath","id":107},"type":{"kind":"StringKeyword","id":108},"id":106},{"kind":"Parameter","name":{"kind":"Identifier","escapedText":"strategies","id":110},"type":{"kind":"ArrayType","elementType":{"kind":"TypeReference","typeName":{"kind":"Identifier","escapedText":"Strategy","id":113},"id":112},"id":111},"id":109}],"type":{"kind":"VoidKeyword","id":114},"id":104},{"kind":"MethodDeclaration","name":{"kind":"Identifier","escapedText":"setInstantiation","id":116},"typeParameters":[{"kind":"TypeParameter","name":{"kind":"Identifier","escapedText":"T","id":118},"constraint":{"kind":"TypeReference","typeName":{"kind":"Identifier","escapedText":"Options","id":120},"id":119},"id":117}],"parameters":[{"kind":"Parameter","name":{"kind":"Identifier","escapedText":"configurableOptions","id":122},"type":{"kind":"TypeLiteral","members":[{"kind":"PropertySignature","name":{"kind":"Identifier","escapedText":"description","id":125},"type":{"kind":"StringKeyword","id":127},"questionToken":{"kind":"QuestionToken","id":126},"id":124},{"kind":"PropertySignature","name":{"kind":"Identifier","escapedText":"options","id":129},"type":{"kind":"TypeReference","typeName":{"kind":"Identifier","escapedText":"T","id":132},"id":131},"questionToken":{"kind":"QuestionToken","id":130},"jsDoc":[{"kind":"JSDocComment","comment":"Force overrides the options that are recorded the the inital super() call."}],"id":128}],"id":123},"id":121}],"type":{"kind":"VoidKeyword","id":133},"id":115},{"kind":"MethodDeclaration","name":{"kind":"Identifier","escapedText":"getResynthStrategies","id":135},"parameters":[{"kind":"Parameter","name":{"kind":"Identifier","escapedText":"bundlepath","id":137},"type":{"kind":"StringKeyword","id":138},"id":136}],"type":{"kind":"ArrayType","elementType":{"kind":"TypeReference","typeName":{"kind":"Identifier","escapedText":"Strategy","id":141},"id":140},"id":139},"id":134},{"kind":"MethodDeclaration","name":{"kind":"Identifier","escapedText":"resynth","id":143},"parameters":[{"kind":"Parameter","name":{"kind":"Identifier","escapedText":"ancestorBundle","id":145},"type":{"kind":"StringKeyword","id":146},"id":144},{"kind":"Parameter","name":{"kind":"Identifier","escapedText":"existingBundle","id":148},"type":{"kind":"StringKeyword","id":149},"id":147},{"kind":"Parameter","name":{"kind":"Identifier","escapedText":"proposedBundle","id":151},"type":{"kind":"StringKeyword","id":152},"id":150}],"type":{"kind":"VoidKeyword","id":153},"id":142},{"kind":"MethodDeclaration","name":{"kind":"Identifier","escapedText":"write","id":155},"parameters":[{"kind":"Parameter","name":{"kind":"Identifier","escapedText":"file","id":157},"type":{"kind":"TypeReference","typeName":{"kind":"Identifier","escapedText":"ContextFile","id":159},"id":158},"id":156},{"kind":"Parameter","name":{"kind":"Identifier","escapedText":"options","id":161},"type":{"kind":"TypeLiteral","members":[{"kind":"PropertySignature","name":{"kind":"Identifier","escapedText":"mode","id":165},"type":{"kind":"TypeReference","typeName":{"kind":"FirstNode","left":{"kind":"Identifier","escapedText":"fs","id":169},"right":{"kind":"Identifier","escapedText":"Mode","id":170},"id":168},"id":167},"questionToken":{"kind":"QuestionToken","id":166},"id":164}],"id":163},"questionToken":{"kind":"QuestionToken","id":162},"id":160}],"type":{"kind":"VoidKeyword","id":171},"id":154},{"kind":"MethodDeclaration","name":{"kind":"Identifier","escapedText":"writeNonSourceFile","id":173},"parameters":[{"kind":"Parameter","name":{"kind":"Identifier","escapedText":"filepath","id":175},"type":{"kind":"StringKeyword","id":176},"id":174},{"kind":"Parameter","name":{"kind":"Identifier","escapedText":"bundle","id":178},"type":{"kind":"StringKeyword","id":179},"id":177}],"type":{"kind":"VoidKeyword","id":180},"id":172},{"kind":"MethodDeclaration","name":{"kind":"Identifier","escapedText":"throwSynthesisError","id":182},"parameters":[{"kind":"Parameter","name":{"kind":"Identifier","escapedText":"error","id":184},"type":{"kind":"TypeReference","typeName":{"kind":"Identifier","escapedText":"BlueprintSynthesisError","id":186},"id":185},"id":183}],"type":{"kind":"VoidKeyword","id":187},"id":181},{"kind":"MethodDeclaration","name":{"kind":"Identifier","escapedText":"synth","id":189},"parameters":[],"type":{"kind":"VoidKeyword","id":190},"id":188},{"kind":"PropertyDeclaration","name":{"kind":"Identifier","escapedText":"writeOptionsToBundle","id":193},"modifiers":[{"kind":"PrivateKeyword","id":192}],"id":191}],"id":60},{"kind":"EnumDeclaration","name":{"kind":"Identifier","escapedText":"BlueprintSynthesisErrorTypes","id":197},"modifiers":[{"kind":"ExportKeyword","id":195},{"kind":"DeclareKeyword","id":196}],"members":[{"kind":"EnumMember","name":{"kind":"Identifier","escapedText":"BlueprintSynthesisError","id":199},"initializer":{"kind":"StringLiteral","text":"BlueprintSynthesisError","hasExtendedUnicodeEscape":false,"id":200},"jsDoc":[{"kind":"JSDocComment","comment":"Throw for generic synthesis error not defined in BlueprintSynthesisErrorTypes"}],"id":198},{"kind":"EnumMember","name":{"kind":"Identifier","escapedText":"ConflictError","id":202},"initializer":{"kind":"StringLiteral","text":"BlueprintSynthesisConflictError","hasExtendedUnicodeEscape":false,"id":203},"jsDoc":[{"kind":"JSDocComment","comment":"Throw when there is a conflict with a resource in synth\nEx: Folder with name X already exists, a workspace already exists for repository X"}],"id":201},{"kind":"EnumMember","name":{"kind":"Identifier","escapedText":"NotFoundError","id":205},"initializer":{"kind":"StringLiteral","text":"BlueprintSynthesisNotFoundError","hasExtendedUnicodeEscape":false,"id":206},"jsDoc":[{"kind":"JSDocComment","comment":"Throw when unable to find resource in synth\nEx: Git repository not found when cloning, unable to find image imported from the web"}],"id":204},{"kind":"EnumMember","name":{"kind":"Identifier","escapedText":"ValidationError","id":208},"initializer":{"kind":"StringLiteral","text":"BlueprintSynthesisValidationError","hasExtendedUnicodeEscape":false,"id":209},"jsDoc":[{"kind":"JSDocComment","comment":"Throw when resource fails validation in synth\nEx: Filename fails regex validation, X required if Y is not given"}],"id":207}],"id":194},{"kind":"ClassDeclaration","name":{"kind":"Identifier","escapedText":"BlueprintSynthesisError","id":213},"modifiers":[{"kind":"ExportKeyword","id":211},{"kind":"DeclareKeyword","id":212}],"heritageClauses":[{"kind":"HeritageClause","token":94,"types":[{"kind":"ExpressionWithTypeArguments","expression":{"kind":"Identifier","escapedText":"Error","id":216},"id":215}],"id":214}],"members":[{"kind":"Constructor","parameters":[{"kind":"Parameter","name":{"kind":"Identifier","escapedText":"options","id":219},"type":{"kind":"TypeLiteral","members":[{"kind":"PropertySignature","name":{"kind":"Identifier","escapedText":"message","id":222},"type":{"kind":"StringKeyword","id":223},"id":221},{"kind":"PropertySignature","name":{"kind":"Identifier","originalKeywordKind":154,"escapedText":"type","id":225},"type":{"kind":"TypeReference","typeName":{"kind":"Identifier","escapedText":"BlueprintSynthesisErrorTypes","id":227},"id":226},"id":224}],"id":220},"id":218}],"id":217}],"id":210}],"endOfFileToken":{"kind":"EndOfFileToken","id":228},"fileName":"temp-ast.d.ts","languageVersion":99,"languageVariant":0,"scriptKind":3,"isDeclarationFile":true,"hasNoDefaultLib":false,"bindDiagnostics":[],"pragmas":{},"referencedFiles":[],"typeReferenceDirectives":[{"fileName":"node"}],"libReferenceDirectives":[],"amdDependencies":[],"nodeCount":236,"identifierCount":73,"identifiers":{},"parseDiagnostics":[],"id":1}