@spyglassmc/mcdoc 0.3.3 → 0.3.5

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.
@@ -4,134 +4,134 @@ export interface ModuleNode extends AstNode {
4
4
  type: 'mcdoc:module';
5
5
  children: TopLevelNode[];
6
6
  }
7
- export declare const ModuleNode: Readonly<{
8
- is(node: AstNode | undefined): node is ModuleNode;
9
- }>;
7
+ export declare namespace ModuleNode {
8
+ function is(node: AstNode | undefined): node is ModuleNode;
9
+ }
10
10
  export type TopLevelNode = CommentNode | DispatchStatementNode | EnumNode | InjectionNode | StructNode | TypeAliasNode | UseStatementNode;
11
- export declare const TopLevelNode: Readonly<{
12
- is(node: AstNode | undefined): node is TopLevelNode;
13
- }>;
11
+ export declare namespace TopLevelNode {
12
+ function is(node: AstNode | undefined): node is TopLevelNode;
13
+ }
14
14
  export interface DispatchStatementNode extends AstNode {
15
15
  type: 'mcdoc:dispatch_statement';
16
- children: (CommentNode | AttributeNode | LiteralNode | ResourceLocationNode | IndexBodyNode | TypeParamBlockNode | TypeNode)[];
16
+ children: (CommentNode | PrelimNode | LiteralNode | ResourceLocationNode | IndexBodyNode | TypeParamBlockNode | TypeNode)[];
17
17
  }
