@hey-api/openapi-ts 0.97.0 → 0.97.1

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/dist/index.d.mts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { n as UserConfig } from "./types-KzipN7UT.mjs";
2
- import { AnalysisContext, BindingKind, ExportModule, File, FromRef, ImportModule, Language, Logger, Node, NodeName, NodeNameSanitizer, NodeRelationship, NodeScope, Ref, RenderContext, Renderer, Symbol } from "@hey-api/codegen-core";
2
+ import { AnalysisContext, BindingKind, ExportModule, File, FromRef, ImportModule, Language, Logger, Logger as Logger$1, Node, NodeName, NodeNameSanitizer, NodeRelationship, NodeScope, Ref, RenderContext, Renderer, Symbol } from "@hey-api/codegen-core";
3
3
  import { BaseOutput, Casing, Context, DefinePlugin, DefinePlugin as DefinePlugin$1, FeatureToggle, IR, IR as IR$1, NameTransformer, NamingConfig, NamingOptions, NamingRule, OpenApi, OpenApiMetaObject, OpenApiOperationObject, OpenApiParameterObject, OpenApiRequestBodyObject, OpenApiResponseObject, OpenApiSchemaObject, OperationPath, OperationPathStrategy, OperationStrategy, OperationsStrategy, Plugin, Plugin as Plugin$1, RequestSchemaContext, ResolvedRequestValidatorLayer, SchemaVisitorContext, SchemaWithType, Walker, defaultPaginationKeywords, definePluginConfig, utils } from "@hey-api/shared";
4
4
  import ts from "typescript";
5
5
  import { AnyString, LazyOrAsync, MaybeArray, MaybeFunc } from "@hey-api/types";
@@ -629,7 +629,7 @@ declare class DocTsDsl extends TsDsl<ts.Node> {
629
629
  analyze(ctx: AnalysisContext): void;
630
630
  add(lines: DocLines): this;
631
631
  apply<T extends ts.Node>(node: T): T;
632
- toAst(): any;
632
+ toAst(): ts.Identifier;
633
633
  }
634
634
  //#endregion
635
635
  //#region src/ts-dsl/mixins/doc.d.ts
