@idlizer/core 2.1.9-arktscgen-9 → 2.1.10-arktscgen-3

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 (41) hide show
  1. package/build/lib/src/LanguageWriters/ArgConvertors.js +5 -3
  2. package/build/lib/src/LanguageWriters/LanguageWriter.d.ts +7 -5
  3. package/build/lib/src/LanguageWriters/LanguageWriter.js +3 -1
  4. package/build/lib/src/LanguageWriters/convertors/CJConvertors.js +2 -1
  5. package/build/lib/src/LanguageWriters/convertors/InteropConvertors.js +2 -0
  6. package/build/lib/src/LanguageWriters/convertors/JavaConvertors.js +3 -0
  7. package/build/lib/src/LanguageWriters/convertors/KotlinConvertors.js +2 -0
  8. package/build/lib/src/LanguageWriters/convertors/TSConvertors.js +3 -1
  9. package/build/lib/src/LanguageWriters/writers/CJLanguageWriter.d.ts +2 -5
  10. package/build/lib/src/LanguageWriters/writers/CJLanguageWriter.js +8 -8
  11. package/build/lib/src/LanguageWriters/writers/ETSLanguageWriter.d.ts +2 -1
  12. package/build/lib/src/LanguageWriters/writers/ETSLanguageWriter.js +6 -0
  13. package/build/lib/src/LanguageWriters/writers/KotlinLanguageWriter.d.ts +2 -5
  14. package/build/lib/src/LanguageWriters/writers/TsLanguageWriter.d.ts +2 -5
  15. package/build/lib/src/config.d.ts +66 -0
  16. package/build/lib/src/config.js +2 -0
  17. package/build/lib/src/configDescriber.js +1 -1
  18. package/build/lib/src/diagnosticmessages.d.ts +18 -12
  19. package/build/lib/src/diagnosticmessages.js +22 -14
  20. package/build/lib/src/diagnostictypes.d.ts +3 -9
  21. package/build/lib/src/formatter.d.ts +2 -1
  22. package/build/lib/src/formatter.js +3 -3
  23. package/build/lib/src/from-idl/deserialize.js +139 -6
  24. package/build/lib/src/from-idl/parser.d.ts +99 -0
  25. package/build/lib/src/from-idl/parser.js +943 -0
  26. package/build/lib/src/idl.d.ts +13 -1
  27. package/build/lib/src/idl.js +6 -0
  28. package/build/lib/src/index.d.ts +1 -0
  29. package/build/lib/src/index.js +1 -0
  30. package/build/lib/src/peer-generation/LayoutManager.d.ts +1 -1
  31. package/build/lib/src/peer-generation/Materialized.d.ts +5 -3
  32. package/build/lib/src/peer-generation/Materialized.js +10 -7
  33. package/build/lib/src/peer-generation/PeerClass.d.ts +8 -2
  34. package/build/lib/src/peer-generation/PeerClass.js +4 -2
  35. package/build/lib/src/peer-generation/PeerLibrary.d.ts +1 -0
  36. package/build/lib/src/peer-generation/PeerLibrary.js +6 -0
  37. package/build/lib/src/peer-generation/PeerMethod.d.ts +9 -2
  38. package/build/lib/src/peer-generation/PeerMethod.js +23 -4
  39. package/build/lib/src/peer-generation/getSuperType.d.ts +1 -0
  40. package/build/lib/src/peer-generation/getSuperType.js +9 -0
  41. package/package.json +12 -4
@@ -493,7 +493,7 @@ export class AggregateConvertor extends BaseArgConvertor {
493
493
  statements.push(assigneer(writer.makeString(bufferName)));
494
494
  }
495
495
  else if (writer.language == Language.CJ) {
496
- const resultExpression = writer.makeString(`${writer.getNodeName(this.idlType)}(${this.decl.properties.map(prop => `${bufferName}_${prop.name}`).join(", ")})`);
496
+ const resultExpression = writer.makeString(`${writer.getNodeName(this.idlType)}(${this.decl.properties.map(prop => `${bufferName}${capitalize(prop.name)}`).join(", ")})`);
497
497
  statements.push(assigneer(resultExpression));
498
498
  }