18
- export declare const DispatchStatementNode: Readonly<{
19
- destruct(node: DispatchStatementNode): {
18
+ export declare namespace DispatchStatementNode {
19
+ function destruct(node: DispatchStatementNode): {
20
20
  attributes: AttributeNode[];
21
21
  location?: ResourceLocationNode;
22
22
  index?: IndexBodyNode;
23
23
  target?: TypeNode;
24
24
  typeParams?: TypeParamBlockNode;
25
25
  };
26
- is(node: AstNode | undefined): node is DispatchStatementNode;
27
- }>;
26
+ function is(node: AstNode | undefined): node is DispatchStatementNode;
27
+ }
28
28
  export interface LiteralNode extends AstNode {
29
29
  type: 'mcdoc:literal';
30
30
  value: string;
31
31
  colorTokenType?: ColorTokenType;
32
32
  }
33
- export declare const LiteralNode: Readonly<{
34
- is(node: AstNode | undefined): node is LiteralNode;
35
- }>;
33
+ export declare namespace LiteralNode {
34
+ function is(node: AstNode | undefined): node is LiteralNode;
35
+ }
36
36
  export interface IndexBodyNode extends AstNode {
37
37
  type: 'mcdoc:index_body';
38
38
  children: (CommentNode | IndexNode)[];
39
39
  }
40
- export declare const IndexBodyNode: Readonly<{
41
- destruct(node: IndexBodyNode): {
40
+ export declare namespace IndexBodyNode {
41
+ function destruct(node: IndexBodyNode): {
42
42
  parallelIndices: IndexNode[];
43
43
  };
44
- is(node: AstNode | undefined): node is IndexBodyNode;
45
- }>;
44
+ function is(node: AstNode | undefined): node is IndexBodyNode;
45
+ }
46
46
  export type IndexNode = StaticIndexNode | DynamicIndexNode;
47
- export declare const IndexNode: Readonly<{
48
- is(node: AstNode | undefined): node is IndexNode;
49
- }>;
47
+ export declare namespace IndexNode {
48
+ function is(node: AstNode | undefined): node is IndexNode;
49
+ }
50
50
  export type StaticIndexNode = LiteralNode | IdentifierNode | StringNode | ResourceLocationNode;
51
- export declare const StaticIndexNode: Readonly<{
52
- is(node: AstNode | undefined): node is StaticIndexNode;
53
- }>;
51
+ export declare namespace StaticIndexNode {
52
+ function is(node: AstNode | undefined): node is StaticIndexNode;
53
+ }
54
54
  export interface IdentifierNode extends SymbolBaseNode {
55
55
  type: 'mcdoc:identifier';
56
56
  }
57
- export declare const IdentifierNode: Readonly<{
58
- is(node: AstNode | undefined): node is IdentifierNode;
59
- }>;
57
+ export declare namespace IdentifierNode {
58
+ function is(node: AstNode | undefined): node is IdentifierNode;
59
+ }
60
60
  export interface DynamicIndexNode extends AstNode {
61
61
  type: 'mcdoc:dynamic_index';
62
62
  children: (CommentNode | AccessorKeyNode)[];
63
63
  }
64
- export declare const DynamicIndexNode: Readonly<{
65
- destruct(node: DynamicIndexNode): {
64
+ export declare namespace DynamicIndexNode {
65
+ function destruct(node: DynamicIndexNode): {
66
66
  keys: AccessorKeyNode[];
67
67
  };
68
- is(node: AstNode | undefined): node is DynamicIndexNode;
69
- }>;
68
+ function is(node: AstNode | undefined): node is DynamicIndexNode;
69
+ }
70
70
  export type AccessorKeyNode = LiteralNode | IdentifierNode | StringNode;
71
- export declare const AccessorKeyNode: Readonly<{
72
- is(node: AstNode | undefined): node is AccessorKeyNode;
73
- }>;
71
+ export declare namespace AccessorKeyNode {
72
+ function is(node: AstNode | undefined): node is AccessorKeyNode;
73
+ }
74
74
  export type TypeNode = AnyTypeNode | BooleanTypeNode | StringTypeNode | LiteralTypeNode | NumericTypeNode | PrimitiveArrayTypeNode | ListTypeNode | TupleTypeNode | EnumNode | StructNode | ReferenceTypeNode | DispatcherTypeNode | UnionTypeNode;
75
- export declare const TypeNode: Readonly<{
76
- is(node: AstNode | undefined): node is TypeNode;
77
- }>;
75
+ export declare namespace TypeNode {
76
+ function is(node: AstNode | undefined): node is TypeNode;
77
+ }
78
78
  export interface TypeBaseNode<CN extends AstNode> extends AstNode {
79
79
  type: `mcdoc:${string}`;
80
80
  children: (CommentNode | AttributeNode | IndexBodyNode | TypeArgBlockNode | CN)[];
81
81
  }
82
- export declare const TypeBaseNode: Readonly<{
83
- destruct(node: TypeBaseNode<any>): {
82
+ export declare namespace TypeBaseNode {
83
+ function destruct(node: TypeBaseNode<any>): {
84
84
  appendixes: (IndexBodyNode | TypeArgBlockNode)[];
85
85
  attributes: AttributeNode[];
86
86
  };
87
- }>;
87
+ }
88
88
  export interface AttributeNode extends AstNode {
89
89
  type: 'mcdoc:attribute';
90
90
  children: (CommentNode | IdentifierNode | AttributeValueNode)[];
91
91
  }
92
- export declare const AttributeNode: Readonly<{
93
- destruct(node: AttributeNode): {
92
+ export declare namespace AttributeNode {
93
+ function destruct(node: AttributeNode): {
94
94
  name: IdentifierNode;
95
95
  value: AttributeValueNode | undefined;
96
96
  };
97
- is(node: AstNode | undefined): node is AttributeNode;
98
- }>;
97
+ function is(node: AstNode | undefined): node is AttributeNode;
98
+ }
99
99
  export type AttributeValueNode = TypeNode | AttributeTreeNode;
100
- export declare const AttributeValueNode: Readonly<{
101
- is(node: AstNode | undefined): node is AttributeValueNode;
102
- }>;
100
+ export declare namespace AttributeValueNode {
101
+ function is(node: AstNode | undefined): node is AttributeValueNode;
102
+ }
103
103
  export interface AttributeTreeNode extends AstNode {
104
104
  type: 'mcdoc:attribute/tree';
105
105
  children: (CommentNode | AttributeTreePosValuesNode | AttributeTreeNamedValuesNode)[];
106
106
  delim: '(' | '[' | '{';
107
107
  }
108
- export declare const AttributeTreeNode: Readonly<{
109
- destruct(node: AttributeTreeNode): {
108
+ export declare namespace AttributeTreeNode {
109
+ function destruct(node: AttributeTreeNode): {
110
110
  positional?: AttributeTreePosValuesNode;
111
111
  named?: AttributeTreeNamedValuesNode;
112
112
  };
113
- is(node: AstNode | undefined): node is AttributeTreeNode;
114
- }>;
113
+ function is(node: AstNode | undefined): node is AttributeTreeNode;
114
+ }
115
115
  export interface AttributeTreePosValuesNode extends AstNode {
116
116
  type: 'mcdoc:attribute/tree/pos';
117
117
  children: (CommentNode | AttributeValueNode)[];
118
118
  }
119
- export declare const AttributeTreePosValuesNode: Readonly<{
120
- destruct(node: AttributeTreePosValuesNode): {
119
+ export declare namespace AttributeTreePosValuesNode {
120
+ function destruct(node: AttributeTreePosValuesNode): {
121
121
  values: AttributeValueNode[];
122
122
  };
123
- is(node: AstNode | undefined): node is AttributeTreePosValuesNode;
124
- }>;
123
+ function is(node: AstNode | undefined): node is AttributeTreePosValuesNode;
124
+ }
125
125
  export interface AttributeTreeNamedValuesNode extends AstNode {
126
126
  type: 'mcdoc:attribute/tree/named';
127
127
  children: (CommentNode | IdentifierNode | StringNode | AttributeValueNode)[];
128
128
  }
129
- export declare const AttributeTreeNamedValuesNode: Readonly<{
130
- destruct(node: AttributeTreeNamedValuesNode): {
129
+ export declare namespace AttributeTreeNamedValuesNode {
130
+ function destruct(node: AttributeTreeNamedValuesNode): {
131
131
  values: AttributeTreeNamedKeyValuePair[];
132
132
  };
133
- is(node: AstNode | undefined): node is AttributeTreeNamedValuesNode;
134
- }>;
133
+ function is(node: AstNode | undefined): node is AttributeTreeNamedValuesNode;
134
+ }
135
135
  export interface AttributeTreeNamedKeyValuePair {
136
136
  key: IdentifierNode | StringNode;
137
137
  value: AttributeValueNode;
@@ -140,70 +140,70 @@ export interface TypeArgBlockNode extends AstNode {
140
140
  type: 'mcdoc:type_arg_block';
141
141
  children: (CommentNode | TypeNode)[];
142
142
  }
143
- export declare const TypeArgBlockNode: Readonly<{
144
- destruct(node: TypeArgBlockNode): {
143
+ export declare namespace TypeArgBlockNode {
144
+ function destruct(node: TypeArgBlockNode): {
145
145
  args: TypeNode[];
146
146
  };
147
- is(node: AstNode | undefined): node is TypeArgBlockNode;
148
- }>;
147
+ function is(node: AstNode | undefined): node is TypeArgBlockNode;
148
+ }
149
149
  export interface AnyTypeNode extends TypeBaseNode<LiteralNode> {
150
150
  type: 'mcdoc:type/any';
151
151
  }
152
- export declare const AnyTypeNode: Readonly<{
153
- is(node: AstNode | undefined): node is AnyTypeNode;
154
- }>;
152
+ export declare namespace AnyTypeNode {
153
+ function is(node: AstNode | undefined): node is AnyTypeNode;
154
+ }
155
155
  export interface BooleanTypeNode extends TypeBaseNode<LiteralNode> {
156
156
  type: 'mcdoc:type/boolean';
157
157
  }
158
- export declare const BooleanTypeNode: Readonly<{
159
- is(node: AstNode | undefined): node is BooleanTypeNode;
160
- }>;
158
+ export declare namespace BooleanTypeNode {
159
+ function is(node: AstNode | undefined): node is BooleanTypeNode;
160
+ }
161
161
  export interface IntRangeNode extends AstNode {
162
162
  type: 'mcdoc:int_range';
163
163
  children: (IntegerNode | LiteralNode)[];
164
164
  }
165
- export declare const IntRangeNode: Readonly<{
166
- destruct(node: IntRangeNode): {
165
+ export declare namespace IntRangeNode {
166
+ function destruct(node: IntRangeNode): {
167
167
  kind: RangeKind;
168
168
  min?: IntegerNode;
169
169
  max?: IntegerNode;
170
170
  };
171
- is(node: AstNode | undefined): node is IntRangeNode;
172
- }>;
171
+ function is(node: AstNode | undefined): node is IntRangeNode;
172
+ }
173
173
  export interface LiteralTypeNode extends TypeBaseNode<LiteralTypeValueNode> {
174
174
  type: 'mcdoc:type/literal';
175
175
  }
176
- export declare const LiteralTypeNode: Readonly<{
177
- destruct(node: LiteralTypeNode): {
176
+ export declare namespace LiteralTypeNode {
177
+ function destruct(node: LiteralTypeNode): {
178
178
  value: LiteralTypeValueNode;
179
179
  };
180
- is(node: AstNode | undefined): node is LiteralTypeNode;
181
- }>;
180
+ function is(node: AstNode | undefined): node is LiteralTypeNode;
181
+ }
182
182
  export type LiteralTypeValueNode = LiteralNode | TypedNumberNode | StringNode;
183
- export declare const LiteralTypeValueNode: Readonly<{
184
- is(node: AstNode | undefined): node is LiteralTypeValueNode;
185
- }>;
183
+ export declare namespace LiteralTypeValueNode {
184
+ function is(node: AstNode | undefined): node is LiteralTypeValueNode;
185
+ }
186
186
  export interface TypedNumberNode extends AstNode {
187
187
  type: 'mcdoc:typed_number';
188
188
  children: (FloatNode | LiteralNode)[];
189
189
  }
190
- export declare const TypedNumberNode: Readonly<{
191
- destruct(node: TypedNumberNode): {
190
+ export declare namespace TypedNumberNode {
191
+ function destruct(node: TypedNumberNode): {
192
192
  value: FloatNode;
193
193
  suffix?: LiteralNode;
194
194
  };
195
- is(node: AstNode | undefined): node is TypedNumberNode;
196
- }>;
195
+ function is(node: AstNode | undefined): node is TypedNumberNode;
196
+ }
197
197
  export interface NumericTypeNode extends TypeBaseNode<LiteralNode | FloatRangeNode | IntRangeNode> {
198
198
  type: 'mcdoc:type/numeric_type';
199
199
  }
200
- export declare const NumericTypeNode: Readonly<{
201
- destruct(node: NumericTypeNode): {
200
+ export declare namespace NumericTypeNode {
201
+ function destruct(node: NumericTypeNode): {
202
202
  numericKind: LiteralNode;
203
203
  valueRange?: FloatRangeNode | IntRangeNode;
204
204
  };
205
- is(node: AstNode | undefined): node is NumericTypeNode;
206
- }>;
205
+ function is(node: AstNode | undefined): node is NumericTypeNode;
206
+ }
207
207
  export declare const RangeExclusiveChar = "<";
208
208
  /**
209
209
  * A 2-bit binary number is used to represent the kind of range.
@@ -216,270 +216,269 @@ export interface FloatRangeNode extends AstNode {
216
216
  type: 'mcdoc:float_range';
217
217
  children: (FloatNode | LiteralNode)[];
218
218
  }
219
- export declare const FloatRangeNode: Readonly<{
220
- destruct(node: FloatRangeNode): {
219
+ export declare namespace FloatRangeNode {
220
+ function destruct(node: FloatRangeNode): {
221
221
  kind: RangeKind;
222
222
  min?: FloatNode;
223
223
  max?: FloatNode;
224
224
  };
225
- is(node: AstNode | undefined): node is FloatRangeNode;
226
- }>;
225
+ function is(node: AstNode | undefined): node is FloatRangeNode;
226
+ }
227
227
  export interface PrimitiveArrayTypeNode extends TypeBaseNode<LiteralNode | IntRangeNode> {
228
228
  type: 'mcdoc:type/primitive_array';
229
229
  }
230
- export declare const PrimitiveArrayTypeNode: Readonly<{
231
- destruct(node: PrimitiveArrayTypeNode): {
230
+ export declare namespace PrimitiveArrayTypeNode {
231
+ function destruct(node: PrimitiveArrayTypeNode): {
232
232
  arrayKind: LiteralNode;
233
- lengthRange?: IntRangeNode | undefined;
234
- valueRange?: IntRangeNode | undefined;
233
+ lengthRange?: IntRangeNode;
234
+ valueRange?: IntRangeNode;
235
235
  };
236
- is(node: AstNode | undefined): node is PrimitiveArrayTypeNode;
237
- }>;
236
+ function is(node: AstNode | undefined): node is PrimitiveArrayTypeNode;
237
+ }
238
238
  export interface ListTypeNode extends TypeBaseNode<TypeNode | IntRangeNode> {
239
239
  type: 'mcdoc:type/list';
240
240
  }
241
- export declare const ListTypeNode: Readonly<{
242
- destruct(node: ListTypeNode): {
241
+ export declare namespace ListTypeNode {
242
+ function destruct(node: ListTypeNode): {
243
243
  item: TypeNode;
244
244
  lengthRange?: IntRangeNode;
245
245
  };
246
- is(node: AstNode | undefined): node is ListTypeNode;
247
- }>;
246
+ function is(node: AstNode | undefined): node is ListTypeNode;
247
+ }
248
248
  export interface StringTypeNode extends TypeBaseNode<LiteralNode | IntRangeNode> {
249
249
  type: 'mcdoc:type/string';
250
250
  }
251
- export declare const StringTypeNode: Readonly<{
252
- destruct(node: StringTypeNode): {
251
+ export declare namespace StringTypeNode {
252
+ function destruct(node: StringTypeNode): {
253
253
  lengthRange?: IntRangeNode;
254
254
  };
255
- is(node: AstNode | undefined): node is StringTypeNode;
256
- }>;
255
+ function is(node: AstNode | undefined): node is StringTypeNode;
256
+ }
257
257
  export interface TupleTypeNode extends TypeBaseNode<TypeNode> {
258
258
  type: 'mcdoc:type/tuple';
259
259
  }
260
- export declare const TupleTypeNode: Readonly<{
261
- destruct(node: TupleTypeNode): {
260
+ export declare namespace TupleTypeNode {
261
+ function destruct(node: TupleTypeNode): {
262
262
  items: TypeNode[];
263
263
  };
264
- is(node: AstNode | undefined): node is TupleTypeNode;
265
- }>;
264
+ function is(node: AstNode | undefined): node is TupleTypeNode;
265
+ }
266
266
  export interface EnumNode extends TypeBaseNode<DocCommentsNode | LiteralNode | IdentifierNode | EnumBlockNode> {
267
267
  type: 'mcdoc:enum';
268
268
  }
269
- declare const EnumKinds: Set<"string" | "float" | "byte" | "short" | "int" | "long" | "double">;
270
- export type EnumKind = typeof EnumKinds extends Set<infer V> ? V : never;
271
- export declare const EnumNode: Readonly<{
272
- kinds: Set<"string" | "float" | "byte" | "short" | "int" | "long" | "double">;
273
- destruct(node: EnumNode): {
269
+ export type EnumKind = typeof EnumNode.Kinds extends Set<infer V> ? V : never;
270
+ export declare namespace EnumNode {
271
+ const Kinds: Set<"string" | "float" | "byte" | "short" | "int" | "long" | "double">;
272
+ function destruct(node: EnumNode): {
274
273
  block: EnumBlockNode;
275
274
  docComments?: DocCommentsNode;
276
275
  enumKind?: EnumKind;
277
276
  identifier?: IdentifierNode;
278
277
  keyword: LiteralNode;
279
278
  };
280
- is(node: AstNode | undefined): node is EnumNode;
281
- }>;
279
+ function is(node: AstNode | undefined): node is EnumNode;
280
+ }
282
281
  export interface DocCommentsNode extends AstNode {
283
282
  type: 'mcdoc:doc_comments';
284
283
  children: CommentNode[];
285
284
  }
286
- export declare const DocCommentsNode: Readonly<{
285
+ export declare namespace DocCommentsNode {
287
286
  /**
288
287
  * @returns The text content of this doc comment block.
289
288
  */
290
- asText(node: DocCommentsNode | undefined): string | undefined;
291
- is(node: AstNode | undefined): node is DocCommentsNode;
292
- }>;
289
+ function asText(node: DocCommentsNode | undefined): string | undefined;
290
+ function is(node: AstNode | undefined): node is DocCommentsNode;
291
+ }
293
292
  export interface EnumBlockNode extends AstNode {
294
293
  type: 'mcdoc:enum/block';
295
294
  children: (CommentNode | EnumFieldNode)[];
296
295
  }
297
- export declare const EnumBlockNode: Readonly<{
298
- destruct(node: EnumBlockNode): {
296
+ export declare namespace EnumBlockNode {
297
+ function destruct(node: EnumBlockNode): {
299
298
  fields: EnumFieldNode[];
300
299
  };
301
- is(node: AstNode | undefined): node is EnumBlockNode;
302
- }>;
300
+ function is(node: AstNode | undefined): node is EnumBlockNode;
301
+ }
303
302
  export interface EnumFieldNode extends AstNode {
304
303
  type: 'mcdoc:enum/field';
305
304
  children: (CommentNode | PrelimNode | IdentifierNode | EnumValueNode)[];
306
305
  }
307
- export declare const EnumFieldNode: Readonly<{
308
- destruct(node: EnumFieldNode): {
306
+ export declare namespace EnumFieldNode {
307
+ function destruct(node: EnumFieldNode): {
309
308
  attributes: AttributeNode[];
310
309
  identifier: IdentifierNode;
311
310
  value: EnumValueNode;
312
311
  };
313
- is(node: AstNode | undefined): node is EnumFieldNode;
314
- }>;
312
+ function is(node: AstNode | undefined): node is EnumFieldNode;
313
+ }
315
314
  export type EnumValueNode = TypedNumberNode | StringNode;
316
- export declare const EnumValueNode: Readonly<{
317
- is(node: AstNode | undefined): node is EnumValueNode;
318
- }>;
315
+ export declare namespace EnumValueNode {
316
+ function is(node: AstNode | undefined): node is EnumValueNode;
317
+ }
319
318
  export type PrelimNode = AttributeNode | DocCommentsNode;
320
- export declare const PrelimNode: Readonly<{
321
- is(node: AstNode | undefined): node is PrelimNode;
322
- }>;
319
+ export declare namespace PrelimNode {
320
+ function is(node: AstNode | undefined): node is PrelimNode;
321
+ }
323
322
  export interface StructNode extends TypeBaseNode<DocCommentsNode | LiteralNode | IdentifierNode | StructBlockNode> {
324
323
  type: 'mcdoc:struct';
325
324
  }
326
- export declare const StructNode: Readonly<{
327
- destruct(node: StructNode): {
325
+ export declare namespace StructNode {
326
+ function destruct(node: StructNode): {
328
327
  block: StructBlockNode;
329
328
  docComments?: DocCommentsNode;
330
329
  identifier?: IdentifierNode;
331
330
  keyword: LiteralNode;
332
331
  };
333
- is(node: AstNode | undefined): node is StructNode;
334
- }>;
332
+ function is(node: AstNode | undefined): node is StructNode;
333
+ }
335
334
  export interface ReferenceTypeNode extends TypeBaseNode<PathNode> {
336
335
  type: 'mcdoc:type/reference';
337
336
  }
338
- export declare const ReferenceTypeNode: Readonly<{
339
- destruct(node: ReferenceTypeNode): {
337
+ export declare namespace ReferenceTypeNode {
338
+ function destruct(node: ReferenceTypeNode): {
340
339
  path: PathNode;
341
340
  };
342
- is(node: AstNode | undefined): node is ReferenceTypeNode;
343
- }>;
341
+ function is(node: AstNode | undefined): node is ReferenceTypeNode;
342
+ }
344
343
  export interface TypeParamBlockNode extends AstNode {
345
344
  type: 'mcdoc:type_param_block';
346
345
  children: (CommentNode | TypeParamNode)[];
347
346
  }
348
- export declare const TypeParamBlockNode: Readonly<{
349
- destruct(node: TypeParamBlockNode): {
347
+ export declare namespace TypeParamBlockNode {
348
+ function destruct(node: TypeParamBlockNode): {
350
349
  params: TypeParamNode[];
351
350
  };
352
- is(node: AstNode | undefined): node is TypeParamBlockNode;
353
- }>;
351
+ function is(node: AstNode | undefined): node is TypeParamBlockNode;
352
+ }
354
353
  export interface TypeParamNode extends AstNode {
355
354
  type: 'mcdoc:type_param';
356
355
  children: (CommentNode | IdentifierNode | LiteralNode)[];
357
356
  }
358
- export declare const TypeParamNode: Readonly<{
359
- destruct(node: TypeParamNode): {
357
+ export declare namespace TypeParamNode {
358
+ function destruct(node: TypeParamNode): {
360
359
  identifier: IdentifierNode;
361
360
  };
362
- is(node: AstNode | undefined): node is TypeParamNode;
363
- }>;
361
+ function is(node: AstNode | undefined): node is TypeParamNode;
362
+ }
364
363
  export interface PathNode extends AstNode {
365
364
  type: 'mcdoc:path';
366
365
  children: (LiteralNode | IdentifierNode)[];
367
366
  isAbsolute?: boolean;
368
367
  }
369
- export declare const PathNode: Readonly<{
370
- destruct(node: PathNode | undefined): {
368
+ export declare namespace PathNode {
369
+ function destruct(node: PathNode | undefined): {
371
370
  children: (LiteralNode | IdentifierNode)[];
372
371
  isAbsolute?: boolean;
373
372
  lastIdentifier?: IdentifierNode;
374
373
  };
375
- is(node: AstNode | undefined): node is PathNode;
376
- }>;
374
+ function is(node: AstNode | undefined): node is PathNode;
375
+ }
377
376
  export interface StructBlockNode extends AstNode {
378
377
  type: 'mcdoc:struct/block';
379
378
  children: (CommentNode | StructFieldNode)[];
380
379
  }
381
- export declare const StructBlockNode: Readonly<{
382
- destruct(node: StructBlockNode): {
380
+ export declare namespace StructBlockNode {
381
+ function destruct(node: StructBlockNode): {
383
382
  fields: StructFieldNode[];
384
383
  };
385
- is(node: AstNode | undefined): node is StructBlockNode;
386
- }>;
384
+ function is(node: AstNode | undefined): node is StructBlockNode;
385
+ }
387
386
  export type StructFieldNode = StructPairFieldNode | StructSpreadFieldNode;
388
- export declare const StructFieldNode: Readonly<{
389
- is(node: AstNode | undefined): node is StructFieldNode;
390
- }>;
387
+ export declare namespace StructFieldNode {
388
+ function is(node: AstNode | undefined): node is StructFieldNode;
389
+ }
391
390
  export interface StructPairFieldNode extends AstNode {
392
391
  type: 'mcdoc:struct/field/pair';
393
392
  children: (CommentNode | PrelimNode | StructKeyNode | TypeNode)[];
394
393
  isOptional?: boolean;
395
394
  }
396
- export declare const StructPairFieldNode: Readonly<{
397
- destruct(node: StructPairFieldNode): {
395
+ export declare namespace StructPairFieldNode {
396
+ function destruct(node: StructPairFieldNode): {
398
397
  attributes: AttributeNode[];
399
398
  key: StructKeyNode;
400
399
  type: TypeNode;
401
400
  isOptional?: boolean;
402
401
  };
403
- is(node: AstNode | undefined): node is StructPairFieldNode;
404
- }>;
402
+ function is(node: AstNode | undefined): node is StructPairFieldNode;
403
+ }
405
404
  export type StructKeyNode = StringNode | IdentifierNode | StructMapKeyNode;
406
- export declare const StructKeyNode: Readonly<{
407
- is(node: AstNode | undefined): node is StructKeyNode;
408
- }>;
405
+ export declare namespace StructKeyNode {
406
+ function is(node: AstNode | undefined): node is StructKeyNode;
407
+ }
409
408
  export interface StructMapKeyNode extends AstNode {
410
409
  type: 'mcdoc:struct/map_key';
411
410
  children: (CommentNode | TypeNode)[];
412
411
  }
413
- export declare const StructMapKeyNode: Readonly<{
414
- destruct(node: StructMapKeyNode): {
412
+ export declare namespace StructMapKeyNode {
413
+ function destruct(node: StructMapKeyNode): {
415
414
  type: TypeNode;
416
415
  };
417
- is(node: AstNode | undefined): node is StructMapKeyNode;
418
- }>;
416
+ function is(node: AstNode | undefined): node is StructMapKeyNode;
417
+ }
419
418
  export interface StructSpreadFieldNode extends AstNode {
420
419
  type: 'mcdoc:struct/field/spread';
421
420
  children: (CommentNode | AttributeNode | TypeNode)[];
422
421
  }
423
- export declare const StructSpreadFieldNode: Readonly<{
424
- destruct(node: StructSpreadFieldNode): {
422
+ export declare namespace StructSpreadFieldNode {
423
+ function destruct(node: StructSpreadFieldNode): {
425
424
  attributes: AttributeNode[];
426
425
  type: TypeNode;
427
426
  };
428
- is(node: AstNode | undefined): node is StructSpreadFieldNode;
429
- }>;
427
+ function is(node: AstNode | undefined): node is StructSpreadFieldNode;
428
+ }
430
429
  export interface DispatcherTypeNode extends TypeBaseNode<ResourceLocationNode | IndexBodyNode> {
431
430
  type: 'mcdoc:type/dispatcher';
432
431
  }
433
- export declare const DispatcherTypeNode: Readonly<{
434
- destruct(node: DispatcherTypeNode): {
432
+ export declare namespace DispatcherTypeNode {
433
+ function destruct(node: DispatcherTypeNode): {
435
434
  location: ResourceLocationNode;
436
435
  index: IndexBodyNode;
437
436
  };
438
- is(node: AstNode | undefined): node is DispatcherTypeNode;
439
- }>;
437
+ function is(node: AstNode | undefined): node is DispatcherTypeNode;
438
+ }
440
439
  export interface UnionTypeNode extends TypeBaseNode<TypeNode> {
441
440
  type: 'mcdoc:type/union';
442
441
  }
443
- export declare const UnionTypeNode: Readonly<{
444
- destruct(node: UnionTypeNode): {
442
+ export declare namespace UnionTypeNode {
443
+ function destruct(node: UnionTypeNode): {
445
444
  members: TypeNode[];
446
445
  };
447
- is(node: AstNode | undefined): node is UnionTypeNode;
448
- }>;
446
+ function is(node: AstNode | undefined): node is UnionTypeNode;
447
+ }
449
448
  export interface InjectionNode extends AstNode {
450
449
  type: 'mcdoc:injection';
451
450
  children: (CommentNode | LiteralNode | InjectionContentNode)[];
452
451
  }
453
- export declare const InjectionNode: Readonly<{
454
- destruct(node: InjectionNode): {
452
+ export declare namespace InjectionNode {
453
+ function destruct(node: InjectionNode): {
455
454
  injection: InjectionContentNode;
456
455
  };
457
- is(node: AstNode | undefined): node is InjectionNode;
458
- }>;
456
+ function is(node: AstNode | undefined): node is InjectionNode;
457
+ }
459
458
  export type InjectionContentNode = EnumInjectionNode | StructInjectionNode;
460
- export declare const InjectionContentNode: Readonly<{
461
- is(node: AstNode | undefined): node is InjectionContentNode;
462
- }>;
459
+ export declare namespace InjectionContentNode {
460
+ function is(node: AstNode | undefined): node is InjectionContentNode;
461
+ }
463
462
  export interface EnumInjectionNode extends AstNode {
464
463
  type: 'mcdoc:injection/enum';
465
464
  children: (CommentNode | LiteralNode | PathNode | EnumBlockNode)[];
466
465
  }
467
- export declare const EnumInjectionNode: Readonly<{
468
- is(node: AstNode | undefined): node is EnumInjectionNode;
469
- }>;
466
+ export declare namespace EnumInjectionNode {
467
+ function is(node: AstNode | undefined): node is EnumInjectionNode;
468
+ }
470
469
  export interface StructInjectionNode extends AstNode {
471
470
  type: 'mcdoc:injection/struct';
472
471
  children: (CommentNode | LiteralNode | PathNode | StructBlockNode)[];
473
472
  }
474
- export declare const StructInjectionNode: Readonly<{
475
- is(node: AstNode | undefined): node is StructInjectionNode;
476
- }>;
473
+ export declare namespace StructInjectionNode {
474
+ function is(node: AstNode | undefined): node is StructInjectionNode;
475
+ }
477
476
  export interface TypeAliasNode extends AstNode {
478
477
  type: 'mcdoc:type_alias';
479
478
  children: (CommentNode | PrelimNode | LiteralNode | IdentifierNode | TypeParamBlockNode | TypeNode)[];
480
479
  }
481
- export declare const TypeAliasNode: Readonly<{
482
- destruct(node: TypeAliasNode): {
480
+ export declare namespace TypeAliasNode {
481
+ function destruct(node: TypeAliasNode): {
483
482
  attributes: AttributeNode[];
484
483
  docComments?: DocCommentsNode;
485
484
  identifier: IdentifierNode;
@@ -487,18 +486,17 @@ export declare const TypeAliasNode: Readonly<{
487
486
  typeParams?: TypeParamBlockNode;
488
487
  rhs?: TypeNode;
489
488
  };
490
- is(node: AstNode | undefined): node is TypeAliasNode;
491
- }>;
489
+ function is(node: AstNode | undefined): node is TypeAliasNode;
490
+ }
492
491
  export interface UseStatementNode extends AstNode {
493
492
  type: 'mcdoc:use_statement';
494
493
  children: (CommentNode | LiteralNode | PathNode | IdentifierNode)[];
495
494
  }
496
- export declare const UseStatementNode: Readonly<{
497
- destruct(node: UseStatementNode): {
495
+ export declare namespace UseStatementNode {
496
+ function destruct(node: UseStatementNode): {
498
497
  binding?: IdentifierNode;
499
498
  path?: PathNode;
500
499
  };
501
- is(node: AstNode | undefined): node is UseStatementNode;
502
- }>;
503
- export {};
500
+ function is(node: AstNode | undefined): node is UseStatementNode;
501
+ }
504
502
  //# sourceMappingURL=index.d.ts.map