@cdktn/hcl2cdk 0.21.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +95 -0
- package/ambient.d.ts +14 -0
- package/jest.config.js +16 -0
- package/lib/__tests__/coerceType.test.d.ts +2 -0
- package/lib/__tests__/coerceType.test.js +165 -0
- package/lib/__tests__/expressionToTs.test.d.ts +6 -0
- package/lib/__tests__/expressionToTs.test.js +693 -0
- package/lib/__tests__/expressions.test.d.ts +4 -0
- package/lib/__tests__/expressions.test.js +415 -0
- package/lib/__tests__/findExpressionType.test.d.ts +6 -0
- package/lib/__tests__/findExpressionType.test.js +105 -0
- package/lib/__tests__/functions.test.d.ts +6 -0
- package/lib/__tests__/functions.test.js +605 -0
- package/lib/__tests__/generation.test.d.ts +6 -0
- package/lib/__tests__/generation.test.js +45 -0
- package/lib/__tests__/jsii-rosetta-workarounds.test.d.ts +2 -0
- package/lib/__tests__/jsii-rosetta-workarounds.test.js +86 -0
- package/lib/__tests__/partialCode.test.d.ts +6 -0
- package/lib/__tests__/partialCode.test.js +390 -0
- package/lib/__tests__/terraformSchema.test.d.ts +6 -0
- package/lib/__tests__/terraformSchema.test.js +105 -0
- package/lib/__tests__/testHelpers.d.ts +7 -0
- package/lib/__tests__/testHelpers.js +16 -0
- package/lib/coerceType.d.ts +7 -0
- package/lib/coerceType.js +240 -0
- package/lib/dynamic-blocks.d.ts +8 -0
- package/lib/dynamic-blocks.js +44 -0
- package/lib/expressions.d.ts +9 -0
- package/lib/expressions.js +634 -0
- package/lib/function-bindings/functions.d.ts +31 -0
- package/lib/function-bindings/functions.generated.d.ts +806 -0
- package/lib/function-bindings/functions.generated.js +1142 -0
- package/lib/function-bindings/functions.js +73 -0
- package/lib/generation.d.ts +26 -0
- package/lib/generation.js +676 -0
- package/lib/index.d.ts +136 -0
- package/lib/index.js +364 -0
- package/lib/iteration.d.ts +23 -0
- package/lib/iteration.js +87 -0
- package/lib/jsii-rosetta-workarounds.d.ts +5 -0
- package/lib/jsii-rosetta-workarounds.js +126 -0
- package/lib/partialCode.d.ts +11 -0
- package/lib/partialCode.js +116 -0
- package/lib/provider.d.ts +8 -0
- package/lib/provider.js +40 -0
- package/lib/references.d.ts +11 -0
- package/lib/references.js +141 -0
- package/lib/schema.d.ts +297 -0
- package/lib/schema.js +81 -0
- package/lib/telemetryAllowList.json +24 -0
- package/lib/terraformSchema.d.ts +6 -0
- package/lib/terraformSchema.js +136 -0
- package/lib/types.d.ts +50 -0
- package/lib/types.js +3 -0
- package/lib/utils.d.ts +6 -0
- package/lib/utils.js +25 -0
- package/lib/variables.d.ts +10 -0
- package/lib/variables.js +172 -0
- package/package.json +71 -0
- package/package.sh +9 -0
- package/tsconfig.json +42 -0
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Copyright (c) HashiCorp, Inc.
|
|
4
|
+
* SPDX-License-Identifier: MPL-2.0
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.tsFunctionsMap = exports.functionsMap = void 0;
|
|
8
|
+
const functions_generated_1 = require("./functions.generated");
|
|
9
|
+
exports.functionsMap = {
|
|
10
|
+
...functions_generated_1.functionsMapGenerated,
|
|
11
|
+
bcrypt: {
|
|
12
|
+
name: "bcrypt", // this one is not variadic anymore after we mapped it
|
|
13
|
+
returnType: "string",
|
|
14
|
+
parameters: [{ type: "string" }, { type: "number", optional: true }],
|
|
15
|
+
},
|
|
16
|
+
join: {
|
|
17
|
+
name: "join",
|
|
18
|
+
returnType: "string",
|
|
19
|
+
parameters: [{ type: "string" }, { type: ["list", "string"] }],
|
|
20
|
+
/**
|
|
21
|
+
* Terraform supports join(separator, listA, listB)
|
|
22
|
+
* wheras CDKTN only supports join(separator, list) (to make it simpler to use as JSII does not support variadic parameters)
|
|
23
|
+
* and we'd need to convert this to join(separator, concat(listA, listB)) if multiple variadic args are passed
|
|
24
|
+
*/
|
|
25
|
+
transformer: (fc) => {
|
|
26
|
+
if (fc.children.length <= 2) {
|
|
27
|
+
return fc; // just one child -> nothing to do
|
|
28
|
+
}
|
|
29
|
+
const concatFunction = {
|
|
30
|
+
type: "function",
|
|
31
|
+
meta: {
|
|
32
|
+
name: "concat",
|
|
33
|
+
expandedFinalArgument: fc.meta.expandedFinalArgument,
|
|
34
|
+
nameRange: {},
|
|
35
|
+
openParenRange: {},
|
|
36
|
+
closeParenRange: {},
|
|
37
|
+
argsRanges: [],
|
|
38
|
+
},
|
|
39
|
+
children: fc.children.slice(1),
|
|
40
|
+
};
|
|
41
|
+
return {
|
|
42
|
+
type: "function",
|
|
43
|
+
meta: {
|
|
44
|
+
name: "join",
|
|
45
|
+
},
|
|
46
|
+
children: [
|
|
47
|
+
fc.children[0], // the first parameter is the separator, so keep it as is
|
|
48
|
+
concatFunction,
|
|
49
|
+
],
|
|
50
|
+
};
|
|
51
|
+
},
|
|
52
|
+
},
|
|
53
|
+
range: {
|
|
54
|
+
name: "range",
|
|
55
|
+
returnType: ["list", "string"], // TODO: Fn.range() currently returns string[] but should return number[] (according to functions.json)
|
|
56
|
+
parameters: [
|
|
57
|
+
{ type: "number" },
|
|
58
|
+
{ type: "number" },
|
|
59
|
+
{ type: "number", optional: true },
|
|
60
|
+
],
|
|
61
|
+
},
|
|
62
|
+
lookup: {
|
|
63
|
+
name: "lookup",
|
|
64
|
+
returnType: "dynamic",
|
|
65
|
+
parameters: [{ type: "dynamic" }, { type: "string" }, { type: "dynamic" }],
|
|
66
|
+
},
|
|
67
|
+
};
|
|
68
|
+
exports.tsFunctionsMap = Object.entries(exports.functionsMap).reduce((acc, [name, fnInfo]) => {
|
|
69
|
+
// Swap the names around
|
|
70
|
+
acc[fnInfo.name] = { ...fnInfo, name: name };
|
|
71
|
+
return acc;
|
|
72
|
+
}, {});
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuY3Rpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiZnVuY3Rpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7O0dBR0c7OztBQUdILCtEQUE4RDtBQTJCakQsUUFBQSxZQUFZLEdBQWlDO0lBQ3hELEdBQUksMkNBQTZCO0lBRWpDLE1BQU0sRUFBRTtRQUNOLElBQUksRUFBRSxRQUFRLEVBQUUsc0RBQXNEO1FBQ3RFLFVBQVUsRUFBRSxRQUFRO1FBQ3BCLFVBQVUsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7S0FDckU7SUFDRCxJQUFJLEVBQUU7UUFDSixJQUFJLEVBQUUsTUFBTTtRQUNaLFVBQVUsRUFBRSxRQUFRO1FBQ3BCLFVBQVUsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLENBQUM7UUFDOUQ7Ozs7V0FJRztRQUNILFdBQVcsRUFBRSxDQUFDLEVBQThCLEVBQUUsRUFBRTtZQUM5QyxJQUFJLEVBQUUsQ0FBQyxRQUFRLENBQUMsTUFBTSxJQUFJLENBQUMsRUFBRSxDQUFDO2dCQUM1QixPQUFPLEVBQUUsQ0FBQyxDQUFDLGtDQUFrQztZQUMvQyxDQUFDO1lBRUQsTUFBTSxjQUFjLEdBQUc7Z0JBQ3JCLElBQUksRUFBRSxVQUFVO2dCQUNoQixJQUFJLEVBQUU7b0JBQ0osSUFBSSxFQUFFLFFBQVE7b0JBQ2QscUJBQXFCLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxxQkFBcUI7b0JBQ3BELFNBQVMsRUFBRSxFQUFFO29CQUNiLGNBQWMsRUFBRSxFQUFFO29CQUNsQixlQUFlLEVBQUUsRUFBRTtvQkFDbkIsVUFBVSxFQUFFLEVBQUU7aUJBQ2Y7Z0JBQ0QsUUFBUSxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQzthQUMvQixDQUFDO1lBRUYsT0FBTztnQkFDTCxJQUFJLEVBQUUsVUFBVTtnQkFDaEIsSUFBSSxFQUFFO29CQUNKLElBQUksRUFBRSxNQUFNO2lCQUNiO2dCQUNELFFBQVEsRUFBRTtvQkFDUixFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLHlEQUF5RDtvQkFDekUsY0FBYztpQkFDZjthQUNGLENBQUM7UUFDSixDQUFDO0tBQ0Y7SUFDRCxLQUFLLEVBQUU7UUFDTCxJQUFJLEVBQUUsT0FBTztRQUNiLFVBQVUsRUFBRSxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSx1R0FBdUc7UUFDdkksVUFBVSxFQUFFO1lBQ1YsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFO1lBQ2xCLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRTtZQUNsQixFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtTQUNuQztLQUNGO0lBQ0QsTUFBTSxFQUFFO1FBQ04sSUFBSSxFQUFFLFFBQVE7UUFDZCxVQUFVLEVBQUUsU0FBUztRQUNyQixVQUFVLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsQ0FBQztLQUMzRTtDQUNGLENBQUM7QUFFVyxRQUFBLGNBQWMsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLG9CQUFZLENBQUMsQ0FBQyxNQUFNLENBQy9ELENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxFQUFFLEVBQUU7SUFDdEIsd0JBQXdCO0lBQ3hCLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUM7SUFDN0MsT0FBTyxHQUFHLENBQUM7QUFDYixDQUFDLEVBQ0QsRUFBa0MsQ0FDbkMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ29weXJpZ2h0IChjKSBIYXNoaUNvcnAsIEluYy5cbiAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNUEwtMi4wXG4gKi9cblxuaW1wb3J0IHsgQXR0cmlidXRlVHlwZSB9IGZyb20gXCJAY2RrdG4vY29tbW9uc1wiO1xuaW1wb3J0IHsgZnVuY3Rpb25zTWFwR2VuZXJhdGVkIH0gZnJvbSBcIi4vZnVuY3Rpb25zLmdlbmVyYXRlZFwiO1xuaW1wb3J0IHsgVEZFeHByZXNzaW9uU3ludGF4VHJlZSBhcyB0ZXggfSBmcm9tIFwiQGNka3RuL2hjbDJqc29uXCI7XG5cbnR5cGUgRnVuY3Rpb25DYWxsID0gYW55OyAvLyBUT0RPOiB0aGlzIHdpbGwgY29tZSBmcm9tIHRoZSB0eXBlcyBmb3IgaGNsMmpzb24gKGFrYSBmcm9tIHRoZSBUZXJyYWZvcm0gQVNUKVxuXG50eXBlIEZ1bmN0aW9uTWV0YSA9IHtcbiAgbmFtZTogc3RyaW5nO1xuICByZXR1cm5UeXBlOiBBdHRyaWJ1dGVUeXBlO1xuICBwYXJhbWV0ZXJzOiB7XG4gICAgdHlwZTogQXR0cmlidXRlVHlwZTtcbiAgICBvcHRpb25hbD86IGJvb2xlYW47XG4gICAgdmFyaWFkaWM/OiBib29sZWFuO1xuICB9W107XG4gIC8qKlxuICAgKiBBbGxvd3MgdHJhbnNmb3JtaW5nIHRoZSBmdW5jdGlvbiBjYWxsIGJlZm9yZSBpdCBpcyBoYW5kbGVkLiBUaGlzIGlzIGN1cnJlbnRseSB1c2VkIHRvIGhhbmRsZVxuICAgKiBkaWZmZXJlbnQgQVBJcyBiZXR3ZWVuIFRGIHN1cHBvcnRpbmcgam9pbihzZXAsIGxpc3RBLCBsaXN0QikgYW5kIENES1ROIG9ubHkgc3VwcG9ydGluZyBqb2luKHNlcCwgbGlzdClcbiAgICogKGFzIHRoZSBhbHRlcm5hdGl2ZSBkdWUgdG8gSlNJSXMgbGFjayBvZiBzdXBwb3J0IGZvciB2YXJpYWRpYyBwYXJhbWV0ZXMgd291bGQgYmUgam9pbihzZXAsIGxpc3RzKSB3aGljaFxuICAgKiAgd291bGQgaGF2ZSBhIHdvcnNlIFVYIGFzIG1vc3Qgb2Z0ZW4ganVzdCBhIHNpbmdsZSBsaXN0IGlzIHBhc3NlZClcbiAgICogSW4gdGhlIGNhc2Ugb2Ygam9pbigpIHRoZSB0cmFuc2Zvcm1lciB3aWxsIGNvbnZlcnQgdGhlIGZ1bmN0aW9uIGNhbGwgdG8gam9pbihzZXAsIGNvbmNhdChsaXN0QSwgbGlzdEIpKVxuICAgKiBiZWZvcmUgaGFuZGxpbmcgaXRcbiAgICpcbiAgICogQ2F1dGlvbjogQmV3YXJlIG9mIGluZmluaXRlIHJlY3Vyc2lvbiBpZiB0aGUgcmV0dXJuZWQgZnVuY3Rpb24gY2FsbCBpcyB0byB0aGUgc2FtZSBmdW5jdGlvbiB0aGF0IGhhcyB0aGlzXG4gICAqIHRyYW5zZm9ybWVyLiBSZXR1cm4gdGhlIHNhbWUgaW5zdGFuY2Ugb2YgdGhlIHBhc3NlZCBmdW5jdGlvbkNhbGwgdG8gYnJlYWsgb3V0IG9mIHRoYXQgcmVjdXJzaW9uLlxuICAgKi9cbiAgdHJhbnNmb3JtZXI/OiAoZnVuY3Rpb25DYWxsOiBGdW5jdGlvbkNhbGwpID0+IEZ1bmN0aW9uQ2FsbDtcbn07XG5cbmV4cG9ydCBjb25zdCBmdW5jdGlvbnNNYXA6IFJlY29yZDxzdHJpbmcsIEZ1bmN0aW9uTWV0YT4gPSB7XG4gIC4uLihmdW5jdGlvbnNNYXBHZW5lcmF0ZWQgYXMgYW55KSxcblxuICBiY3J5cHQ6IHtcbiAgICBuYW1lOiBcImJjcnlwdFwiLCAvLyB0aGlzIG9uZSBpcyBub3QgdmFyaWFkaWMgYW55bW9yZSBhZnRlciB3ZSBtYXBwZWQgaXRcbiAgICByZXR1cm5UeXBlOiBcInN0cmluZ1wiLFxuICAgIHBhcmFtZXRlcnM6IFt7IHR5cGU6IFwic3RyaW5nXCIgfSwgeyB0eXBlOiBcIm51bWJlclwiLCBvcHRpb25hbDogdHJ1ZSB9XSxcbiAgfSxcbiAgam9pbjoge1xuICAgIG5hbWU6IFwiam9pblwiLFxuICAgIHJldHVyblR5cGU6IFwic3RyaW5nXCIsXG4gICAgcGFyYW1ldGVyczogW3sgdHlwZTogXCJzdHJpbmdcIiB9LCB7IHR5cGU6IFtcImxpc3RcIiwgXCJzdHJpbmdcIl0gfV0sXG4gICAgLyoqXG4gICAgICogVGVycmFmb3JtIHN1cHBvcnRzIGpvaW4oc2VwYXJhdG9yLCBsaXN0QSwgbGlzdEIpXG4gICAgICogd2hlcmFzIENES1ROIG9ubHkgc3VwcG9ydHMgam9pbihzZXBhcmF0b3IsIGxpc3QpICh0byBtYWtlIGl0IHNpbXBsZXIgdG8gdXNlIGFzIEpTSUkgZG9lcyBub3Qgc3VwcG9ydCB2YXJpYWRpYyBwYXJhbWV0ZXJzKVxuICAgICAqIGFuZCB3ZSdkIG5lZWQgdG8gY29udmVydCB0aGlzIHRvIGpvaW4oc2VwYXJhdG9yLCBjb25jYXQobGlzdEEsIGxpc3RCKSkgaWYgbXVsdGlwbGUgdmFyaWFkaWMgYXJncyBhcmUgcGFzc2VkXG4gICAgICovXG4gICAgdHJhbnNmb3JtZXI6IChmYzogdGV4LkZ1bmN0aW9uQ2FsbEV4cHJlc3Npb24pID0+IHtcbiAgICAgIGlmIChmYy5jaGlsZHJlbi5sZW5ndGggPD0gMikge1xuICAgICAgICByZXR1cm4gZmM7IC8vIGp1c3Qgb25lIGNoaWxkIC0+IG5vdGhpbmcgdG8gZG9cbiAgICAgIH1cblxuICAgICAgY29uc3QgY29uY2F0RnVuY3Rpb24gPSB7XG4gICAgICAgIHR5cGU6IFwiZnVuY3Rpb25cIixcbiAgICAgICAgbWV0YToge1xuICAgICAgICAgIG5hbWU6IFwiY29uY2F0XCIsXG4gICAgICAgICAgZXhwYW5kZWRGaW5hbEFyZ3VtZW50OiBmYy5tZXRhLmV4cGFuZGVkRmluYWxBcmd1bWVudCxcbiAgICAgICAgICBuYW1lUmFuZ2U6IHt9LFxuICAgICAgICAgIG9wZW5QYXJlblJhbmdlOiB7fSxcbiAgICAgICAgICBjbG9zZVBhcmVuUmFuZ2U6IHt9LFxuICAgICAgICAgIGFyZ3NSYW5nZXM6IFtdLFxuICAgICAgICB9LFxuICAgICAgICBjaGlsZHJlbjogZmMuY2hpbGRyZW4uc2xpY2UoMSksXG4gICAgICB9O1xuXG4gICAgICByZXR1cm4ge1xuICAgICAgICB0eXBlOiBcImZ1bmN0aW9uXCIsXG4gICAgICAgIG1ldGE6IHtcbiAgICAgICAgICBuYW1lOiBcImpvaW5cIixcbiAgICAgICAgfSxcbiAgICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAgICBmYy5jaGlsZHJlblswXSwgLy8gdGhlIGZpcnN0IHBhcmFtZXRlciBpcyB0aGUgc2VwYXJhdG9yLCBzbyBrZWVwIGl0IGFzIGlzXG4gICAgICAgICAgY29uY2F0RnVuY3Rpb24sXG4gICAgICAgIF0sXG4gICAgICB9O1xuICAgIH0sXG4gIH0sXG4gIHJhbmdlOiB7XG4gICAgbmFtZTogXCJyYW5nZVwiLFxuICAgIHJldHVyblR5cGU6IFtcImxpc3RcIiwgXCJzdHJpbmdcIl0sIC8vIFRPRE86IEZuLnJhbmdlKCkgY3VycmVudGx5IHJldHVybnMgc3RyaW5nW10gYnV0IHNob3VsZCByZXR1cm4gbnVtYmVyW10gKGFjY29yZGluZyB0byBmdW5jdGlvbnMuanNvbilcbiAgICBwYXJhbWV0ZXJzOiBbXG4gICAgICB7IHR5cGU6IFwibnVtYmVyXCIgfSxcbiAgICAgIHsgdHlwZTogXCJudW1iZXJcIiB9LFxuICAgICAgeyB0eXBlOiBcIm51bWJlclwiLCBvcHRpb25hbDogdHJ1ZSB9LFxuICAgIF0sXG4gIH0sXG4gIGxvb2t1cDoge1xuICAgIG5hbWU6IFwibG9va3VwXCIsXG4gICAgcmV0dXJuVHlwZTogXCJkeW5hbWljXCIsXG4gICAgcGFyYW1ldGVyczogW3sgdHlwZTogXCJkeW5hbWljXCIgfSwgeyB0eXBlOiBcInN0cmluZ1wiIH0sIHsgdHlwZTogXCJkeW5hbWljXCIgfV0sXG4gIH0sXG59O1xuXG5leHBvcnQgY29uc3QgdHNGdW5jdGlvbnNNYXAgPSBPYmplY3QuZW50cmllcyhmdW5jdGlvbnNNYXApLnJlZHVjZShcbiAgKGFjYywgW25hbWUsIGZuSW5mb10pID0+IHtcbiAgICAvLyBTd2FwIHRoZSBuYW1lcyBhcm91bmRcbiAgICBhY2NbZm5JbmZvLm5hbWVdID0geyAuLi5mbkluZm8sIG5hbWU6IG5hbWUgfTtcbiAgICByZXR1cm4gYWNjO1xuICB9LFxuICB7fSBhcyBSZWNvcmQ8c3RyaW5nLCBGdW5jdGlvbk1ldGE+LFxuKTtcbiJdfQ==
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import * as t from "@babel/types";
|
|
2
|
+
import { DirectedGraph } from "graphology";
|
|
3
|
+
import { TerraformResourceBlock, ProgramScope, ResourceScope, ImportableConstruct, AttributePath } from "./types";
|
|
4
|
+
import { Resource, TerraformConfig, Module, Provider, Variable, Output, Import } from "./schema";
|
|
5
|
+
export declare function attributeNameToCdktfName(name: string): string;
|
|
6
|
+
export declare const valueToTs: (scope: ResourceScope, item: TerraformResourceBlock, path: string, isModule?: boolean) => Promise<t.Expression>;
|
|
7
|
+
export declare function backendToExpression(scope: ProgramScope, tf: TerraformConfig["backend"]): Promise<t.Statement[]>;
|
|
8
|
+
export declare function resource(scope: ProgramScope, type: string, key: string, id: string, item: Resource, graph: DirectedGraph): Promise<t.Statement[]>;
|
|
9
|
+
export declare function output(scope: ProgramScope, key: string, _id: string, item: Output, _graph: DirectedGraph): Promise<(t.ExpressionStatement | t.VariableDeclaration)[]>;
|
|
10
|
+
export declare function variableTypeToAst(scope: ProgramScope, type: string): Promise<t.Expression>;
|
|
11
|
+
export declare function variable(scope: ProgramScope, key: string, id: string, item: Variable, graph: DirectedGraph): Promise<(t.ExpressionStatement | t.VariableDeclaration)[]>;
|
|
12
|
+
export declare function local(scope: ProgramScope, key: string, id: string, item: TerraformResourceBlock, graph: DirectedGraph): Promise<t.VariableDeclaration[]>;
|
|
13
|
+
export declare function modules(scope: ProgramScope, key: string, id: string, item: Module, graph: DirectedGraph): Promise<(t.ExpressionStatement | t.VariableDeclaration)[]>;
|
|
14
|
+
export declare function imports(scope: ProgramScope, _id: string, item: Import, graph: DirectedGraph): Promise<t.ExpressionStatement[] | t.EmptyStatement[]>;
|
|
15
|
+
export declare function provider(scope: ProgramScope, key: string, id: string, item: Provider[0], graph: DirectedGraph): Promise<(t.ExpressionStatement | t.VariableDeclaration)[]>;
|
|
16
|
+
export declare const cdktfImport: t.Statement;
|
|
17
|
+
export declare const constructsImport: t.Statement;
|
|
18
|
+
export declare const providerImports: (providers: string[]) => t.Statement[];
|
|
19
|
+
export declare const moduleImports: (modules: Record<string, Module> | undefined) => t.Statement[];
|
|
20
|
+
export declare function gen(statements: t.Statement[]): Promise<string>;
|
|
21
|
+
export declare function addImportForCodeContainer(scope: ProgramScope, codeContainer: string): void;
|
|
22
|
+
export declare function wrapCodeInConstructor(codeContainer: string, code: t.Statement[], className: string, configTypeName?: string): t.Statement;
|
|
23
|
+
export declare const providerConstructImports: (importable: ImportableConstruct[]) => t.Statement;
|
|
24
|
+
export declare function buildImports(importables: ImportableConstruct[]): t.Statement[];
|
|
25
|
+
export declare function generateConfigType(name: string, config: Record<string, AttributePath>): t.Statement;
|
|
26
|
+
//# sourceMappingURL=generation.d.ts.map
|