brighterscript 1.0.0-alpha.15 → 1.0.0-alpha.18

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.
Files changed (163) hide show
  1. package/CHANGELOG.md +83 -0
  2. package/README.md +28 -9
  3. package/dist/DependencyGraph.js +5 -4
  4. package/dist/DependencyGraph.js.map +1 -1
  5. package/dist/DiagnosticMessages.d.ts +16 -1
  6. package/dist/DiagnosticMessages.js +15 -0
  7. package/dist/DiagnosticMessages.js.map +1 -1
  8. package/dist/Logger.js +5 -5
  9. package/dist/Logger.js.map +1 -1
  10. package/dist/Program.d.ts +2 -2
  11. package/dist/Program.js +5 -3
  12. package/dist/Program.js.map +1 -1
  13. package/dist/ProgramBuilder.js +1 -1
  14. package/dist/ProgramBuilder.js.map +1 -1
  15. package/dist/Scope.d.ts +58 -8
  16. package/dist/Scope.js +142 -23
  17. package/dist/Scope.js.map +1 -1
  18. package/dist/XmlScope.js +1 -1
  19. package/dist/XmlScope.js.map +1 -1
  20. package/dist/astUtils/creators.d.ts +10 -6
  21. package/dist/astUtils/creators.js +93 -12
  22. package/dist/astUtils/creators.js.map +1 -1
  23. package/dist/astUtils/creators.spec.js +10 -0
  24. package/dist/astUtils/creators.spec.js.map +1 -1
  25. package/dist/astUtils/reflection.d.ts +8 -3
  26. package/dist/astUtils/reflection.js +18 -2
  27. package/dist/astUtils/reflection.js.map +1 -1
  28. package/dist/astUtils/reflection.spec.js +15 -4
  29. package/dist/astUtils/reflection.spec.js.map +1 -1
  30. package/dist/astUtils/visitors.d.ts +4 -1
  31. package/dist/astUtils/visitors.js.map +1 -1
  32. package/dist/astUtils/visitors.spec.js +2 -0
  33. package/dist/astUtils/visitors.spec.js.map +1 -1
  34. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.js +2 -2
  35. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.js.map +1 -1
  36. package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.js +7 -3
  37. package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.js.map +1 -1
  38. package/dist/{types/FunctionType.spec.d.ts → bscPlugin/transpile/BrsFilePreTranspileProcessor.spec.d.ts} +0 -0
  39. package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.spec.js +32 -0
  40. package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.spec.js.map +1 -0
  41. package/dist/diagnosticUtils.js +3 -3
  42. package/dist/diagnosticUtils.js.map +1 -1
  43. package/dist/examples/plugins/removePrint.js +12 -14
  44. package/dist/examples/plugins/removePrint.js.map +1 -1
  45. package/dist/files/BrsFile.Class.spec.js +3 -3
  46. package/dist/files/BrsFile.Class.spec.js.map +1 -1
  47. package/dist/files/BrsFile.d.ts +2 -2
  48. package/dist/files/BrsFile.js +99 -63
  49. package/dist/files/BrsFile.js.map +1 -1
  50. package/dist/files/BrsFile.spec.js +187 -67
  51. package/dist/files/BrsFile.spec.js.map +1 -1
  52. package/dist/files/XmlFile.js +3 -3
  53. package/dist/files/XmlFile.js.map +1 -1
  54. package/dist/globalCallables.js +79 -79
  55. package/dist/globalCallables.js.map +1 -1
  56. package/dist/interfaces.d.ts +43 -4
  57. package/dist/parser/Expression.d.ts +91 -22
  58. package/dist/parser/Expression.js +191 -57
  59. package/dist/parser/Expression.js.map +1 -1
  60. package/dist/parser/Parser.Class.spec.js +6 -6
  61. package/dist/parser/Parser.Class.spec.js.map +1 -1
  62. package/dist/parser/Parser.d.ts +3 -6
  63. package/dist/parser/Parser.js +166 -155
  64. package/dist/parser/Parser.js.map +1 -1
  65. package/dist/parser/Parser.spec.js +61 -6
  66. package/dist/parser/Parser.spec.js.map +1 -1
  67. package/dist/parser/SGTypes.d.ts +2 -2
  68. package/dist/parser/SGTypes.js +2 -2
  69. package/dist/parser/SGTypes.js.map +1 -1
  70. package/dist/parser/Statement.d.ts +85 -57
  71. package/dist/parser/Statement.js +228 -173
  72. package/dist/parser/Statement.js.map +1 -1
  73. package/dist/parser/tests/statement/For.spec.d.ts +1 -0
  74. package/dist/parser/tests/statement/For.spec.js +46 -0
  75. package/dist/parser/tests/statement/For.spec.js.map +1 -0
  76. package/dist/parser/tests/statement/ForEach.spec.d.ts +1 -0
  77. package/dist/parser/tests/statement/ForEach.spec.js +37 -0
  78. package/dist/parser/tests/statement/ForEach.spec.js.map +1 -0
  79. package/dist/parser/tests/statement/InterfaceStatement.spec.js +181 -0
  80. package/dist/parser/tests/statement/InterfaceStatement.spec.js.map +1 -1
  81. package/dist/parser/tests/statement/TryCatch.spec.js +7 -5
  82. package/dist/parser/tests/statement/TryCatch.spec.js.map +1 -1
  83. package/dist/types/ArrayType.js +4 -1
  84. package/dist/types/ArrayType.js.map +1 -1
  85. package/dist/types/ArrayType.spec.js +3 -1
  86. package/dist/types/ArrayType.spec.js.map +1 -1
  87. package/dist/types/BooleanType.d.ts +4 -2
  88. package/dist/types/BooleanType.js +7 -2
  89. package/dist/types/BooleanType.js.map +1 -1
  90. package/dist/types/BooleanType.spec.js +3 -1
  91. package/dist/types/BooleanType.spec.js.map +1 -1
  92. package/dist/types/BscType.d.ts +1 -0
  93. package/dist/types/BscType.js +16 -1
  94. package/dist/types/BscType.js.map +1 -1
  95. package/dist/types/CustomType.js +10 -0
  96. package/dist/types/CustomType.js.map +1 -1
  97. package/dist/types/DoubleType.d.ts +2 -0
  98. package/dist/types/DoubleType.js +7 -2
  99. package/dist/types/DoubleType.js.map +1 -1
  100. package/dist/types/DoubleType.spec.js +3 -1
  101. package/dist/types/DoubleType.spec.js.map +1 -1
  102. package/dist/types/DynamicType.d.ts +2 -0
  103. package/dist/types/DynamicType.js +5 -1
  104. package/dist/types/DynamicType.js.map +1 -1
  105. package/dist/types/FloatType.d.ts +3 -1
  106. package/dist/types/FloatType.js +7 -2
  107. package/dist/types/FloatType.js.map +1 -1
  108. package/dist/types/FloatType.spec.js +2 -0
  109. package/dist/types/FloatType.spec.js.map +1 -1
  110. package/dist/types/FunctionType.d.ts +3 -21
  111. package/dist/types/FunctionType.js +8 -65
  112. package/dist/types/FunctionType.js.map +1 -1
  113. package/dist/types/IntegerType.d.ts +3 -1
  114. package/dist/types/IntegerType.js +7 -2
  115. package/dist/types/IntegerType.js.map +1 -1
  116. package/dist/types/IntegerType.spec.js +3 -1
  117. package/dist/types/IntegerType.spec.js.map +1 -1
  118. package/dist/types/InterfaceType.d.ts +13 -10
  119. package/dist/types/InterfaceType.js +33 -29
  120. package/dist/types/InterfaceType.js.map +1 -1
  121. package/dist/types/InterfaceType.spec.js +36 -16
  122. package/dist/types/InterfaceType.spec.js.map +1 -1
  123. package/dist/types/InvalidType.d.ts +4 -2
  124. package/dist/types/InvalidType.js +7 -2
  125. package/dist/types/InvalidType.js.map +1 -1
  126. package/dist/types/InvalidType.spec.js +2 -0
  127. package/dist/types/InvalidType.spec.js.map +1 -1
  128. package/dist/types/LazyType.js +4 -0
  129. package/dist/types/LazyType.js.map +1 -1
  130. package/dist/types/LongIntegerType.d.ts +3 -1
  131. package/dist/types/LongIntegerType.js +7 -2
  132. package/dist/types/LongIntegerType.js.map +1 -1
  133. package/dist/types/LongIntegerType.spec.js +2 -0
  134. package/dist/types/LongIntegerType.spec.js.map +1 -1
  135. package/dist/types/ObjectType.d.ts +2 -1
  136. package/dist/types/ObjectType.js +4 -2
  137. package/dist/types/ObjectType.js.map +1 -1
  138. package/dist/types/StringType.d.ts +4 -2
  139. package/dist/types/StringType.js +7 -2
  140. package/dist/types/StringType.js.map +1 -1
  141. package/dist/types/StringType.spec.js +2 -0
  142. package/dist/types/StringType.spec.js.map +1 -1
  143. package/dist/types/TypedFunctionType.d.ts +28 -0
  144. package/dist/types/TypedFunctionType.js +88 -0
  145. package/dist/types/TypedFunctionType.js.map +1 -0
  146. package/dist/types/TypedFunctionType.spec.d.ts +1 -0
  147. package/dist/types/TypedFunctionType.spec.js +37 -0
  148. package/dist/types/TypedFunctionType.spec.js.map +1 -0
  149. package/dist/types/UninitializedType.js.map +1 -1
  150. package/dist/types/VoidType.d.ts +4 -2
  151. package/dist/types/VoidType.js +5 -1
  152. package/dist/types/VoidType.js.map +1 -1
  153. package/dist/types/helpers.js +7 -2
  154. package/dist/types/helpers.js.map +1 -1
  155. package/dist/util.d.ts +2 -2
  156. package/dist/util.js +39 -46
  157. package/dist/util.js.map +1 -1
  158. package/dist/validators/ClassValidator.d.ts +14 -1
  159. package/dist/validators/ClassValidator.js +129 -82
  160. package/dist/validators/ClassValidator.js.map +1 -1
  161. package/package.json +2 -3
  162. package/dist/types/FunctionType.spec.js +0 -29
  163. package/dist/types/FunctionType.spec.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"globalCallables.js","sourceRoot":"","sources":["../src/globalCallables.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"globalCallables.js","sourceRoot":"","sources":["../src/globalCallables.ts"],"names":[],"mappings":"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"}
@@ -2,17 +2,19 @@ import type { Range, Diagnostic, CodeAction, SemanticTokenTypes, SemanticTokenMo
2
2
  import type { Scope } from './Scope';
3
3
  import type { BrsFile } from './files/BrsFile';
4
4
  import type { XmlFile } from './files/XmlFile';
5
- import type { FunctionType } from './types/FunctionType';
5
+ import type { TypedFunctionType } from './types/TypedFunctionType';
6
6
  import type { ParseMode } from './parser/Parser';
7
7
  import type { Program } from './Program';
8
8
  import type { ProgramBuilder } from './ProgramBuilder';
9
- import type { FunctionStatement } from './parser/Statement';
9
+ import type { FunctionStatement, ClassStatement, InterfaceStatement } from './parser/Statement';
10
10
  import type { Expression, FunctionExpression } from './parser/Expression';
11
11
  import type { TranspileState } from './parser/TranspileState';
12
12
  import type { SourceMapGenerator, SourceNode } from 'source-map';
13
- import type { BscType } from './types/BscType';
13
+ import type { BscType, SymbolContainer } from './types/BscType';
14
14
  import type { Token } from './lexer/Token';
15
15
  import type { AstEditor } from './astUtils/AstEditor';
16
+ import type { CustomType } from './types/CustomType';
17
+ import type { InterfaceType } from './types/InterfaceType';
16
18
  export interface BsDiagnostic extends Diagnostic {
17
19
  file: BscFile;
18
20
  /**
@@ -28,7 +30,7 @@ export interface Callable {
28
30
  * Is the callable declared as "sub". If falsey, assumed declared as "function"
29
31
  */
30
32
  isSub: boolean;
31
- type: FunctionType;
33
+ type: TypedFunctionType;
32
34
  /**
33
35
  * A short description of the callable. Should be a short sentence.
34
36
  */
@@ -393,3 +395,40 @@ export interface FileLink<T> {
393
395
  item: T;
394
396
  file: BrsFile;
395
397
  }
398
+ /**
399
+ * Common interface to support Statements which define entities that have a member table
400
+ * e.g. Class, Interface
401
+ */
402
+ export interface MemberSymbolTableProvider extends SymbolContainer {
403
+ buildSymbolTable(parent?: InheritableStatement): void;
404
+ hasParent(): boolean;
405
+ getPossibleFullParentNames(): string[];
406
+ getName(parseMode: ParseMode): string;
407
+ getThisBscType(): BscType;
408
+ }
409
+ export declare type InheritableStatement = ClassStatement | InterfaceStatement;
410
+ export declare type InheritableType = CustomType | InterfaceType;
411
+ /**
412
+ * Options for the parser functionDeclaration() method
413
+ */
414
+ export interface FunctionDeclarationParseOptions {
415
+ /**
416
+ * Function should have a name. Add a diagnostic if it is not there
417
+ * False for for anonymous functions
418
+ */
419
+ hasName?: boolean;
420
+ /**
421
+ * Function should have a body. Add a diagnostic if it is not there
422
+ * False for for functions defined in Interfaces
423
+ */
424
+ hasBody?: boolean;
425
+ /**
426
+ * Function should have an end token. Add a diagnostic if it is not there
427
+ * False for for functions defined in Interfaces
428
+ */
429
+ hasEnd?: boolean;
430
+ /**
431
+ *This function is only callable as a member for a class or interface, etc.
432
+ */
433
+ onlyCallableAsMember?: boolean;
434
+ }
@@ -6,9 +6,12 @@ import { ParseMode } from './Parser';
6
6
  import type { WalkOptions, WalkVisitor } from '../astUtils/visitors';
7
7
  import { InternalWalkMode } from '../astUtils/visitors';
8
8
  import type { TranspileResult, TypedefProvider } from '../interfaces';
9
+ import { VoidType } from '../types/VoidType';
10
+ import { DynamicType } from '../types/DynamicType';
9
11
  import type { BscType, SymbolContainer } from '../types/BscType';
10
12
  import { SymbolTable } from '../SymbolTable';
11
- import { FunctionType } from '../types/FunctionType';
13
+ import { TypedFunctionType } from '../types/TypedFunctionType';
14
+ import { ArrayType } from '../types/ArrayType';
12
15
  export declare type ExpressionVisitor = (expression: Expression, parent: Expression) => void;
13
16
  /** A BrightScript expression */
14
17
  export declare abstract class Expression {
@@ -59,24 +62,31 @@ export declare class FunctionExpression extends Expression implements TypedefPro
59
62
  readonly leftParen: Token;
60
63
  readonly rightParen: Token;
61
64
  readonly asToken?: Token;
62
- readonly returnTypeToken?: Token;
65
+ readonly returnType?: TypeExpression;
63
66
  /**
64
67
  * If this function is enclosed within another function, this will reference that parent function
65
68
  */
66
69
  readonly parentFunction?: FunctionExpression;
67
70
  readonly namespaceName?: NamespacedVariableNameExpression;
68
71
  readonly parentSymbolTable?: SymbolTable;
69
- constructor(parameters: FunctionParameterExpression[], body: Block, functionType: Token | null, end: Token, leftParen: Token, rightParen: Token, asToken?: Token, returnTypeToken?: Token,
72
+ constructor(parameters: FunctionParameterExpression[], body: Block, functionType: Token | null, end: Token, leftParen: Token, rightParen: Token, asToken?: Token, returnType?: TypeExpression,
70
73
  /**
71
74
  * If this function is enclosed within another function, this will reference that parent function
72
75
  */
73
76
  parentFunction?: FunctionExpression, namespaceName?: NamespacedVariableNameExpression, parentSymbolTable?: SymbolTable);
77
+ get range(): Range;
78
+ /**
79
+ * The range of the function
80
+ */
81
+ cacheRange(): Range;
82
+ private _range;
74
83
  readonly symbolTable: SymbolTable;
75
84
  labelStatements: LabelStatement[];
85
+ private _returnType;
76
86
  /**
77
87
  * The type this function returns
78
88
  */
79
- returnType: BscType;
89
+ getReturnType(): BscType;
80
90
  /**
81
91
  * The list of function calls that are declared within this function scope. This excludes CallExpressions
82
92
  * declared in child functions
@@ -91,25 +101,26 @@ export declare class FunctionExpression extends Expression implements TypedefPro
91
101
  */
92
102
  childFunctionExpressions: FunctionExpression[];
93
103
  /**
94
- * The range of the function, starting at the 'f' in function or 's' in sub (or the open paren if the keyword is missing),
95
- * and ending with the last n' in 'end function' or 'b' in 'end sub'
96
- */
97
- get range(): Range;
104
+ * The range of the function declaration, starting at the 'f' in function or 's' in sub (or the open paren if the keyword is missing),
105
+ * and ending with the last character in the returnTypeToken, or the 's' in 'as', or the rightParen
106
+ */
107
+ get functionDeclarationRange(): Range;
98
108
  transpile(state: BrsTranspileState, name?: Identifier, includeBody?: boolean): any[];
99
109
  getTypedef(state: BrsTranspileState, name?: Identifier): any[];
100
110
  walk(visitor: WalkVisitor, options: WalkOptions): void;
101
- getFunctionType(): FunctionType;
111
+ getFunctionType(): TypedFunctionType;
102
112
  }
103
113
  export declare class FunctionParameterExpression extends Expression {
104
114
  name: Identifier;
105
- type: BscType;
115
+ private typeInContext;
106
116
  equalsToken?: Token;
107
117
  defaultValue?: Expression;
108
118
  asToken?: Token;
109
- typeToken?: Token;
119
+ type?: TypeExpression;
110
120
  readonly namespaceName?: NamespacedVariableNameExpression;
111
- constructor(name: Identifier, type: BscType, equalsToken?: Token, defaultValue?: Expression, asToken?: Token, typeToken?: Token, namespaceName?: NamespacedVariableNameExpression);
112
- get range(): Range;
121
+ constructor(name: Identifier, typeInContext: BscType, equalsToken?: Token, defaultValue?: Expression, asToken?: Token, type?: TypeExpression, namespaceName?: NamespacedVariableNameExpression);
122
+ readonly range: Range;
123
+ getType(): BscType;
113
124
  transpile(state: BrsTranspileState): any[];
114
125
  walk(visitor: WalkVisitor, options: WalkOptions): void;
115
126
  get isOptional(): boolean;
@@ -117,7 +128,7 @@ export declare class FunctionParameterExpression extends Expression {
117
128
  export declare class NamespacedVariableNameExpression extends Expression {
118
129
  readonly expression: DottedGetExpression | VariableExpression;
119
130
  constructor(expression: DottedGetExpression | VariableExpression);
120
- range: Range;
131
+ readonly range: Range;
121
132
  transpile(state: BrsTranspileState): import("source-map").SourceNode[];
122
133
  getNameParts(): string[];
123
134
  getName(parseMode?: ParseMode): string;
@@ -168,7 +179,7 @@ export declare class GroupingExpression extends Expression {
168
179
  export declare class LiteralExpression extends Expression {
169
180
  token: Token;
170
181
  constructor(token: Token);
171
- get range(): Range;
182
+ readonly range: Range;
172
183
  /**
173
184
  * The (data) type of this expression
174
185
  */
@@ -210,7 +221,7 @@ export declare class AAMemberExpression extends Expression {
210
221
  constructor(keyToken: Token, colonToken: Token,
211
222
  /** The expression evaluated to determine the member's initial value. */
212
223
  value: Expression, type: BscType);
213
- range: Range;
224
+ readonly range: Range;
214
225
  commaToken?: Token;
215
226
  transpile(state: BrsTranspileState): any[];
216
227
  walk(visitor: WalkVisitor, options: WalkOptions): void;
@@ -221,9 +232,9 @@ export declare class AALiteralExpression extends Expression implements SymbolCon
221
232
  readonly close: Token;
222
233
  readonly functionExpression: FunctionExpression;
223
234
  constructor(elements: Array<AAMemberExpression | CommentStatement>, open: Token, close: Token, functionExpression: FunctionExpression);
235
+ readonly range: Range;
224
236
  readonly symbolTable: SymbolTable;
225
237
  readonly memberTable: SymbolTable;
226
- readonly range: Range;
227
238
  buildSymbolTable(): void;
228
239
  transpile(state: BrsTranspileState): any[];
229
240
  walk(visitor: WalkVisitor, options: WalkOptions): void;
@@ -241,7 +252,6 @@ export declare class VariableExpression extends Expression {
241
252
  namespaceName: NamespacedVariableNameExpression;
242
253
  constructor(name: Identifier, namespaceName: NamespacedVariableNameExpression);
243
254
  readonly range: Range;
244
- isCalled: boolean;
245
255
  getName(parseMode: ParseMode): string;
246
256
  transpile(state: BrsTranspileState): any[];
247
257
  walk(visitor: WalkVisitor, options: WalkOptions): void;
@@ -263,12 +273,12 @@ export declare class NewExpression extends Expression {
263
273
  readonly newKeyword: Token;
264
274
  readonly call: CallExpression;
265
275
  constructor(newKeyword: Token, call: CallExpression);
276
+ readonly range: Range;
266
277
  /**
267
278
  * The name of the class to initialize (with optional namespace prefixed)
268
279
  */
269
280
  get className(): NamespacedVariableNameExpression;
270
281
  get namespaceName(): NamespacedVariableNameExpression;
271
- readonly range: Range;
272
282
  transpile(state: BrsTranspileState): any[];
273
283
  walk(visitor: WalkVisitor, options: WalkOptions): void;
274
284
  }
@@ -320,8 +330,10 @@ export declare class AnnotationExpression extends Expression {
320
330
  readonly atToken: Token;
321
331
  readonly nameToken: Token;
322
332
  constructor(atToken: Token, nameToken: Token);
333
+ get range(): Range;
334
+ cacheRange(): Range;
335
+ private _range;
323
336
  name: string;
324
- range: Range;
325
337
  call: CallExpression;
326
338
  /**
327
339
  * Convert annotation arguments to JavaScript types
@@ -339,7 +351,7 @@ export declare class TernaryExpression extends Expression {
339
351
  readonly colonToken?: Token;
340
352
  readonly alternate?: Expression;
341
353
  constructor(test: Expression, questionMarkToken: Token, consequent?: Expression, colonToken?: Token, alternate?: Expression);
342
- range: Range;
354
+ readonly range: Range;
343
355
  transpile(state: BrsTranspileState): any[];
344
356
  walk(visitor: WalkVisitor, options: WalkOptions): void;
345
357
  }
@@ -359,10 +371,67 @@ export declare class RegexLiteralExpression extends Expression {
359
371
  constructor(tokens: {
360
372
  regexLiteral: Token;
361
373
  });
362
- get range(): Range;
374
+ readonly range: Range;
375
+ transpile(state: BrsTranspileState): TranspileResult;
376
+ walk(visitor: WalkVisitor, options: WalkOptions): void;
377
+ }
378
+ export declare class TypeExpression extends Expression {
379
+ private tokens;
380
+ namespaceName?: NamespacedVariableNameExpression;
381
+ constructor(tokens: {
382
+ type?: Token;
383
+ }, namespaceName?: NamespacedVariableNameExpression);
384
+ readonly range: Range;
385
+ private _type;
386
+ /**
387
+ * The this TypeExpression refers to
388
+ */
389
+ get type(): BscType;
390
+ /**
391
+ * Derive a BscType from the type token
392
+ * Can deal with multiple brackets to make multidimensional arrays, eg. float[][]
393
+ * Defaults to `DynamicType`
394
+ */
395
+ getType(parseMode?: ParseMode): DynamicType | BscType | import("../types/FloatType").FloatType | import("../types/IntegerType").IntegerType | import("../types/DoubleType").DoubleType | import("../types/LongIntegerType").LongIntegerType | import("../types/StringType").StringType | import("../types/BooleanType").BooleanType | import("../types/FunctionType").FunctionType | import("../types/InvalidType").InvalidType | VoidType;
396
+ /**
397
+ * Is this a valid, (eg. known) type?
398
+ */
399
+ isValidType(parseMode?: ParseMode): boolean;
400
+ /**
401
+ * Gives a human readable string that says the type
402
+ * @returns text to display to show the type
403
+ */
404
+ getText(): string;
363
405
  transpile(state: BrsTranspileState): TranspileResult;
364
406
  walk(visitor: WalkVisitor, options: WalkOptions): void;
365
407
  }
408
+ export declare class ArrayTypeExpression extends TypeExpression {
409
+ innerTypes: TypeExpression[];
410
+ private bracketTokens;
411
+ namespaceName?: NamespacedVariableNameExpression;
412
+ constructor(innerTypes: TypeExpression[], // this is an array so that in the future when we support union types
413
+ bracketTokens: {
414
+ leftBracket?: Token;
415
+ rightBracket?: Token;
416
+ }, namespaceName?: NamespacedVariableNameExpression);
417
+ readonly range: Range;
418
+ private get defaultTypeExpression();
419
+ /**
420
+ * Derive a BscType from the type token
421
+ * Returns an array type with the inner types based on the inner type expressions
422
+ */
423
+ getType(parseMode?: ParseMode): ArrayType;
424
+ /**
425
+ * Is this a valid, (eg. known) type?
426
+ */
427
+ isValidType(parseMode?: ParseMode): boolean;
428
+ /**
429
+ * Gives a human readable string that says the type
430
+ * @returns text to display to show the type
431
+ */
432
+ getText(): string;
433
+ walk(visitor: WalkVisitor, options: WalkOptions): void;
434
+ }
366
435
  declare type ExpressionValue = string | number | boolean | Expression | ExpressionValue[] | {
367
436
  [key: string]: ExpressionValue;
368
437
  };