@@ -0,0 +1,73 @@
1+; Keywords
2+
3+[
4+ "module"
5+ "var"
6+ "param"
7+ "import"
8+ "resource"
9+ "existing"
10+ "if"
11+ "targetScope"
12+ "output"
13+] @keyword
14+
15+; Functions
16+
17+(decorator) @function.builtin
18+
19+(functionCall) @function
20+
21+(functionCall
22+ (functionArgument
23+ (variableAccess) @variable))
24+
25+; Literals/Types
26+
27+[
28+ "("
29+ ")"
30+ "["
31+ "]"
32+ "{"
33+ "}"
34+] @punctuation.bracket
35+
36+(resourceDeclaration
37+ (string
38+ (stringLiteral) @string.special))
39+
40+(moduleDeclaration
41+ (string
42+ (stringLiteral) @string.special))
43+
44+[
45+ (string)
46+ (stringLiteral)
47+] @string
48+
49+(nullLiteral) @keyword
50+(booleanLiteral) @constant.builtin.boolean
51+(integerLiteral) @constant.numeric.integer
52+(comment) @comment
53+
54+(string
55+ (variableAccess
56+ (identifier) @variable))
57+
58+(type) @type
59+
60+; Variables
61+
62+(localVariable) @variable
63+
64+; Statements
65+
66+(object
67+ (objectProperty
68+ (identifier) @identifier))
69+
70+(propertyAccess
71+ (identifier) @identifier)
72+
73+(ifCondition) @keyword.control.conditional