@@ -1156,7 +1156,7 @@ declare abstract class TsDsl<T extends ts.Node = ts.Node> implements Node<T> {
1156
1156
  structuralParents?: Map<TsDsl, NodeRelationship>;
1157
1157
  symbol?: Symbol;
1158
1158
  toAst(): T;
1159
- readonly '~brand': any;
1159
+ readonly '~brand' = "heyapi.node";
1160
1160
  /** Branding property to identify the DSL class at runtime. */
1161
1161
  abstract readonly '~dsl': AnyString;
1162
1162
  /** Conditionally applies a callback to this builder. */
@@ -1225,7 +1225,27 @@ declare class HintTsDsl extends TsDsl<ts.Node> {
1225
1225
  analyze(ctx: AnalysisContext): void;
1226
1226
  add(lines: HintLines): this;
1227
1227
  apply<T extends ts.Node>(node: T): T;
1228
- toAst(): any;
1228
+ toAst(): ts.Identifier;
1229
+ }
1230
+ //#endregion
1231
+ //#region src/ts-dsl/stmt/if.d.ts
1232
+ type IfCondition = NodeName | MaybeTsDsl<ts.Expression>;
1233
+ declare const Mixed$37: MixinCtor<abstract new () => TsDsl<ts.IfStatement>, DoMethods>;
1234
+ declare class IfTsDsl extends Mixed$37 {
1235
+ readonly '~dsl' = "IfTsDsl";
1236
+ protected _condition?: IfCondition;
1237
+ protected _else?: Array<DoExpr>;
1238
+ constructor(condition?: IfCondition);
1239
+ analyze(ctx: AnalysisContext): void;
1240
+ /** Returns true when all required builder calls are present. */
1241
+ get isValid(): boolean;
1242
+ condition(condition: IfCondition): this;
1243
+ otherwise(...items: Array<DoExpr>): this;
1244
+ toAst(): ts.IfStatement;
1245
+ $validate(): asserts this is this & {
1246
+ _condition: IfCondition;
1247
+ };
1248
+ private missingRequiredCalls;
1229
1249
  }
1230
1250
  //#endregion
1231
1251
  //#region src/ts-dsl/utils/lazy.d.ts
@@ -1310,8 +1330,8 @@ declare function createLiteral(value: TsLiteralValue, leadingComments?: Readonly
1310
1330
  //#region src/ts-dsl/expr/prefix.d.ts
1311
1331
  type PrefixExpr = string | MaybeTsDsl<ts.Expression>;
1312
1332
  type PrefixOp = ts.PrefixUnaryOperator;
1313
- declare const Mixed$37: abstract new () => TsDsl<ts.PrefixUnaryExpression>;
1314
- declare class PrefixTsDsl extends Mixed$37 {
1333
+ declare const Mixed$36: abstract new () => TsDsl<ts.PrefixUnaryExpression>;
1334
+ declare class PrefixTsDsl extends Mixed$36 {
1315
1335
  readonly '~dsl' = "PrefixTsDsl";
1316
1336
  protected _expr?: PrefixExpr;
1317
1337
  protected _op?: PrefixOp;
@@ -1346,13 +1366,25 @@ declare class NoteTsDsl extends TsDsl<ts.Node> {
1346
1366
  analyze(ctx: AnalysisContext): void;
1347
1367
  add(lines: NoteLines): this;
1348
1368
  apply<T extends ts.Node>(node: T): T;
1349
- toAst(): any;
1369
+ toAst(): ts.Identifier;
1370
+ }
1371
+ //#endregion
1372
+ //#region src/ts-dsl/expr/template.d.ts
1373
+ type TemplatePart = NodeName | MaybeTsDsl<ts.Expression>;
1374
+ declare const Mixed$35: abstract new () => TsDsl<ts.TemplateExpression | ts.NoSubstitutionTemplateLiteral>;
1375
+ declare class TemplateTsDsl extends Mixed$35 {
1376
+ readonly '~dsl' = "TemplateTsDsl";
1377
+ protected parts: Array<Ref<TemplatePart>>;
1378
+ constructor(value?: TemplatePart);
1379
+ analyze(ctx: AnalysisContext): void;
1380
+ add(value: TemplatePart): this;
1381
+ toAst(): ts.TemplateExpression | ts.NoSubstitutionTemplateLiteral;
1350
1382
  }
1351
1383
  //#endregion
1352
1384
  //#region src/ts-dsl/decl/field.d.ts
1353
1385
  type FieldType = NodeName | TypeTsDsl;
1354
- declare const Mixed$36: MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.PropertyDeclaration>, ValueMethods>, StaticMethods>, ReadonlyMethods>, PublicMethods>, ProtectedMethods>, PrivateMethods>, OptionalMethods>, DocMethods>, DecoratorMethods>;
1355
- declare class FieldTsDsl extends Mixed$36 {
1386
+ declare const Mixed$34: MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.PropertyDeclaration>, ValueMethods>, StaticMethods>, ReadonlyMethods>, PublicMethods>, ProtectedMethods>, PrivateMethods>, OptionalMethods>, DocMethods>, DecoratorMethods>;
1387
+ declare class FieldTsDsl extends Mixed$34 {
1356
1388
  readonly '~dsl' = "FieldTsDsl";
1357
1389
  readonly nameSanitizer: (name: string) => string;
1358
1390
  protected _type?: TypeTsDsl;
@@ -1364,8 +1396,8 @@ declare class FieldTsDsl extends Mixed$36 {
1364
1396
  }
1365
1397
  //#endregion
1366
1398
  //#region src/ts-dsl/decl/init.d.ts
1367
- declare const Mixed$35: MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.ConstructorDeclaration>, PublicMethods>, ProtectedMethods>, PrivateMethods>, ParamMethods>, DocMethods>, DoMethods>, DecoratorMethods>;
1368
- declare class InitTsDsl extends Mixed$35 {
1399
+ declare const Mixed$33: MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.ConstructorDeclaration>, PublicMethods>, ProtectedMethods>, PrivateMethods>, ParamMethods>, DocMethods>, DoMethods>, DecoratorMethods>;
1400
+ declare class InitTsDsl extends Mixed$33 {
1369
1401
  readonly '~dsl' = "InitTsDsl";
1370
1402
  constructor(fn?: (i: InitTsDsl) => void);
1371
1403
  analyze(ctx: AnalysisContext): void;
@@ -1374,8 +1406,8 @@ declare class InitTsDsl extends Mixed$35 {
1374
1406
  //#endregion
1375
1407
  //#region src/ts-dsl/decl/class.d.ts
1376
1408
  type Body = Array<MaybeTsDsl<ts.ClassElement | ts.Node>>;
1377
- declare const Mixed$34: MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.ClassDeclaration>, TypeParamsMethods>, ExportMethods>, DocMethods>, DefaultMethods>, DecoratorMethods>, AbstractMethods>;
1378
- declare class ClassTsDsl extends Mixed$34 {
1409
+ declare const Mixed$32: MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.ClassDeclaration>, TypeParamsMethods>, ExportMethods>, DocMethods>, DefaultMethods>, DecoratorMethods>, AbstractMethods>;
1410
+ declare class ClassTsDsl extends Mixed$32 {
1379
1411
  readonly '~dsl' = "ClassTsDsl";
1380
1412
  readonly nameSanitizer: (name: string) => string;
1381
1413
  protected baseClass?: Ref<NodeName>;
@@ -1402,8 +1434,8 @@ declare class ClassTsDsl extends Mixed$34 {
1402
1434
  }
1403
1435
  //#endregion
1404
1436
  //#region src/ts-dsl/decl/decorator.d.ts
1405
- declare const Mixed$33: MixinCtor<abstract new () => TsDsl<ts.Decorator>, ArgsMethods>;
1406
- declare class DecoratorTsDsl extends Mixed$33 {
1437
+ declare const Mixed$31: MixinCtor<abstract new () => TsDsl<ts.Decorator>, ArgsMethods>;
1438
+ declare class DecoratorTsDsl extends Mixed$31 {
1407
1439
  readonly '~dsl' = "DecoratorTsDsl";
1408
1440
  readonly nameSanitizer: (name: string) => string;
1409
1441
  constructor(name: NodeName, ...args: ReadonlyArray<string | MaybeTsDsl<ts.Expression>>);
@@ -1414,8 +1446,8 @@ declare class DecoratorTsDsl extends Mixed$33 {
1414
1446
  //#region src/ts-dsl/decl/member.d.ts
1415
1447
  type Value$2 = string | number | MaybeTsDsl<ts.Expression>;
1416
1448
  type ValueFn$1 = Value$2 | ((m: EnumMemberTsDsl) => void);
1417
- declare const Mixed$32: MixinCtor<abstract new () => TsDsl<ts.EnumMember>, DocMethods>;
1418
- declare class EnumMemberTsDsl extends Mixed$32 {
1449
+ declare const Mixed$30: MixinCtor<abstract new () => TsDsl<ts.EnumMember>, DocMethods>;
1450
+ declare class EnumMemberTsDsl extends Mixed$30 {
1419
1451
  readonly '~dsl' = "EnumMemberTsDsl";
1420
1452
  private _value?;
1421
1453
  constructor(name: NodeName, value?: ValueFn$1);
@@ -1428,8 +1460,8 @@ declare class EnumMemberTsDsl extends Mixed$32 {
1428
1460
  //#region src/ts-dsl/decl/enum.d.ts
1429
1461
  type Value$1 = string | number | MaybeTsDsl<ts.Expression>;
1430
1462
  type ValueFn = Value$1 | ((m: EnumMemberTsDsl) => void);
1431
- declare const Mixed$31: MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.EnumDeclaration>, ExportMethods>, DocMethods>, ConstMethods>;
1432
- declare class EnumTsDsl extends Mixed$31 {
1463
+ declare const Mixed$29: MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.EnumDeclaration>, ExportMethods>, DocMethods>, ConstMethods>;
1464
+ declare class EnumTsDsl extends Mixed$29 {
1433
1465
  readonly '~dsl' = "EnumTsDsl";
1434
1466
  readonly nameSanitizer: (name: string) => string;
1435
1467
  private _members;
@@ -1444,8 +1476,8 @@ declare class EnumTsDsl extends Mixed$31 {
1444
1476
  //#endregion
1445
1477
  //#region src/ts-dsl/decl/func.d.ts
1446
1478
  type FuncMode = 'arrow' | 'decl' | 'expr';
1447
- declare const Mixed$30: MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.ArrowFunction>, TypeReturnsMethods>, TypeParamsMethods>, StaticMethods>, PublicMethods>, ProtectedMethods>, PrivateMethods>, ParamMethods>, ExportMethods>, DocMethods>, DoMethods>, DecoratorMethods>, AsyncMethods>, AsMethods>, AbstractMethods>;
1448
- declare class ImplFuncTsDsl<M extends FuncMode = 'arrow'> extends Mixed$30 {
1479
+ declare const Mixed$28: MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.ArrowFunction>, TypeReturnsMethods>, TypeParamsMethods>, StaticMethods>, PublicMethods>, ProtectedMethods>, PrivateMethods>, ParamMethods>, ExportMethods>, DocMethods>, DoMethods>, DecoratorMethods>, AsyncMethods>, AsMethods>, AbstractMethods>;
1480
+ declare class ImplFuncTsDsl<M extends FuncMode = 'arrow'> extends Mixed$28 {
1449
1481
  readonly '~dsl' = "FuncTsDsl";
1450
1482
  readonly nameSanitizer: (name: string) => string;
1451
1483
  protected mode?: FuncMode;
@@ -1475,8 +1507,8 @@ declare const FuncTsDsl: {
1475
1507
  type FuncTsDsl<M extends FuncMode = 'arrow'> = ImplFuncTsDsl<M>;
1476
1508
  //#endregion
1477
1509
  //#region src/ts-dsl/decl/getter.d.ts
1478
- declare const Mixed$29: MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.GetAccessorDeclaration>, TypeReturnsMethods>, StaticMethods>, PublicMethods>, ProtectedMethods>, PrivateMethods>, ParamMethods>, DocMethods>, DoMethods>, DecoratorMethods>, AsyncMethods>, AbstractMethods>;
1479
- declare class GetterTsDsl extends Mixed$29 {
1510
+ declare const Mixed$27: MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.GetAccessorDeclaration>, TypeReturnsMethods>, StaticMethods>, PublicMethods>, ProtectedMethods>, PrivateMethods>, ParamMethods>, DocMethods>, DoMethods>, DecoratorMethods>, AsyncMethods>, AbstractMethods>;
1511
+ declare class GetterTsDsl extends Mixed$27 {
1480
1512
  readonly '~dsl' = "GetterTsDsl";
1481
1513
  readonly nameSanitizer: (name: string) => string;
1482
1514
  constructor(name: NodeName, fn?: (g: GetterTsDsl) => void);
@@ -1485,11 +1517,11 @@ declare class GetterTsDsl extends Mixed$29 {
1485
1517
  }
1486
1518
  //#endregion
1487
1519
  //#region src/ts-dsl/decl/pattern.d.ts
1488
- declare const Mixed$28: abstract new () => TsDsl<ts.BindingName>;
1520
+ declare const Mixed$26: abstract new () => TsDsl<ts.BindingName>;
1489
1521
  /**
1490
1522
  * Builds binding patterns (e.g., `{ foo, bar }`, `[a, b, ...rest]`).
1491
1523
  */
1492
- declare class PatternTsDsl extends Mixed$28 {
1524
+ declare class PatternTsDsl extends Mixed$26 {
1493
1525
  readonly '~dsl' = "PatternTsDsl";
1494
1526
  protected pattern?: {
1495
1527
  kind: 'array';
@@ -1523,8 +1555,8 @@ declare class PatternTsDsl extends Mixed$28 {
1523
1555
  }
1524
1556
  //#endregion
1525
1557
  //#region src/ts-dsl/decl/setter.d.ts
1526
- declare const Mixed$27: MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.SetAccessorDeclaration>, StaticMethods>, PublicMethods>, ProtectedMethods>, PrivateMethods>, ParamMethods>, DocMethods>, DoMethods>, DecoratorMethods>, AsyncMethods>, AbstractMethods>;
1527
- declare class SetterTsDsl extends Mixed$27 {
1558
+ declare const Mixed$25: MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.SetAccessorDeclaration>, StaticMethods>, PublicMethods>, ProtectedMethods>, PrivateMethods>, ParamMethods>, DocMethods>, DoMethods>, DecoratorMethods>, AsyncMethods>, AbstractMethods>;
1559
+ declare class SetterTsDsl extends Mixed$25 {
1528
1560
  readonly '~dsl' = "SetterTsDsl";
1529
1561
  readonly nameSanitizer: (name: string) => string;
1530
1562
  constructor(name: NodeName, fn?: (s: SetterTsDsl) => void);
@@ -1546,8 +1578,8 @@ interface LayoutMethods extends Node {
1546
1578
  //#endregion
1547
1579
  //#region src/ts-dsl/expr/array.d.ts
1548
1580
  type ArrayExpr = string | number | boolean | MaybeTsDsl<ts.Expression>;
1549
- declare const Mixed$26: MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.ArrayLiteralExpression>, SpreadMethods>, LayoutMethods>, ExprMethods>, AsMethods>;
1550
- declare class ArrayTsDsl extends Mixed$26 {
1581
+ declare const Mixed$24: MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.ArrayLiteralExpression>, SpreadMethods>, LayoutMethods>, ExprMethods>, AsMethods>;
1582
+ declare class ArrayTsDsl extends Mixed$24 {
1551
1583
  readonly '~dsl' = "ArrayTsDsl";
1552
1584
  protected _elements: Array<MaybeTsDsl<ts.Expression>>;
1553
1585
  constructor(...exprs: Array<ArrayExpr>);
@@ -1561,18 +1593,18 @@ declare class ArrayTsDsl extends Mixed$26 {
1561
1593
  //#endregion
1562
1594
  //#region src/ts-dsl/expr/expr.d.ts
1563
1595
  type Id = NodeName | MaybeTsDsl<ts.Expression>;
1564
- declare const Mixed$25: MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.Expression>, TypeExprMethods>, SpreadMethods>, OperatorMethods>, ExprMethods>, AsMethods>;
1565
- declare class ExprTsDsl extends Mixed$25 {
1596
+ declare const Mixed$23: MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.Expression>, TypeExprMethods>, SpreadMethods>, OperatorMethods>, ExprMethods>, AsMethods>;
1597
+ declare class ExprTsDsl extends Mixed$23 {
1566
1598
  readonly '~dsl' = "ExprTsDsl";
1567
1599
  protected _exprInput: Ref<Id>;
1568
1600
  constructor(id: Id);
1569
1601
  analyze(ctx: AnalysisContext): void;
1570
- toAst(): any;
1602
+ toAst(): ts.Expression;
1571
1603
  }
1572
1604
  //#endregion
1573
1605
  //#region src/ts-dsl/expr/id.d.ts
1574
- declare const Mixed$24: abstract new () => TsDsl<ts.Identifier>;
1575
- declare class IdTsDsl extends Mixed$24 {
1606
+ declare const Mixed$22: abstract new () => TsDsl<ts.Identifier>;
1607
+ declare class IdTsDsl extends Mixed$22 {
1576
1608
  readonly '~dsl' = "IdTsDsl";
1577
1609
  constructor(name: string);
1578
1610
  analyze(ctx: AnalysisContext): void;
@@ -1629,13 +1661,13 @@ declare const ts$1: {
1629
1661
  };
1630
1662
  //#endregion
1631
1663
  //#region src/ts-dsl/expr/literal.d.ts
1632
- declare const Mixed$23: MixinCtor<abstract new () => TsDsl<ts.BigIntLiteral | ts.BooleanLiteral | ts.NullLiteral | ts.NumericLiteral | ts.PrefixUnaryExpression | ts.StringLiteral>, AsMethods>;
1633
- declare class LiteralTsDsl extends Mixed$23 {
1664
+ declare const Mixed$21: MixinCtor<abstract new () => TsDsl<ts.BigIntLiteral | ts.BooleanLiteral | ts.NullLiteral | ts.NumericLiteral | ts.PrefixUnaryExpression | ts.StringLiteral>, AsMethods>;
1665
+ declare class LiteralTsDsl extends Mixed$21 {
1634
1666
  readonly '~dsl' = "LiteralTsDsl";
1635
1667
  protected value: ts$1.LiteralValue;
1636
1668
  constructor(value: ts$1.LiteralValue);
1637
1669
  analyze(ctx: AnalysisContext): void;
1638
- toAst(): any;
1670
+ toAst(): ts.BigIntLiteral | ts.TrueLiteral | ts.FalseLiteral | ts.NullLiteral | ts.NumericLiteral | ts.PrefixUnaryExpression | ts.StringLiteral;
1639
1671
  }
1640
1672
  //#endregion
1641
1673
  //#region src/ts-dsl/mixins/hint.d.ts
@@ -1666,8 +1698,8 @@ type Meta = {
1666
1698
  kind: 'spread';
1667
1699
  name?: undefined;
1668
1700
  };
1669
- declare const Mixed$22: MixinCtor<abstract new () => TsDsl<ts.ObjectLiteralElementLike>, DocMethods>;
1670
- declare class ObjectPropTsDsl extends Mixed$22 {
1701
+ declare const Mixed$20: MixinCtor<abstract new () => TsDsl<ts.ObjectLiteralElementLike>, DocMethods>;
1702
+ declare class ObjectPropTsDsl extends Mixed$20 {
1671
1703
  readonly '~dsl' = "ObjectPropTsDsl";
1672
1704
  protected _value?: Ref<ObjectPropValue>;
1673
1705
  protected _meta: Meta;
@@ -1677,7 +1709,7 @@ declare class ObjectPropTsDsl extends Mixed$22 {
1677
1709
  get kind(): ObjectPropKind;
1678
1710
  get propName(): string | undefined;
1679
1711
  value(value: ObjectPropValue): this;
1680
- toAst(): any;
1712
+ toAst(): ts.MethodDeclaration | ts.GetAccessorDeclaration | ts.SetAccessorDeclaration | ts.PropertyAssignment | ts.ShorthandPropertyAssignment | ts.SpreadAssignment;
1681
1713
  $validate(): asserts this is this & {
1682
1714
  _value: ObjectPropValue;
1683
1715
  kind: ObjectPropKind;
@@ -1688,8 +1720,8 @@ declare class ObjectPropTsDsl extends Mixed$22 {
1688
1720
  //#region src/ts-dsl/expr/object.d.ts
1689
1721
  type Expr = NodeName | MaybeTsDsl<ts.Expression>;
1690
1722
  type Stmt = NodeName | MaybeTsDsl<ts.Statement>;
1691
- declare const Mixed$21: MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.ObjectLiteralExpression>, LayoutMethods>, HintMethods>, ExprMethods>, AsMethods>;
1692
- declare class ObjectTsDsl extends Mixed$21 {
1723
+ declare const Mixed$19: MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.ObjectLiteralExpression>, LayoutMethods>, HintMethods>, ExprMethods>, AsMethods>;
1724
+ declare class ObjectTsDsl extends Mixed$19 {
1693
1725
  readonly '~dsl' = "ObjectTsDsl";
1694
1726
  protected _props: Map<string, ObjectPropTsDsl>;
1695
1727
  protected _spreadCounter: number;
@@ -1721,8 +1753,8 @@ declare class ObjectTsDsl extends Mixed$21 {
1721
1753
  //#region src/ts-dsl/expr/regexp.d.ts
1722
1754
  type RegexFlag = 'g' | 'i' | 'm' | 's' | 'u' | 'y';
1723
1755
  type RegexFlags<Avail extends string = RegexFlag> = '' | { [K in Avail]: `${K}${RegexFlags<Exclude<Avail, K>>}` }[Avail];
1724
- declare const Mixed$20: abstract new () => TsDsl<ts.RegularExpressionLiteral>;
1725
- declare class RegExpTsDsl extends Mixed$20 {
1756
+ declare const Mixed$18: abstract new () => TsDsl<ts.RegularExpressionLiteral>;
1757
+ declare class RegExpTsDsl extends Mixed$18 {
1726
1758
  readonly '~dsl' = "RegExpTsDsl";
1727
1759
  protected pattern: string;
1728
1760
  protected flags?: RegexFlags;
@@ -1731,21 +1763,9 @@ declare class RegExpTsDsl extends Mixed$20 {
1731
1763
  toAst(): ts.RegularExpressionLiteral;
1732
1764
  }
1733
1765
  //#endregion
1734
- //#region src/ts-dsl/expr/template.d.ts
1735
- type TemplatePart = NodeName | MaybeTsDsl<ts.Expression>;
1736
- declare const Mixed$19: abstract new () => TsDsl<ts.TemplateExpression | ts.NoSubstitutionTemplateLiteral>;
1737
- declare class TemplateTsDsl extends Mixed$19 {
1738
- readonly '~dsl' = "TemplateTsDsl";
1739
- protected parts: Array<Ref<TemplatePart>>;
1740
- constructor(value?: TemplatePart);
1741
- analyze(ctx: AnalysisContext): void;
1742
- add(value: TemplatePart): this;
1743
- toAst(): ts.TemplateExpression | ts.NoSubstitutionTemplateLiteral;
1744
- }
1745
- //#endregion
1746
1766
  //#region src/ts-dsl/expr/ternary.d.ts
1747
- declare const Mixed$18: abstract new () => TsDsl<ts.ConditionalExpression>;
1748
- declare class TernaryTsDsl extends Mixed$18 {
1767
+ declare const Mixed$17: abstract new () => TsDsl<ts.ConditionalExpression>;
1768
+ declare class TernaryTsDsl extends Mixed$17 {
1749
1769
  readonly '~dsl' = "TernaryTsDsl";
1750
1770
  protected _condition?: string | MaybeTsDsl<ts.Expression>;
1751
1771
  protected _then?: string | MaybeTsDsl<ts.Expression>;
@@ -1770,12 +1790,12 @@ declare class TernaryTsDsl extends Mixed$18 {
1770
1790
  declare class NewlineTsDsl extends TsDsl<ts.Identifier> {
1771
1791
  readonly '~dsl' = "NewlineTsDsl";
1772
1792
  analyze(ctx: AnalysisContext): void;
1773
- toAst(): any;
1793
+ toAst(): ts.Identifier;
1774
1794
  }
1775
1795
  //#endregion
1776
1796
  //#region src/ts-dsl/stmt/block.d.ts
1777
- declare const Mixed$17: MixinCtor<MixinCtor<abstract new () => TsDsl<ts.Block>, LayoutMethods>, DoMethods>;
1778
- declare class BlockTsDsl extends Mixed$17 {
1797
+ declare const Mixed$16: MixinCtor<MixinCtor<abstract new () => TsDsl<ts.Block>, LayoutMethods>, DoMethods>;
1798
+ declare class BlockTsDsl extends Mixed$16 {
1779
1799
  readonly '~dsl' = "BlockTsDsl";
1780
1800
  constructor(...items: Array<DoExpr>);
1781
1801
  analyze(ctx: AnalysisContext): void;
@@ -1783,8 +1803,8 @@ declare class BlockTsDsl extends Mixed$17 {
1783
1803
  }
1784
1804
  //#endregion
1785
1805
  //#region src/ts-dsl/stmt/var.d.ts
1786
- declare const Mixed$16: MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.VariableStatement>, ValueMethods>, PatternMethods>, HintMethods>, ExportMethods>, DocMethods>, DefaultMethods>;
1787
- declare class VarTsDsl extends Mixed$16 {
1806
+ declare const Mixed$15: MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.VariableStatement>, ValueMethods>, PatternMethods>, HintMethods>, ExportMethods>, DocMethods>, DefaultMethods>;
1807
+ declare class VarTsDsl extends Mixed$15 {
1788
1808
  readonly '~dsl' = "VarTsDsl";
1789
1809
  readonly nameSanitizer: (name: string) => string;
1790
1810
  protected kind: ts.NodeFlags;
@@ -1807,8 +1827,8 @@ declare class VarTsDsl extends Mixed$16 {
1807
1827
  type ForMode = 'for' | 'in' | 'of';
1808
1828
  type ForCondition = MaybeTsDsl<ts.Expression>;
1809
1829
  type ForIterable = MaybeTsDsl<ts.Expression>;
1810
- declare const Mixed$15: MixinCtor<MixinCtor<abstract new () => TsDsl<ts.ForStatement>, LayoutMethods>, DoMethods>;
1811
- declare class ImplForTsDsl<M extends ForMode = 'for'> extends Mixed$15 {
1830
+ declare const Mixed$14: MixinCtor<MixinCtor<abstract new () => TsDsl<ts.ForStatement>, LayoutMethods>, DoMethods>;
1831
+ declare class ImplForTsDsl<M extends ForMode = 'for'> extends Mixed$14 {
1812
1832
  readonly '~dsl' = "ForTsDsl";
1813
1833
  protected _await?: boolean;
1814
1834
  protected _condition?: ForCondition;
@@ -1849,26 +1869,6 @@ declare const ForTsDsl: {
1849
1869
  } & typeof ImplForTsDsl;
1850
1870
  type ForTsDsl<M extends ForMode = 'for'> = ImplForTsDsl<M>;
1851
1871
  //#endregion
1852
- //#region src/ts-dsl/stmt/if.d.ts
1853
- type IfCondition = NodeName | MaybeTsDsl<ts.Expression>;
1854
- declare const Mixed$14: MixinCtor<abstract new () => TsDsl<ts.IfStatement>, DoMethods>;
1855
- declare class IfTsDsl extends Mixed$14 {
1856
- readonly '~dsl' = "IfTsDsl";
1857
- protected _condition?: IfCondition;
1858
- protected _else?: Array<DoExpr>;
1859
- constructor(condition?: IfCondition);
1860
- analyze(ctx: AnalysisContext): void;
1861
- /** Returns true when all required builder calls are present. */
1862
- get isValid(): boolean;
1863
- condition(condition: IfCondition): this;
1864
- otherwise(...items: Array<DoExpr>): this;
1865
- toAst(): ts.IfStatement;
1866
- $validate(): asserts this is this & {
1867
- _condition: IfCondition;
1868
- };
1869
- private missingRequiredCalls;
1870
- }
1871
- //#endregion
1872
1872
  //#region src/ts-dsl/stmt/stmt.d.ts
1873
1873
  declare const Mixed$13: abstract new () => TsDsl<ts.Statement>;
1874
1874
  declare class StmtTsDsl extends Mixed$13 {
@@ -2267,21 +2267,21 @@ declare const reserved: {
2267
2267
  };
2268
2268
  //#endregion
2269
2269
  //#region src/ts-dsl/index.d.ts
2270
- declare const $: ((id: any) => ExprTsDsl) & {
2270
+ declare const $: ((id: ts.Expression | TsDsl<ts.Expression> | NodeName) => ExprTsDsl) & {
2271
2271
  /** Creates an array literal expression (e.g., `[1, 2, 3]`). */array: (...args: ConstructorParameters<typeof ArrayTsDsl>) => ArrayTsDsl; /** Creates an `as` type assertion expression (e.g., `value as Type`). */
2272
- as: (expr: any, type: any) => AsTsDsl; /** Creates a property access expression (e.g., `obj.foo`). */
2273
- attr: (left: any, right: NodeName) => AttrTsDsl; /** Creates an await expression (e.g., `await promise`). */
2274
- await: (expr: any) => AwaitTsDsl; /** Creates a binary expression (e.g., `a + b`). */
2275
- binary: (base: any, op?: (("!=" | "!==" | "&&" | "*" | "+" | "-" | "/" | "<" | "<=" | "=" | "==" | "===" | ">" | ">=" | "??" | "??=" | "||") | ts.BinaryOperator) | undefined, expr?: any) => BinaryTsDsl; /** Creates a statement block (`{ ... }`). */
2272
+ as: (expr: AsExpr, type: AsType) => AsTsDsl; /** Creates a property access expression (e.g., `obj.foo`). */
2273
+ attr: (left: AttrLeft, right: NodeName) => AttrTsDsl; /** Creates an await expression (e.g., `await promise`). */
2274
+ await: (expr: AwaitExpr) => AwaitTsDsl; /** Creates a binary expression (e.g., `a + b`). */
2275
+ binary: (base: ts.Expression | TsDsl<ts.Expression> | NodeName, op?: (("!=" | "!==" | "&&" | "*" | "+" | "-" | "/" | "<" | "<=" | "=" | "==" | "===" | ">" | ">=" | "??" | "??=" | "||") | ts.BinaryOperator) | undefined, expr?: (ts.Expression | TsDsl<ts.Expression> | NodeName) | undefined) => BinaryTsDsl; /** Creates a statement block (`{ ... }`). */
2276
2276
  block: (...args: ConstructorParameters<typeof BlockTsDsl>) => BlockTsDsl; /** Creates a function or method call expression (e.g., `fn(arg)`). */
2277
- call: (callee: any, ...args: any[]) => CallTsDsl; /** Creates a class declaration or expression. */
2277
+ call: (callee: CallCallee, ...args: (CallCallee | undefined)[]) => CallTsDsl; /** Creates a class declaration or expression. */
2278
2278
  class: (name: NodeName) => ClassTsDsl; /** Creates a constant variable declaration (`const`). */
2279
- const: (name?: any) => VarTsDsl; /** Creates a postfix decrement expression (`i--`). */
2279
+ const: (name?: NodeName | undefined) => VarTsDsl; /** Creates a postfix decrement expression (`i--`). */
2280
2280
  dec: (expr?: PostfixExpr | undefined, op?: ts.PostfixUnaryOperator | undefined) => PostfixTsDsl; /** Creates a decorator expression (e.g., `@decorator`). */
2281
2281
  decorator: (name: NodeName, ...args: (string | ts.Expression | TsDsl<ts.Expression>)[]) => DecoratorTsDsl; /** Creates a JSDoc documentation block. */
2282
2282
  doc: (lines?: DocLines | undefined, fn?: DocFn | undefined) => DocTsDsl; /** Creates an enum declaration. */
2283
2283
  enum: (name: NodeName, fn?: ((e: EnumTsDsl) => void) | undefined) => EnumTsDsl; /** Creates a general expression node. */
2284
- expr: (id: any) => ExprTsDsl; /** Creates a field declaration in a class or object. */
2284
+ expr: (id: ts.Expression | TsDsl<ts.Expression> | NodeName) => ExprTsDsl; /** Creates a field declaration in a class or object. */
2285
2285
  field: (name: NodeName, fn?: ((f: FieldTsDsl) => void) | undefined) => FieldTsDsl; /** Creates a for loop (for, for...of, for...in, or for await...of). */
2286
2286
  for: {
2287
2287
  (variableOrInit?: VarTsDsl): ForTsDsl<ForMode>;
@@ -2301,21 +2301,21 @@ declare const $: ((id: any) => ExprTsDsl) & {
2301
2301
  getter: (name: NodeName, fn?: ((g: GetterTsDsl) => void) | undefined) => GetterTsDsl; /** Creates a single-line comment (//). */
2302
2302
  hint: (lines?: HintLines | undefined, fn?: HintFn | undefined) => HintTsDsl; /** Creates an identifier (e.g., `foo`). */
2303
2303
  id: (name: string) => IdTsDsl; /** Creates an if statement. */
2304
- if: (condition?: any) => IfTsDsl; /** Creates a postfix increment expression (`i++`). */
2304
+ if: (condition?: IfCondition | undefined) => IfTsDsl; /** Creates a postfix increment expression (`i++`). */
2305
2305
  inc: (expr?: PostfixExpr | undefined, op?: ts.PostfixUnaryOperator | undefined) => PostfixTsDsl; /** Creates an initialization block or statement. */
2306
2306
  init: (fn?: ((i: InitTsDsl) => void) | undefined) => InitTsDsl; /** Creates a lazy, context-aware node with deferred evaluation. */
2307
2307
  lazy: <T extends ts.Node>(thunk: LazyThunk<T>) => LazyTsDsl<T>; /** Creates a let variable declaration (`let`). */
2308
- let: (name?: any) => VarTsDsl; /** Creates a literal value (e.g., string, number, boolean). */
2308
+ let: (name?: NodeName | undefined) => VarTsDsl; /** Creates a literal value (e.g., string, number, boolean). */
2309
2309
  literal: (value: TsLiteralValue) => LiteralTsDsl; /** Creates an enum member declaration. */
2310
2310
  member: (name: NodeName, value?: ((string | number | ts.Expression | TsDsl<ts.Expression>) | ((m: EnumMemberTsDsl) => void)) | undefined) => EnumMemberTsDsl; /** Creates a method declaration inside a class or object. */
2311
2311
  method: (name: NodeName, fn?: ((m: MethodTsDsl) => void) | undefined) => MethodTsDsl; /** Creates a negation expression (`-x`). */
2312
2312
  neg: (expr?: PrefixExpr | undefined, op?: ts.PrefixUnaryOperator | undefined) => PrefixTsDsl; /** Creates a new expression (e.g., `new ClassName()`). */
2313
- new: (expr: any, ...args: any[]) => NewTsDsl; /** Creates a newline (for formatting purposes). */
2313
+ new: (expr: NewExpr, ...args: (NewExpr | undefined)[]) => NewTsDsl; /** Creates a newline (for formatting purposes). */
2314
2314
  newline: () => NewlineTsDsl; /** Creates a logical NOT expression (`!x`). */
2315
2315
  not: (expr?: PrefixExpr | undefined, op?: ts.PrefixUnaryOperator | undefined) => PrefixTsDsl; /** Creates a block comment (/* ... *\/). */
2316
2316
  note: (lines?: NoteLines | undefined, fn?: NoteFn | undefined) => NoteTsDsl; /** Creates an object literal expression. */
2317
2317
  object: (...args: ConstructorParameters<typeof ObjectTsDsl>) => ObjectTsDsl; /** Creates a parameter declaration for functions or methods. */
2318
- param: (name: any, fn?: ParamFn | undefined) => ParamTsDsl; /** Creates a pattern for destructuring or matching. */
2318
+ param: (name: ParamName, fn?: ParamFn | undefined) => ParamTsDsl; /** Creates a pattern for destructuring or matching. */
2319
2319
  pattern: () => PatternTsDsl; /** Creates a prefix unary expression (e.g., `-x`, `!x`, `~x`). */
2320
2320
  prefix: (expr?: PrefixExpr | undefined, op?: ts.PrefixUnaryOperator | undefined) => PrefixTsDsl; /** Creates an object literal property (e.g., `{ foo: bar }`). */
2321
2321
  prop: (meta: {
@@ -2338,11 +2338,11 @@ declare const $: ((id: any) => ExprTsDsl) & {
2338
2338
  name?: undefined;
2339
2339
  }) => ObjectPropTsDsl; /** Creates a regular expression literal (e.g., `/foo/gi`). */
2340
2340
  regexp: (pattern: string, flags?: ("" | "g" | "i" | "m" | "s" | "u" | "y" | "uy" | "yu" | "su" | "sy" | "suy" | "syu" | "ys" | "us" | "usy" | "uys" | "ysu" | "yus" | "ms" | "mu" | "my" | "muy" | "myu" | "msu" | "msy" | "msuy" | "msyu" | "mys" | "mus" | "musy" | "muys" | "mysu" | "myus" | "ym" | "um" | "umy" | "uym" | "ymu" | "yum" | "sm" | "smu" | "smy" | "smuy" | "smyu" | "sym" | "sum" | "sumy" | "suym" | "symu" | "syum" | "yms" | "ysm" | "ums" | "umsy" | "umys" | "usm" | "usmy" | "usym" | "uyms" | "uysm" | "ymsu" | "ymus" | "ysmu" | "ysum" | "yums" | "yusm" | "im" | "is" | "iu" | "iy" | "iuy" | "iyu" | "isu" | "isy" | "isuy" | "isyu" | "iys" | "ius" | "iusy" | "iuys" | "iysu" | "iyus" | "ims" | "imu" | "imy" | "imuy" | "imyu" | "imsu" | "imsy" | "imsuy" | "imsyu" | "imys" | "imus" | "imusy" | "imuys" | "imysu" | "imyus" | "iym" | "ium" | "iumy" | "iuym" | "iymu" | "iyum" | "ism" | "ismu" | "ismy" | "ismuy" | "ismyu" | "isym" | "isum" | "isumy" | "isuym" | "isymu" | "isyum" | "iyms" | "iysm" | "iums" | "iumsy" | "iumys" | "iusm" | "iusmy" | "iusym" | "iuyms" | "iuysm" | "iymsu" | "iymus" | "iysmu" | "iysum" | "iyums" | "iyusm" | "yi" | "ui" | "uiy" | "uyi" | "yiu" | "yui" | "si" | "siu" | "siy" | "siuy" | "siyu" | "syi" | "sui" | "suiy" | "suyi" | "syiu" | "syui" | "yis" | "ysi" | "uis" | "uisy" | "uiys" | "usi" | "usiy" | "usyi" | "uyis" | "uysi" | "yisu" | "yius" | "ysiu" | "ysui" | "yuis" | "yusi" | "mi" | "mis" | "miu" | "miy" | "miuy" | "miyu" | "misu" | "misy" | "misuy" | "misyu" | "miys" | "mius" | "miusy" | "miuys" | "miysu" | "miyus" | "myi" | "mui" | "muiy" | "muyi" | "myiu" | "myui" | "msi" | "msiu" | "msiy" | "msiuy" | "msiyu" | "msyi" | "msui" | "msuiy" | "msuyi" | "msyiu" | "msyui" | "myis" | "mysi" | "muis" | "muisy" | "muiys" | "musi" | "musiy" | "musyi" | "muyis" | "muysi" | "myisu" | "myius" | "mysiu" | "mysui" | "myuis" | "myusi" | "yim" | "ymi" | "uim" | "uimy" | "uiym" | "umi" | "umiy" | "umyi" | "uyim" | "uymi" | "yimu" | "yium" | "ymiu" | "ymui" | "yuim" | "yumi" | "sim" | "simu" | "simy" | "simuy" | "simyu" | "siym" | "sium" | "siumy" | "siuym" | "siymu" | "siyum" | "smi" | "smiu" | "smiy" | "smiuy" | "smiyu" | "smyi" | "smui" | "smuiy" | "smuyi" | "smyiu" | "smyui" | "syim" | "symi" | "suim" | "suimy" | "suiym" | "sumi" | "sumiy" | "sumyi" | "suyim" | "suymi" | "syimu" | "syium" | "symiu" | "symui" | "syuim" | "syumi" | "yims" | "yism" | "ymis" | "ymsi" | "ysim" | "ysmi" | "uims" | "uimsy" | "uimys" | "uism" | "uismy" | "uisym" | "uiyms" | "uiysm" | "umis" | "umisy" | "umiys" | "umsi" | "umsiy" | "umsyi" | "umyis" | "umysi" | "usim" | "usimy" | "usiym" | "usmi" | "usmiy" | "usmyi" | "usyim" | "usymi" | "uyims" | "uyism" | "uymis" | "uymsi" | "uysim" | "uysmi" | "yimsu" | "yimus" | "yismu" | "yisum" | "yiums" | "yiusm" | "ymisu" | "ymius" | "ymsiu" | "ymsui" | "ymuis" | "ymusi" | "ysimu" | "ysium" | "ysmiu" | "ysmui" | "ysuim" | "ysumi" | "yuims" | "yuism" | "yumis" | "yumsi" | "yusim" | "yusmi" | "gi" | "gm" | "gs" | "gu" | "gy" | "guy" | "gyu" | "gsu" | "gsy" | "gsuy" | "gsyu" | "gys" | "gus" | "gusy" | "guys" | "gysu" | "gyus" | "gms" | "gmu" | "gmy" | "gmuy" | "gmyu" | "gmsu" | "gmsy" | "gmsuy" | "gmsyu" | "gmys" | "gmus" | "gmusy" | "gmuys" | "gmysu" | "gmyus" | "gym" | "gum" | "gumy" | "guym" | "gymu" | "gyum" | "gsm" | "gsmu" | "gsmy" | "gsmuy" | "gsmyu" | "gsym" | "gsum" | "gsumy" | "gsuym" | "gsymu" | "gsyum" | "gyms" | "gysm" | "gums" | "gumsy" | "gumys" | "gusm" | "gusmy" | "gusym" | "guyms" | "guysm" | "gymsu" | "gymus" | "gysmu" | "gysum" | "gyums" | "gyusm" | "gim" | "gis" | "giu" | "giy" | "giuy" | "giyu" | "gisu" | "gisy" | "gisuy" | "gisyu" | "giys" | "gius" | "giusy" | "giuys" | "giysu" | "giyus" | "gims" | "gimu" | "gimy" | "gimuy" | "gimyu" | "gimsu" | "gimsy" | "gimsuy" | "gimsyu" | "gimys" | "gimus" | "gimusy" | "gimuys" | "gimysu" | "gimyus" | "giym" | "gium" | "giumy" | "giuym" | "giymu" | "giyum" | "gism" | "gismu" | "gismy" | "gismuy" | "gismyu" | "gisym" | "gisum" | "gisumy" | "gisuym" | "gisymu" | "gisyum" | "giyms" | "giysm" | "giums" | "giumsy" | "giumys" | "giusm" | "giusmy" | "giusym" | "giuyms" | "giuysm" | "giymsu" | "giymus" | "giysmu" | "giysum" | "giyums" | "giyusm" | "gyi" | "gui" | "guiy" | "guyi" | "gyiu" | "gyui" | "gsi" | "gsiu" | "gsiy" | "gsiuy" | "gsiyu" | "gsyi" | "gsui" | "gsuiy" | "gsuyi" | "gsyiu" | "gsyui" | "gyis" | "gysi" | "guis" | "guisy" | "guiys" | "gusi" | "gusiy" | "gusyi" | "guyis" | "guysi" | "gyisu" | "gyius" | "gysiu" | "gysui" | "gyuis" | "gyusi" | "gmi" | "gmis" | "gmiu" | "gmiy" | "gmiuy" | "gmiyu" | "gmisu" | "gmisy" | "gmisuy" | "gmisyu" | "gmiys" | "gmius" | "gmiusy" | "gmiuys" | "gmiysu" | "gmiyus" | "gmyi" | "gmui" | "gmuiy" | "gmuyi" | "gmyiu" | "gmyui" | "gmsi" | "gmsiu" | "gmsiy" | "gmsiuy" | "gmsiyu" | "gmsyi" | "gmsui" | "gmsuiy" | "gmsuyi" | "gmsyiu" | "gmsyui" | "gmyis" | "gmysi" | "gmuis" | "gmuisy" | "gmuiys" | "gmusi" | "gmusiy" | "gmusyi" | "gmuyis" | "gmuysi" | "gmyisu" | "gmyius" | "gmysiu" | "gmysui" | "gmyuis" | "gmyusi" | "gyim" | "gymi" | "guim" | "guimy" | "guiym" | "gumi" | "gumiy" | "gumyi" | "guyim" | "guymi" | "gyimu" | "gyium" | "gymiu" | "gymui" | "gyuim" | "gyumi" | "gsim" | "gsimu" | "gsimy" | "gsimuy" | "gsimyu" | "gsiym" | "gsium" | "gsiumy" | "gsiuym" | "gsiymu" | "gsiyum" | "gsmi" | "gsmiu" | "gsmiy" | "gsmiuy" | "gsmiyu" | "gsmyi" | "gsmui" | "gsmuiy" | "gsmuyi" | "gsmyiu" | "gsmyui" | "gsyim" | "gsymi" | "gsuim" | "gsuimy" | "gsuiym" | "gsumi" | "gsumiy" | "gsumyi" | "gsuyim" | "gsuymi" | "gsyimu" | "gsyium" | "gsymiu" | "gsymui" | "gsyuim" | "gsyumi" | "gyims" | "gyism" | "gymis" | "gymsi" | "gysim" | "gysmi" | "guims" | "guimsy" | "guimys" | "guism" | "guismy" | "guisym" | "guiyms" | "guiysm" | "gumis" | "gumisy" | "gumiys" | "gumsi" | "gumsiy" | "gumsyi" | "gumyis" | "gumysi" | "gusim" | "gusimy" | "gusiym" | "gusmi" | "gusmiy" | "gusmyi" | "gusyim" | "gusymi" | "guyims" | "guyism" | "guymis" | "guymsi" | "guysim" | "guysmi" | "gyimsu" | "gyimus" | "gyismu" | "gyisum" | "gyiums" | "gyiusm" | "gymisu" | "gymius" | "gymsiu" | "gymsui" | "gymuis" | "gymusi" | "gysimu" | "gysium" | "gysmiu" | "gysmui" | "gysuim" | "gysumi" | "gyuims" | "gyuism" | "gyumis" | "gyumsi" | "gyusim" | "gyusmi" | "yg" | "ug" | "ugy" | "uyg" | "ygu" | "yug" | "sg" | "sgu" | "sgy" | "sguy" | "sgyu" | "syg" | "sug" | "sugy" | "suyg" | "sygu" | "syug" | "ygs" | "ysg" | "ugs" | "ugsy" | "ugys" | "usg" | "usgy" | "usyg" | "uygs" | "uysg" | "ygsu" | "ygus" | "ysgu" | "ysug" | "yugs" | "yusg" | "mg" | "mgs" | "mgu" | "mgy" | "mguy" | "mgyu" | "mgsu" | "mgsy" | "mgsuy" | "mgsyu" | "mgys" | "mgus" | "mgusy" | "mguys" | "mgysu" | "mgyus" | "myg" | "mug" | "mugy" | "muyg" | "mygu" | "myug" | "msg" | "msgu" | "msgy" | "msguy" | "msgyu" | "msyg" | "msug" | "msugy" | "msuyg" | "msygu" | "msyug" | "mygs" | "mysg" | "mugs" | "mugsy" | "mugys" | "musg" | "musgy" | "musyg" | "muygs" | "muysg" | "mygsu" | "mygus" | "mysgu" | "mysug" | "myugs" | "myusg" | "ygm" | "ymg" | "ugm" | "ugmy" | "ugym" | "umg" | "umgy" | "umyg" | "uygm" | "uymg" | "ygmu" | "ygum" | "ymgu" | "ymug" | "yugm" | "yumg" | "sgm" | "sgmu" | "sgmy" | "sgmuy" | "sgmyu" | "sgym" | "sgum" | "sgumy" | "sguym" | "sgymu" | "sgyum" | "smg" | "smgu" | "smgy" | "smguy" | "smgyu" | "smyg" | "smug" | "smugy" | "smuyg" | "smygu" | "smyug" | "sygm" | "symg" | "sugm" | "sugmy" | "sugym" | "sumg" | "sumgy" | "sumyg" | "suygm" | "suymg" | "sygmu" | "sygum" | "symgu" | "symug" | "syugm" | "syumg" | "ygms" | "ygsm" | "ymgs" | "ymsg" | "ysgm" | "ysmg" | "ugms" | "ugmsy" | "ugmys" | "ugsm" | "ugsmy" | "ugsym" | "ugyms" | "ugysm" | "umgs" | "umgsy" | "umgys" | "umsg" | "umsgy" | "umsyg" | "umygs" | "umysg" | "usgm" | "usgmy" | "usgym" | "usmg" | "usmgy" | "usmyg" | "usygm" | "usymg" | "uygms" | "uygsm" | "uymgs" | "uymsg" | "uysgm" | "uysmg" | "ygmsu" | "ygmus" | "ygsmu" | "ygsum" | "ygums" | "ygusm" | "ymgsu" | "ymgus" | "ymsgu" | "ymsug" | "ymugs" | "ymusg" | "ysgmu" | "ysgum" | "ysmgu" | "ysmug" | "ysugm" | "ysumg" | "yugms" | "yugsm" | "yumgs" | "yumsg" | "yusgm" | "yusmg" | "ig" | "igm" | "igs" | "igu" | "igy" | "iguy" | "igyu" | "igsu" | "igsy" | "igsuy" | "igsyu" | "igys" | "igus" | "igusy" | "iguys" | "igysu" | "igyus" | "igms" | "igmu" | "igmy" | "igmuy" | "igmyu" | "igmsu" | "igmsy" | "igmsuy" | "igmsyu" | "igmys" | "igmus" | "igmusy" | "igmuys" | "igmysu" | "igmyus" | "igym" | "igum" | "igumy" | "iguym" | "igymu" | "igyum" | "igsm" | "igsmu" | "igsmy" | "igsmuy" | "igsmyu" | "igsym" | "igsum" | "igsumy" | "igsuym" | "igsymu" | "igsyum" | "igyms" | "igysm" | "igums" | "igumsy" | "igumys" | "igusm" | "igusmy" | "igusym" | "iguyms" | "iguysm" | "igymsu" | "igymus" | "igysmu" | "igysum" | "igyums" | "igyusm" | "iyg" | "iug" | "iugy" | "iuyg" | "iygu" | "iyug" | "isg" | "isgu" | "isgy" | "isguy" | "isgyu" | "isyg" | "isug" | "isugy" | "isuyg" | "isygu" | "isyug" | "iygs" | "iysg" | "iugs" | "iugsy" | "iugys" | "iusg" | "iusgy" | "iusyg" | "iuygs" | "iuysg" | "iygsu" | "iygus" | "iysgu" | "iysug" | "iyugs" | "iyusg" | "img" | "imgs" | "imgu" | "imgy" | "imguy" | "imgyu" | "imgsu" | "imgsy" | "imgsuy" | "imgsyu" | "imgys" | "imgus" | "imgusy" | "imguys" | "imgysu" | "imgyus" | "imyg" | "imug" | "imugy" | "imuyg" | "imygu" | "imyug" | "imsg" | "imsgu" | "imsgy" | "imsguy" | "imsgyu" | "imsyg" | "imsug" | "imsugy" | "imsuyg" | "imsygu" | "imsyug" | "imygs" | "imysg" | "imugs" | "imugsy" | "imugys" | "imusg" | "imusgy" | "imusyg" | "imuygs" | "imuysg" | "imygsu" | "imygus" | "imysgu" | "imysug" | "imyugs" | "imyusg" | "iygm" | "iymg" | "iugm" | "iugmy" | "iugym" | "iumg" | "iumgy" | "iumyg" | "iuygm" | "iuymg" | "iygmu" | "iygum" | "iymgu" | "iymug" | "iyugm" | "iyumg" | "isgm" | "isgmu" | "isgmy" | "isgmuy" | "isgmyu" | "isgym" | "isgum" | "isgumy" | "isguym" | "isgymu" | "isgyum" | "ismg" | "ismgu" | "ismgy" | "ismguy" | "ismgyu" | "ismyg" | "ismug" | "ismugy" | "ismuyg" | "ismygu" | "ismyug" | "isygm" | "isymg" | "isugm" | "isugmy" | "isugym" | "isumg" | "isumgy" | "isumyg" | "isuygm" | "isuymg" | "isygmu" | "isygum" | "isymgu" | "isymug" | "isyugm" | "isyumg" | "iygms" | "iygsm" | "iymgs" | "iymsg" | "iysgm" | "iysmg" | "iugms" | "iugmsy" | "iugmys" | "iugsm" | "iugsmy" | "iugsym" | "iugyms" | "iugysm" | "iumgs" | "iumgsy" | "iumgys" | "iumsg" | "iumsgy" | "iumsyg" | "iumygs" | "iumysg" | "iusgm" | "iusgmy" | "iusgym" | "iusmg" | "iusmgy" | "iusmyg" | "iusygm" | "iusymg" | "iuygms" | "iuygsm" | "iuymgs" | "iuymsg" | "iuysgm" | "iuysmg" | "iygmsu" | "iygmus" | "iygsmu" | "iygsum" | "iygums" | "iygusm" | "iymgsu" | "iymgus" | "iymsgu" | "iymsug" | "iymugs" | "iymusg" | "iysgmu" | "iysgum" | "iysmgu" | "iysmug" | "iysugm" | "iysumg" | "iyugms" | "iyugsm" | "iyumgs" | "iyumsg" | "iyusgm" | "iyusmg" | "ygi" | "yig" | "ugi" | "ugiy" | "ugyi" | "uig" | "uigy" | "uiyg" | "uygi" | "uyig" | "ygiu" | "ygui" | "yigu" | "yiug" | "yugi" | "yuig" | "sgi" | "sgiu" | "sgiy" | "sgiuy" | "sgiyu" | "sgyi" | "sgui" | "sguiy" | "sguyi" | "sgyiu" | "sgyui" | "sig" | "sigu" | "sigy" | "siguy" | "sigyu" | "siyg" | "siug" | "siugy" | "siuyg" | "siygu" | "siyug" | "sygi" | "syig" | "sugi" | "sugiy" | "sugyi" | "suig" | "suigy" | "suiyg" | "suygi" | "suyig" | "sygiu" | "sygui" | "syigu" | "syiug" | "syugi" | "syuig" | "ygis" | "ygsi" | "yigs" | "yisg" | "ysgi" | "ysig" | "ugis" | "ugisy" | "ugiys" | "ugsi" | "ugsiy" | "ugsyi" | "ugyis" | "ugysi" | "uigs" | "uigsy" | "uigys" | "uisg" | "uisgy" | "uisyg" | "uiygs" | "uiysg" | "usgi" | "usgiy" | "usgyi" | "usig" | "usigy" | "usiyg" | "usygi" | "usyig" | "uygis" | "uygsi" | "uyigs" | "uyisg" | "uysgi" | "uysig" | "ygisu" | "ygius" | "ygsiu" | "ygsui" | "yguis" | "ygusi" | "yigsu" | "yigus" | "yisgu" | "yisug" | "yiugs" | "yiusg" | "ysgiu" | "ysgui" | "ysigu" | "ysiug" | "ysugi" | "ysuig" | "yugis" | "yugsi" | "yuigs" | "yuisg" | "yusgi" | "yusig" | "mgi" | "mgis" | "mgiu" | "mgiy" | "mgiuy" | "mgiyu" | "mgisu" | "mgisy" | "mgisuy" | "mgisyu" | "mgiys" | "mgius" | "mgiusy" | "mgiuys" | "mgiysu" | "mgiyus" | "mgyi" | "mgui" | "mguiy" | "mguyi" | "mgyiu" | "mgyui" | "mgsi" | "mgsiu" | "mgsiy" | "mgsiuy" | "mgsiyu" | "mgsyi" | "mgsui" | "mgsuiy" | "mgsuyi" | "mgsyiu" | "mgsyui" | "mgyis" | "mgysi" | "mguis" | "mguisy" | "mguiys" | "mgusi" | "mgusiy" | "mgusyi" | "mguyis" | "mguysi" | "mgyisu" | "mgyius" | "mgysiu" | "mgysui" | "mgyuis" | "mgyusi" | "mig" | "migs" | "migu" | "migy" | "miguy" | "migyu" | "migsu" | "migsy" | "migsuy" | "migsyu" | "migys" | "migus" | "migusy" | "miguys" | "migysu" | "migyus" | "miyg" | "miug" | "miugy" | "miuyg" | "miygu" | "miyug" | "misg" | "misgu" | "misgy" | "misguy" | "misgyu" | "misyg" | "misug" | "misugy" | "misuyg" | "misygu" | "misyug" | "miygs" | "miysg" | "miugs" | "miugsy" | "miugys" | "miusg" | "miusgy" | "miusyg" | "miuygs" | "miuysg" | "miygsu" | "miygus" | "miysgu" | "miysug" | "miyugs" | "miyusg" | "mygi" | "myig" | "mugi" | "mugiy" | "mugyi" | "muig" | "muigy" | "muiyg" | "muygi" | "muyig" | "mygiu" | "mygui" | "myigu" | "myiug" | "myugi" | "myuig" | "msgi" | "msgiu" | "msgiy" | "msgiuy" | "msgiyu" | "msgyi" | "msgui" | "msguiy" | "msguyi" | "msgyiu" | "msgyui" | "msig" | "msigu" | "msigy" | "msiguy" | "msigyu" | "msiyg" | "msiug" | "msiugy" | "msiuyg" | "msiygu" | "msiyug" | "msygi" | "msyig" | "msugi" | "msugiy" | "msugyi" | "msuig" | "msuigy" | "msuiyg" | "msuygi" | "msuyig" | "msygiu" | "msygui" | "msyigu" | "msyiug" | "msyugi" | "msyuig" | "mygis" | "mygsi" | "myigs" | "myisg" | "mysgi" | "mysig" | "mugis" | "mugisy" | "mugiys" | "mugsi" | "mugsiy" | "mugsyi" | "mugyis" | "mugysi" | "muigs" | "muigsy" | "muigys" | "muisg" | "muisgy" | "muisyg" | "muiygs" | "muiysg" | "musgi" | "musgiy" | "musgyi" | "musig" | "musigy" | "musiyg" | "musygi" | "musyig" | "muygis" | "muygsi" | "muyigs" | "muyisg" | "muysgi" | "muysig" | "mygisu" | "mygius" | "mygsiu" | "mygsui" | "myguis" | "mygusi" | "myigsu" | "myigus" | "myisgu" | "myisug" | "myiugs" | "myiusg" | "mysgiu" | "mysgui" | "mysigu" | "mysiug" | "mysugi" | "mysuig" | "myugis" | "myugsi" | "myuigs" | "myuisg" | "myusgi" | "myusig" | "ygim" | "ygmi" | "yigm" | "yimg" | "ymgi" | "ymig" | "ugim" | "ugimy" | "ugiym" | "ugmi" | "ugmiy" | "ugmyi" | "ugyim" | "ugymi" | "uigm" | "uigmy" | "uigym" | "uimg" | "uimgy" | "uimyg" | "uiygm" | "uiymg" | "umgi" | "umgiy" | "umgyi" | "umig" | "umigy" | "umiyg" | "umygi" | "umyig" | "uygim" | "uygmi" | "uyigm" | "uyimg" | "uymgi" | "uymig" | "ygimu" | "ygium" | "ygmiu" | "ygmui" | "yguim" | "ygumi" | "yigmu" | "yigum" | "yimgu" | "yimug" | "yiugm" | "yiumg" | "ymgiu" | "ymgui" | "ymigu" | "ymiug" | "ymugi" | "ymuig" | "yugim" | "yugmi" | "yuigm" | "yuimg" | "yumgi" | "yumig" | "sgim" | "sgimu" | "sgimy" | "sgimuy" | "sgimyu" | "sgiym" | "sgium" | "sgiumy" | "sgiuym" | "sgiymu" | "sgiyum" | "sgmi" | "sgmiu" | "sgmiy" | "sgmiuy" | "sgmiyu" | "sgmyi" | "sgmui" | "sgmuiy" | "sgmuyi" | "sgmyiu" | "sgmyui" | "sgyim" | "sgymi" | "sguim" | "sguimy" | "sguiym" | "sgumi" | "sgumiy" | "sgumyi" | "sguyim" | "sguymi" | "sgyimu" | "sgyium" | "sgymiu" | "sgymui" | "sgyuim" | "sgyumi" | "sigm" | "sigmu" | "sigmy" | "sigmuy" | "sigmyu" | "sigym" | "sigum" | "sigumy" | "siguym" | "sigymu" | "sigyum" | "simg" | "simgu" | "simgy" | "simguy" | "simgyu" | "simyg" | "simug" | "simugy" | "simuyg" | "simygu" | "simyug" | "siygm" | "siymg" | "siugm" | "siugmy" | "siugym" | "siumg" | "siumgy" | "siumyg" | "siuygm" | "siuymg" | "siygmu" | "siygum" | "siymgu" | "siymug" | "siyugm" | "siyumg" | "smgi" | "smgiu" | "smgiy" | "smgiuy" | "smgiyu" | "smgyi" | "smgui" | "smguiy" | "smguyi" | "smgyiu" | "smgyui" | "smig" | "smigu" | "smigy" | "smiguy" | "smigyu" | "smiyg" | "smiug" | "smiugy" | "smiuyg" | "smiygu" | "smiyug" | "smygi" | "smyig" | "smugi" | "smugiy" | "smugyi" | "smuig" | "smuigy" | "smuiyg" | "smuygi" | "smuyig" | "smygiu" | "smygui" | "smyigu" | "smyiug" | "smyugi" | "smyuig" | "sygim" | "sygmi" | "syigm" | "syimg" | "symgi" | "symig" | "sugim" | "sugimy" | "sugiym" | "sugmi" | "sugmiy" | "sugmyi" | "sugyim" | "sugymi" | "suigm" | "suigmy" | "suigym" | "suimg" | "suimgy" | "suimyg" | "suiygm" | "suiymg" | "sumgi" | "sumgiy" | "sumgyi" | "sumig" | "sumigy" | "sumiyg" | "sumygi" | "sumyig" | "suygim" | "suygmi" | "suyigm" | "suyimg" | "suymgi" | "suymig" | "sygimu" | "sygium" | "sygmiu" | "sygmui" | "syguim" | "sygumi" | "syigmu" | "syigum" | "syimgu" | "syimug" | "syiugm" | "syiumg" | "symgiu" | "symgui" | "symigu" | "symiug" | "symugi" | "symuig" | "syugim" | "syugmi" | "syuigm" | "syuimg" | "syumgi" | "syumig" | "ygims" | "ygism" | "ygmis" | "ygmsi" | "ygsim" | "ygsmi" | "yigms" | "yigsm" | "yimgs" | "yimsg" | "yisgm" | "yismg" | "ymgis" | "ymgsi" | "ymigs" | "ymisg" | "ymsgi" | "ymsig" | "ysgim" | "ysgmi" | "ysigm" | "ysimg" | "ysmgi" | "ysmig" | "ugims" | "ugimsy" | "ugimys" | "ugism" | "ugismy" | "ugisym" | "ugiyms" | "ugiysm" | "ugmis" | "ugmisy" | "ugmiys" | "ugmsi" | "ugmsiy" | "ugmsyi" | "ugmyis" | "ugmysi" | "ugsim" | "ugsimy" | "ugsiym" | "ugsmi" | "ugsmiy" | "ugsmyi" | "ugsyim" | "ugsymi" | "ugyims" | "ugyism" | "ugymis" | "ugymsi" | "ugysim" | "ugysmi" | "uigms" | "uigmsy" | "uigmys" | "uigsm" | "uigsmy" | "uigsym" | "uigyms" | "uigysm" | "uimgs" | "uimgsy" | "uimgys" | "uimsg" | "uimsgy" | "uimsyg" | "uimygs" | "uimysg" | "uisgm" | "uisgmy" | "uisgym" | "uismg" | "uismgy" | "uismyg" | "uisygm" | "uisymg" | "uiygms" | "uiygsm" | "uiymgs" | "uiymsg" | "uiysgm" | "uiysmg" | "umgis" | "umgisy" | "umgiys" | "umgsi" | "umgsiy" | "umgsyi" | "umgyis" | "umgysi" | "umigs" | "umigsy" | "umigys" | "umisg" | "umisgy" | "umisyg" | "umiygs" | "umiysg" | "umsgi" | "umsgiy" | "umsgyi" | "umsig" | "umsigy" | "umsiyg" | "umsygi" | "umsyig" | "umygis" | "umygsi" | "umyigs" | "umyisg" | "umysgi" | "umysig" | "usgim" | "usgimy" | "usgiym" | "usgmi" | "usgmiy" | "usgmyi" | "usgyim" | "usgymi" | "usigm" | "usigmy" | "usigym" | "usimg" | "usimgy" | "usimyg" | "usiygm" | "usiymg" | "usmgi" | "usmgiy" | "usmgyi" | "usmig" | "usmigy" | "usmiyg" | "usmygi" | "usmyig" | "usygim" | "usygmi" | "usyigm" | "usyimg" | "usymgi" | "usymig" | "uygims" | "uygism" | "uygmis" | "uygmsi" | "uygsim" | "uygsmi" | "uyigms" | "uyigsm" | "uyimgs" | "uyimsg" | "uyisgm" | "uyismg" | "uymgis" | "uymgsi" | "uymigs" | "uymisg" | "uymsgi" | "uymsig" | "uysgim" | "uysgmi" | "uysigm" | "uysimg" | "uysmgi" | "uysmig" | "ygimsu" | "ygimus" | "ygismu" | "ygisum" | "ygiums" | "ygiusm" | "ygmisu" | "ygmius" | "ygmsiu" | "ygmsui" | "ygmuis" | "ygmusi" | "ygsimu" | "ygsium" | "ygsmiu" | "ygsmui" | "ygsuim" | "ygsumi" | "yguims" | "yguism" | "ygumis" | "ygumsi" | "ygusim" | "ygusmi" | "yigmsu" | "yigmus" | "yigsmu" | "yigsum" | "yigums" | "yigusm" | "yimgsu" | "yimgus" | "yimsgu" | "yimsug" | "yimugs" | "yimusg" | "yisgmu" | "yisgum" | "yismgu" | "yismug" | "yisugm" | "yisumg" | "yiugms" | "yiugsm" | "yiumgs" | "yiumsg" | "yiusgm" | "yiusmg" | "ymgisu" | "ymgius" | "ymgsiu" | "ymgsui" | "ymguis" | "ymgusi" | "ymigsu" | "ymigus" | "ymisgu" | "ymisug" | "ymiugs" | "ymiusg" | "ymsgiu" | "ymsgui" | "ymsigu" | "ymsiug" | "ymsugi" | "ymsuig" | "ymugis" | "ymugsi" | "ymuigs" | "ymuisg" | "ymusgi" | "ymusig" | "ysgimu" | "ysgium" | "ysgmiu" | "ysgmui" | "ysguim" | "ysgumi" | "ysigmu" | "ysigum" | "ysimgu" | "ysimug" | "ysiugm" | "ysiumg" | "ysmgiu" | "ysmgui" | "ysmigu" | "ysmiug" | "ysmugi" | "ysmuig" | "ysugim" | "ysugmi" | "ysuigm" | "ysuimg" | "ysumgi" | "ysumig" | "yugims" | "yugism" | "yugmis" | "yugmsi" | "yugsim" | "yugsmi" | "yuigms" | "yuigsm" | "yuimgs" | "yuimsg" | "yuisgm" | "yuismg" | "yumgis" | "yumgsi" | "yumigs" | "yumisg" | "yumsgi" | "yumsig" | "yusgim" | "yusgmi" | "yusigm" | "yusimg" | "yusmgi" | "yusmig") | undefined) => RegExpTsDsl; /** Creates a return statement. */
2341
- return: (expr?: any) => ReturnTsDsl; /** Creates a setter method declaration. */
2341
+ return: (expr?: ReturnExpr | undefined) => ReturnTsDsl; /** Creates a setter method declaration. */
2342
2342
  setter: (name: NodeName, fn?: ((s: SetterTsDsl) => void) | undefined) => SetterTsDsl; /** Creates a spread element from an expression (e.g., `...expr`). */
2343
- spread: (expr: any) => SpreadTsDsl; /** Wraps an expression or statement-like value into a `StmtTsDsl`. */
2343
+ spread: (expr: SpreadExpr) => SpreadTsDsl; /** Wraps an expression or statement-like value into a `StmtTsDsl`. */
2344
2344
  stmt: (inner: ts.Expression | ts.Statement | TsDsl<any>) => StmtTsDsl; /** Creates a template literal expression. */
2345
- template: (value?: any) => TemplateTsDsl; /** Creates a ternary conditional expression (if ? then : else). */
2345
+ template: (value?: TemplatePart | undefined) => TemplateTsDsl; /** Creates a ternary conditional expression (if ? then : else). */
2346
2346
  ternary: (condition?: string | ts.Expression | TsDsl<ts.Expression> | undefined) => TernaryTsDsl; /** Creates a throw statement. */
2347
2347
  throw: (error: string | ts.Expression | TsDsl<ts.Expression>, useNew?: boolean | undefined) => ThrowTsDsl; /** Creates a syntax token (e.g., `?`, `readonly`, `+`, `-`). */
2348
2348
  token: () => TokenTsDsl<never>; /** Creates a try/catch/finally statement. */
@@ -2350,24 +2350,24 @@ declare const $: ((id: any) => ExprTsDsl) & {
2350
2350
  type: ((name: NodeName, fn?: TypeExprFn | undefined) => TypeExprTsDsl) & {
2351
2351
  /** Creates a type alias declaration (e.g., `type Foo = Bar`). */alias: (name: NodeName, fn?: ((t: TypeAliasTsDsl) => void) | undefined) => TypeAliasTsDsl; /** Creates an intersection type (e.g., `A & B`). */
2352
2352
  and: (...args: ConstructorParameters<typeof TypeAndTsDsl>) => TypeAndTsDsl; /** Creates a qualified type reference (e.g., Foo.Bar). */
2353
- attr: (right: any) => TypeAttrTsDsl; /** Creates a basic type reference or type expression (e.g., Foo or Foo<T>). */
2353
+ attr: (right: NodeName | ts.Identifier) => TypeAttrTsDsl; /** Creates a basic type reference or type expression (e.g., Foo or Foo<T>). */
2354
2354
  expr: (name: NodeName, fn?: TypeExprFn | undefined) => TypeExprTsDsl; /** Converts a runtime value into a corresponding type expression node. */
2355
2355
  fromValue: (input: unknown) => TsDsl<ts.TypeNode>; /** Creates a function type node (e.g., `(a: string) => number`). */
2356
2356
  func: (...args: ConstructorParameters<typeof TypeFuncTsDsl>) => TypeFuncTsDsl; /** Creates an indexed-access type (e.g., `Foo<T>[K]`). */
2357
2357
  idx: (base: string | ts.TypeNode | TsDsl<ts.TypeNode>, index: string | number | ts.TypeNode | TsDsl<ts.TypeNode>) => TypeIdxTsDsl; /** Creates a literal type node (e.g., 'foo', 42, or true). */
2358
2358
  literal: (value: TsLiteralValue) => TypeLiteralTsDsl; /** Creates a mapped type (e.g., `{ [K in keyof T]: U }`). */
2359
- mapped: (name?: any) => TypeMappedTsDsl; /** Creates a type literal node (e.g., { foo: string }). */
2359
+ mapped: (name?: NodeName | undefined) => TypeMappedTsDsl; /** Creates a type literal node (e.g., { foo: string }). */
2360
2360
  object: () => TypeObjectTsDsl; /** Creates a type operator node (e.g., `readonly T`, `keyof T`, `unique T`). */
2361
2361
  operator: () => TypeOperatorTsDsl; /** Represents a union type (e.g., `A | B | C`). */
2362
2362
  or: (...args: ConstructorParameters<typeof TypeOrTsDsl>) => TypeOrTsDsl; /** Creates a type parameter (e.g., `<T>`). */
2363
- param: (name?: any, fn?: ((name: TypeParamTsDsl) => void) | undefined) => TypeParamTsDsl; /** Creates a type query node (e.g., `typeof Foo`). */
2364
- query: (expr: any) => TypeQueryTsDsl; /** Builds a TypeScript template literal *type* (e.g., `${Foo}-${Bar}` as a type). */
2363
+ param: (name?: NodeName | undefined, fn?: ((name: TypeParamTsDsl) => void) | undefined) => TypeParamTsDsl; /** Creates a type query node (e.g., `typeof Foo`). */
2364
+ query: (expr: TypeQueryExpr) => TypeQueryTsDsl; /** Builds a TypeScript template literal *type* (e.g., `${Foo}-${Bar}` as a type). */
2365
2365
  template: (value?: string | ts.TypeNode | TsDsl<ts.TypeNode> | undefined) => TypeTemplateTsDsl; /** Creates a tuple type (e.g., [A, B, C]). */
2366
2366
  tuple: (...args: ConstructorParameters<typeof TypeTupleTsDsl>) => TypeTupleTsDsl; /** Creates a named tuple element (e.g., `[resolver?: R]`). */
2367
2367
  tupleMember: (name: NodeName) => TypeTupleMemberTsDsl;
2368
2368
  }; /** Creates a `typeof` expression (e.g., `typeof value`). */
2369
- typeofExpr: (expr: any) => TypeOfExprTsDsl; /** Creates a variable declaration (`var`). */
2370
- var: (name?: any) => VarTsDsl;
2369
+ typeofExpr: (expr: TypeOfExpr) => TypeOfExprTsDsl; /** Creates a variable declaration (`var`). */
2370
+ var: (name?: NodeName | undefined) => VarTsDsl;
2371
2371
  };
2372
2372
  type DollarTsDsl = {
2373
2373
  /**
@@ -10924,7 +10924,7 @@ type ZodPlugin = DefinePlugin$1<UserConfig$1, Config, IApi>;
10924
10924
  *
10925
10925
  * @param userConfig User provided {@link UserConfig} configuration(s).
10926
10926
  */
10927
- declare function createClient(userConfig?: LazyOrAsync<MaybeArray<UserConfig>>, logger?: any): Promise<ReadonlyArray<Context>>;
10927
+ declare function createClient(userConfig?: LazyOrAsync<MaybeArray<UserConfig>>, logger?: Logger$1): Promise<ReadonlyArray<Context>>;
10928
10928
  //#endregion
10929
10929
  //#region src/config/plugins.d.ts
10930
10930
  /**