499
499
  else if (writer.language == Language.KOTLIN) {
@@ -886,7 +886,7 @@ export class OptionConvertor extends BaseArgConvertor {
886
886
  const statements = [];
887
887
  statements.push(writer.makeAssign(runtimeBufferName, undefined, writer.makeCast(writer.makeString(`${deserializerName}.readInt8()`), writer.getRuntimeType()), true));
888
888
  const bufferType = this.nativeType();
889
- statements.push(writer.makeAssign(bufferName, bufferType, (writer.language == Language.CJ || writer.language == Language.KOTLIN) ? writer.makeNull() : undefined, true, false));
889
+ statements.push(writer.makeAssign(bufferName, bufferType, (writer.language == Language.CJ || writer.language == Language.KOTLIN) ? writer.makeNull(bufferName) : undefined, true, false)); // maybe change to generic None
890
890
  const thenStatement = new BlockStatement([
891
891
  this.typeConvertor.convertorDeserialize(`${bufferName}_`, deserializerName, (expr) => {
892
892
  const receiver = writer.language === Language.CPP
@@ -1120,7 +1120,7 @@ export class CallbackConvertor extends BaseArgConvertor {
1120
1120
  value = `CallbackTransformer.transformFrom${this.library.getInteropName(this.decl)}(${value})`;
1121
1121
  return writer.makeStatement(writer.makeMethodCall(`${param}Serializer`, `holdAndWriteCallback`, [writer.makeString(`${value}`)]));
1122
1122
  }
1123
- convertorDeserialize(bufferName, deserializerName, assigneer, writer, useSyncVersion = false) {
1123
+ convertorDeserialize(bufferName, deserializerName, assigneer, writer, useSyncVersion = true) {
1124
1124
  if (writer.language == Language.CPP) {
1125
1125
  const callerInvocation = writer.makeString(`getManagedCallbackCaller(${generateCallbackKindAccess(this.transformedDecl, writer.language)})`);
1126
1126
  const callerSyncInvocation = writer.makeString(`getManagedCallbackCallerSync(${generateCallbackKindAccess(this.transformedDecl, writer.language)})`);
@@ -1181,11 +1181,13 @@ export class CallbackConvertor extends BaseArgConvertor {
1181
1181
  ...continuation,
1182
1182
  new ExpressionStatement(useSyncVersion
1183
1183
  ? writer.makeNativeCall(this.interopModuleName, `_CallCallbackSync`, [
1184
+ writer.makeString(generatorConfiguration().ApiKind.toString()),
1184
1185
  writer.makeString(generateCallbackKindValue(this.decl).toString()),
1185
1186
  writer.makeSerializedBufferGetter(`${argsSerializer}Serializer`),
1186
1187
  writer.makeString(`${argsSerializer}Serializer.length()`),
1187
1188
  ])
1188
1189
  : writer.makeNativeCall(this.interopModuleName, `_CallCallback`, [
1190
+ writer.makeString(generatorConfiguration().ApiKind.toString()),
1189
1191
  writer.makeString(generateCallbackKindValue(this.decl).toString()),
1190
1192
  writer.makeSerializedBufferGetter(`${argsSerializer}Serializer`),
1191
1193
  writer.makeString(`${argsSerializer}Serializer.length()`),
@@ -230,6 +230,11 @@ export interface ObjectArgs {
230
230
  export interface PrinterLike {
231
231
  getOutput(): string[];
232
232
  }
233
+ export interface NamespaceOptions {
234
+ ident: boolean;
235
+ isDeclared?: boolean;
236
+ isDefault?: boolean;
237
+ }
233
238
  export declare abstract class LanguageWriter {
234
239
  printer: IndentedPrinter;
235
240
  resolver: ReferenceResolver;
@@ -298,7 +303,7 @@ export declare abstract class LanguageWriter {
298
303
  }): LanguageWriter;
299
304
  concat(other: PrinterLike): this;
300
305
  printTo(file: string): void;
301
- writeLines(lines: string): void;
306
+ writeLines(lines: string | stringOrNone[]): void;
302
307
  writeGetterImplementation(method: Method, op: (writer: this) => void): void;
303
308
  writeSetterImplementation(method: Method, op: (writer: this) => void): void;
304
309
  writeSuperCall(params: string[]): void;
@@ -381,10 +386,7 @@ export declare abstract class LanguageWriter {
381
386
  * Writes `namespace <namespace> {` and adds extra indent
382
387
  * @param namespace Namespace to begin
383
388
  */
384
- pushNamespace(namespace: string, options: {
385
- ident: boolean;
386
- isDeclared?: boolean;
387
- }): void;
389
+ pushNamespace(namespace: string, options: NamespaceOptions): void;
388
390
  /**
389
391
  * Writes closing brace of namespace block and removes one level of indent
390
392
  */
@@ -440,7 +440,9 @@ export class LanguageWriter {
440
440
  fs.writeFileSync(file, this.getOutput().join("\n"));
441
441
  }
442
442
  writeLines(lines) {
443
- lines.split("\n").forEach(it => this.print(it));
443
+ if (typeof lines === 'string')
444
+ lines = lines.split("\n");
445
+ lines.forEach(it => this.print(it));
444
446
  }
445
447
  writeGetterImplementation(method, op) {
446
448
  var _a;
@@ -14,6 +14,7 @@
14
14
  */
15
15
  import * as idl from '../../idl';
16
16
  import { CJKeywords } from '../../languageSpecificKeywords';
17
+ import { generateSyntheticIdlNodeName } from '../../peer-generation/idl/common';
17
18
  import { convertNode, convertType } from '../nameConvertor';
18
19
  import { InteropArgConvertor } from './InteropConvertors';
19
20
  export class CJTypeNameConvertor {
@@ -33,7 +34,7 @@ export class CJTypeNameConvertor {
33
34
  return `Option<${this.convert(type.type)}>`;
34
35
  }
35
36
  convertUnion(type) {
36
- return type.name;
37
+ return "Union_" + type.types.map(it => generateSyntheticIdlNodeName(it)).join("_");
37
38
  }
38
39
  convertContainer(type) {
39
40
  if (idl.IDLContainerUtils.isSequence(type)) {
@@ -122,9 +122,11 @@ export class InteropArgConvertor {
122
122
  switch (type) {
123
123
  case idl.IDLI64Type: return "KLong";
124
124
  case idl.IDLU64Type: return "KLong";
125
+ case idl.IDLU8Type: return "KInt";
125
126
  case idl.IDLI32Type: return "KInt";
126
127
  case idl.IDLU32Type: return "KInt";
127
128
  case idl.IDLF32Type: return "KFloat";
129
+ case idl.IDLF64Type: return "KDouble";
128
130
  case idl.IDLNumberType: return 'KInteropNumber';
129
131
  case idl.IDLBigintType: return 'KLong';
130
132
  case idl.IDLSerializerBuffer: return 'KSerializerBuffer';
@@ -154,6 +154,8 @@ export class JavaTypeNameConvertor {
154
154
  case 'KLong': return 'long';
155
155
  case 'float32':
156
156
  case 'KFloat': return 'float';
157
+ case 'float64':
158
+ case 'KDouble': return 'double';
157
159
  case 'KUint8ArrayPtr': return 'byte[]';
158
160
  case 'KInt32ArrayPtr': return 'int[]';
159
161
  case 'KFloat32ArrayPtr': return 'float[]';
@@ -191,6 +193,7 @@ export class JavaInteropArgConvertor extends InteropArgConvertor {
191
193
  case idl.IDLI32Type: return "int";
192
194
  case idl.IDLU32Type: return "int";
193
195
  case idl.IDLF32Type: return "float";
196
+ case idl.IDLF64Type: return "double";
194
197
  case idl.IDLBigintType: return "long";
195
198
  case idl.IDLSerializerBuffer: return "long";
196
199
  case idl.IDLFunctionType: return "int";
@@ -133,6 +133,7 @@ const KBoolean = "KBoolean";
133
133
  const KInt = "KInt";
134
134
  const KLong = "KLong";
135
135
  const KFloat = "KFloat";
136
+ const KDouble = "KDouble";
136
137
  const KNativePointer = "KNativePointer";
137
138
  const KInteropNumber = "KInteropNumber";
138
139
  const KStringPtr = "KStringPtr";
@@ -216,6 +217,7 @@ export class KotlinCInteropArgConvertor {
216
217
  case idl.IDLI32Type: return KInt;
217
218
  case idl.IDLU32Type: return KInt;
218
219
  case idl.IDLF32Type: return KFloat;
220
+ case idl.IDLF64Type: return KDouble;
219
221
  case idl.IDLNumberType: return KInteropNumber;
220
222
  case idl.IDLBigintType: return KLong;
221
223
  case idl.IDLSerializerBuffer: return KSerializerBuffer;
@@ -166,7 +166,7 @@ export class TSTypeNameConvertor {
166
166
  case idl.IDLDate:
167
167
  return 'Date';
168
168
  case idl.IDLBufferType:
169
- return 'NativeBuffer';
169
+ return 'ArrayBuffer';
170
170
  case idl.IDLInteropReturnBufferType:
171
171
  return `KInteropReturnBuffer`;
172
172
  }
@@ -248,9 +248,11 @@ export class TSInteropArgConvertor {
248
248
  switch (type) {
249
249
  case idl.IDLI64Type: return "KLong";
250
250
  case idl.IDLU64Type: return "KLong";
251
+ case idl.IDLU8Type: return "KInt";
251
252
  case idl.IDLI32Type: return "KInt";
252
253
  case idl.IDLU32Type: return "KInt";
253
254
  case idl.IDLF32Type: return "KFloat";
255
+ case idl.IDLF64Type: return "KDouble";
254
256
  case idl.IDLNumberType: return 'number';
255
257
  case idl.IDLBigintType: return 'bigint';
256
258
  case idl.IDLBooleanType:
@@ -2,7 +2,7 @@ import * as idl from "../../idl";
2
2
  import { IndentedPrinter } from "../../IndentedPrinter";
3
3
  import { ArgConvertor, BaseArgConvertor } from "../ArgConvertors";
4
4
  import { RuntimeType } from "../common";
5
- import { AssignStatement, DelegationCall, FieldModifier, LanguageExpression, LanguageStatement, LanguageWriter, MakeCastOptions, Method, MethodModifier, MethodSignature, ObjectArgs } from "../LanguageWriter";
5
+ import { AssignStatement, DelegationCall, FieldModifier, LanguageExpression, LanguageStatement, LanguageWriter, MakeCastOptions, Method, MethodModifier, MethodSignature, NamespaceOptions, ObjectArgs } from "../LanguageWriter";
6
6
  import { IdlNameConvertor } from "../nameConvertor";
7
7
  import { Language } from "../../Language";
8
8
  import { ReferenceResolver } from "../../peer-generation/ReferenceResolver";
@@ -154,10 +154,7 @@ export declare class CJLanguageWriter extends LanguageWriter {
154
154
  makeEquals(args: LanguageExpression[]): LanguageExpression;
155
155
  runtimeType(param: ArgConvertor, valueType: string, value: string): void;
156
156
  escapeKeyword(word: string): string;
157
- pushNamespace(namespace: string, options: {
158
- ident: boolean;
159
- isDeclared?: boolean;
160
- }): void;
157
+ pushNamespace(namespace: string, options: NamespaceOptions): void;
161
158
  popNamespace(options: {
162
159
  ident: boolean;
163
160
  }): void;
@@ -16,7 +16,7 @@ import * as idl from "../../idl";
16
16
  import { IndentedPrinter } from "../../IndentedPrinter";
17
17
  import { CJKeywords } from "../../languageSpecificKeywords";
18
18
  import { RuntimeType } from "../common";
19
- import { AssignStatement, BlockStatement, ExpressionStatement, FieldModifier, LambdaExpression, LanguageWriter, MethodModifier, MethodSignature, ReturnStatement, StringExpression } from "../LanguageWriter";
19
+ import { AssignStatement, BlockStatement, DelegationType, ExpressionStatement, FieldModifier, LambdaExpression, LanguageWriter, MethodModifier, MethodSignature, ReturnStatement } from "../LanguageWriter";
20
20
  import { Language } from "../../Language";
21
21
  import { indentedBy, isDefined } from "../../util";
22
22
  ////////////////////////////////////////////////////////////////
@@ -40,7 +40,7 @@ export class CJCheckDefinedExpression {
40
40
  this.value = value;
41
41
  }
42
42
  asString() {
43
- return `${this.value}.isSome()`;
43
+ return `let Some(${this.value}) <- ${this.value}`;
44
44
  }
45
45
  }
46
46
  export class CJCastExpression {
@@ -328,22 +328,22 @@ export class CJLanguageWriter extends LanguageWriter {
328
328
  let i = 1;
329
329
  while (signature.isArgOptional(signature.args.length - i)) {
330
330
  let smallerSignature = signature.args.slice(0, -i);
331
- this.printer.print(`${modifiers ? modifiers.map((it) => MethodModifier[it].toLowerCase()).join(' ') + ' ' : ''}init (${smallerSignature.map((it, index) => `${this.escapeKeyword(signature.argName(index))}: ${this.getNodeName(it)}`).join(", ")}) {`);
331
+ this.printer.print(`${modifiers ? modifiers.map((it) => MethodModifier[it].toLowerCase()).join(' ') + ' ' : ''}init(${smallerSignature.map((it, index) => `${this.escapeKeyword(signature.argName(index))}: ${this.getNodeName(it)}`).join(", ")}) {`);
332
332
  this.pushIndent();
333
333
  let lessArgs = (_a = signature.args) === null || _a === void 0 ? void 0 : _a.slice(0, -i).map((_, i) => this.escapeKeyword(signature.argName(i))).join(', ');
334
334
  for (let idx = 0; idx < i; idx++) {
335
335
  lessArgs = lessArgs.concat(`${i == signature.args.length && idx == 0 ? '' : ', '}Option.None`);
336
336
  }
337
- this.print(`${className}(${lessArgs})`);
337
+ this.print(`this(${lessArgs})`);
338
338
  this.popIndent();
339
339
  this.printer.print(`}`);
340
340
  i += 1;
341
341
  }
342
- this.printer.print(`${modifiers ? modifiers.map((it) => MethodModifier[it].toLowerCase()).join(' ') + ' ' : ''}${className}(${signature.args.map((it, index) => `${this.escapeKeyword(signature.argName(index))}: ${this.getNodeName(idl.maybeOptional(it, signature.isArgOptional(index)))}`).join(", ")}) {`);
342
+ this.printer.print(`${modifiers ? modifiers.map((it) => MethodModifier[it].toLowerCase()).join(' ') + ' ' : ''}init(${signature.args.map((it, index) => `${this.escapeKeyword(signature.argName(index))}: ${this.getNodeName(idl.maybeOptional(it, signature.isArgOptional(index)))}`).join(", ")}) {`);
343
343
  this.pushIndent();
344
344
  if (delegationCall) {
345
- // TBD: check delegationType to write "this" or "super"
346
- this.print(`super(${delegationCall.delegationArgs.map(it => it.asString()).join(", ")})`);
345
+ const delegationType = ((delegationCall === null || delegationCall === void 0 ? void 0 : delegationCall.delegationType) == DelegationType.THIS) ? "this" : "super";
346
+ this.print(`${delegationType}(${delegationCall.delegationArgs.map(it => it.asString()).join(", ")})`);
347
347
  }
348
348
  op(this);
349
349
  this.popIndent();
@@ -528,7 +528,7 @@ export class CJLanguageWriter extends LanguageWriter {
528
528
  return this.makeStatement(this.makeMethodCall(keyAccessor, "add", [this.makeString(key), this.makeString(value)]));
529
529
  }
530
530
  makeNull(value) {
531
- return new StringExpression(`Option.None`);
531
+ return this.makeUndefined();
532
532
  }
533
533
  getTagType() {
534
534
  return idl.createReferenceType("Tags");
@@ -1,5 +1,5 @@
1
1
  import { IndentedPrinter } from "../../IndentedPrinter";
2
- import { LambdaExpression, LanguageExpression, LanguageStatement, LanguageWriter, MakeAssignOptions, MakeCastOptions, Method, MethodModifier, MethodSignature } from "../LanguageWriter";
2
+ import { LambdaExpression, LanguageExpression, LanguageStatement, LanguageWriter, MakeAssignOptions, MakeCastOptions, Method, MethodModifier, MethodSignature, NamespaceOptions } from "../LanguageWriter";
3
3
  import { TSLanguageWriter } from "./TsLanguageWriter";
4
4
  import { IDLEnum, IDLType } from '../../idl';
5
5
  import { ArgConvertor } from "../ArgConvertors";
@@ -45,6 +45,7 @@ export declare function makeArrayTypeCheckCall(valueAccessor: string, typeName:
45
45
  export declare class ETSLanguageWriter extends TSLanguageWriter {
46
46
  private arrayConvertor;
47
47
  constructor(printer: IndentedPrinter, resolver: ReferenceResolver, typeConvertor: IdlNameConvertor, arrayConvertor: IdlNameConvertor);
48
+ pushNamespace(namespace: string, options: NamespaceOptions): void;
48
49
  fork(options?: {
49
50
  resolver?: ReferenceResolver;
50
51
  }): LanguageWriter;
@@ -175,6 +175,12 @@ export class ETSLanguageWriter extends TSLanguageWriter {
175
175
  super(printer, resolver, typeConvertor, Language.ARKTS);
176
176
  this.arrayConvertor = arrayConvertor;
177
177
  }
178
+ pushNamespace(namespace, options) {
179
+ if (options.isDefault) {
180
+ this.print(`export default ${namespace}`);
181
+ }
182
+ super.pushNamespace(namespace, options);
183
+ }
178
184
  fork(options) {
179
185
  var _a;
180
186
  return new ETSLanguageWriter(new IndentedPrinter([], this.indentDepth()), (_a = options === null || options === void 0 ? void 0 : options.resolver) !== null && _a !== void 0 ? _a : this.resolver, this.typeConvertor, this.arrayConvertor);
@@ -1,7 +1,7 @@
1
1
  import * as idl from '../../idl';
2
2
  import { Language } from '../../Language';
3
3
  import { IndentedPrinter } from "../../IndentedPrinter";
4
- import { AssignStatement, DelegationCall, FieldModifier, LanguageExpression, LanguageStatement, LanguageWriter, MakeAssignOptions, MakeCastOptions, Method, MethodModifier, MethodSignature, ObjectArgs } from "../LanguageWriter";
4
+ import { AssignStatement, DelegationCall, FieldModifier, LanguageExpression, LanguageStatement, LanguageWriter, MakeAssignOptions, MakeCastOptions, Method, MethodModifier, MethodSignature, NamespaceOptions, ObjectArgs } from "../LanguageWriter";
5
5
  import { ArgConvertor } from "../ArgConvertors";
6
6
  import { IdlNameConvertor } from "../nameConvertor";
7
7
  import { RuntimeType } from "../common";
@@ -141,10 +141,7 @@ export declare class KotlinLanguageWriter extends LanguageWriter {
141
141
  makeNewObject(objectName: string, params?: LanguageExpression[]): LanguageExpression;
142
142
  escapeKeyword(keyword: string): string;
143
143
  makeStaticBlock(op: (writer: LanguageWriter) => void): void;
144
- pushNamespace(namespace: string, options: {
145
- ident: boolean;
146
- isDeclared?: boolean;
147
- }): void;
144
+ pushNamespace(namespace: string, options: NamespaceOptions): void;
148
145
  popNamespace(options: {
149
146
  ident: boolean;
150
147
  }): void;
@@ -1,7 +1,7 @@
1
1
  import * as idl from '../../idl';
2
2
  import { Language } from '../../Language';
3
3
  import { IndentedPrinter } from "../../IndentedPrinter";
4
- import { DelegationCall, FieldModifier, LambdaExpression, LanguageExpression, LanguageStatement, LanguageWriter, MakeAssignOptions, MakeCastOptions, Method, MethodModifier, MethodSignature, ObjectArgs, ReturnStatement } from "../LanguageWriter";
4
+ import { DelegationCall, FieldModifier, LambdaExpression, LanguageExpression, LanguageStatement, LanguageWriter, MakeAssignOptions, MakeCastOptions, Method, MethodModifier, MethodSignature, NamespaceOptions, ObjectArgs, ReturnStatement } from "../LanguageWriter";
5
5
  import { ArgConvertor } from "../ArgConvertors";
6
6
  import { IdlNameConvertor } from "../nameConvertor";
7
7
  import { RuntimeType } from "../common";
@@ -32,10 +32,7 @@ export declare class TSLanguageWriter extends LanguageWriter {
32
32
  protected typeConvertor: IdlNameConvertor;
33
33
  constructor(printer: IndentedPrinter, resolver: ReferenceResolver, typeConvertor: IdlNameConvertor, language?: Language);
34
34
  maybeSemicolon(): string;
35
- pushNamespace(namespace: string, options: {
36
- ident: boolean;
37
- isDeclared?: boolean;
38
- }): void;
35
+ pushNamespace(namespace: string, options: NamespaceOptions): void;
39
36
  fork(options?: {
40
37
  resolver?: ReferenceResolver;
41
38
  }): LanguageWriter;