@hey-api/openapi-ts 0.89.0 → 0.89.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/clients/axios/client.ts +1 -1
- package/dist/{config-uoaRJc6A.d.mts → config-DsA-xawl.d.mts} +670 -570
- package/dist/{config-CBa-XLy8.d.cts → config-Duuay7XM.d.cts} +670 -570
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +1 -1
- package/dist/index.d.mts +1 -1
- package/dist/index.mjs +1 -1
- package/dist/internal.cjs +1 -1
- package/dist/internal.d.cts +1 -1
- package/dist/internal.d.mts +1 -1
- package/dist/internal.mjs +1 -1
- package/dist/openApi-C6rgbKAs.mjs +13 -0
- package/dist/openApi-C6rgbKAs.mjs.map +1 -0
- package/dist/openApi-DbVAMWYK.cjs +13 -0
- package/dist/openApi-DbVAMWYK.cjs.map +1 -0
- package/dist/run.cjs +1 -1
- package/dist/run.cjs.map +1 -1
- package/dist/run.mjs +1 -1
- package/dist/run.mjs.map +1 -1
- package/dist/{src-CmkI6L90.mjs → src-DwGvCacY.mjs} +2 -2
- package/dist/src-DwGvCacY.mjs.map +1 -0
- package/dist/{src-odo5Y_R2.cjs → src-T7IO6Tfr.cjs} +2 -2
- package/dist/src-T7IO6Tfr.cjs.map +1 -0
- package/package.json +18 -18
- package/dist/openApi-AbaojA3X.mjs +0 -13
- package/dist/openApi-AbaojA3X.mjs.map +0 -1
- package/dist/openApi-CSMCX27Y.cjs +0 -13
- package/dist/openApi-CSMCX27Y.cjs.map +0 -1
- package/dist/src-CmkI6L90.mjs.map +0 -1
- package/dist/src-odo5Y_R2.cjs.map +0 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import
|
|
1
|
+
import * as _hey_api_codegen_core0 from "@hey-api/codegen-core";
|
|
2
|
+
import { AnalysisContext, AstContext, File, FromRef, IProject, Language, NameConflictResolver, Node, Project, Ref, Refs, RenderContext, Renderer, Symbol, SymbolIdentifier, SymbolIn, SymbolMeta } from "@hey-api/codegen-core";
|
|
2
3
|
import { RangeOptions, SemVer } from "semver";
|
|
3
|
-
import * as typescript0 from "typescript";
|
|
4
4
|
import ts from "typescript";
|
|
5
5
|
|
|
6
6
|
//#region src/openApi/shared/types/openapi-spec-extensions.d.ts
|
|
@@ -31,12 +31,20 @@ type LazyOrAsync<T> = T | (() => T) | (() => Promise<T>);
|
|
|
31
31
|
type MaybeArray<T> = T | ReadonlyArray<T>;
|
|
32
32
|
//#endregion
|
|
33
33
|
//#region src/openApi/3.1.x/types/spec.d.ts
|
|
34
|
+
/**
|
|
35
|
+
* OpenAPI Specification Extensions.
|
|
36
|
+
*
|
|
37
|
+
* See {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#specification-extensions Specification Extensions}.
|
|
38
|
+
*/
|
|
39
|
+
interface SpecificationExtensions$2 {
|
|
40
|
+
[extension: `x-${string}`]: unknown;
|
|
41
|
+
}
|
|
34
42
|
/**
|
|
35
43
|
* This is the root object of the {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#openapi-document OpenAPI document}.
|
|
36
44
|
*
|
|
37
45
|
* This object MAY be extended with {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#specification-extensions Specification Extensions}.
|
|
38
46
|
*/
|
|
39
|
-
interface OpenApiV3_1_X {
|
|
47
|
+
interface OpenApiV3_1_X extends SpecificationExtensions$2 {
|
|
40
48
|
/**
|
|
41
49
|
* An element to hold various schemas for the document.
|
|
42
50
|
*/
|
|
@@ -159,11 +167,11 @@ interface OpenApiV3_1_X {
|
|
|
159
167
|
* description: callback successfully processed
|
|
160
168
|
* ```
|
|
161
169
|
*/
|
|
162
|
-
interface CallbackObject$1 {
|
|
170
|
+
interface CallbackObject$1 extends SpecificationExtensions$2 {
|
|
163
171
|
/**
|
|
164
172
|
* A Path Item Object, or a reference to one, used to define a callback request and expected responses. A {@link https://github.com/OAI/OpenAPI-Specification/blob/main/examples/v3.0/callback-example.yaml complete example} is available.
|
|
165
173
|
*/
|
|
166
|
-
[expression: string]: PathItemObject$2 | ReferenceObject$1;
|
|
174
|
+
[expression: string]: PathItemObject$2 | ReferenceObject$1 | unknown;
|
|
167
175
|
}
|
|
168
176
|
/**
|
|
169
177
|
* Holds a set of reusable objects for different aspects of the OAS. All objects defined within the components object will have no effect on the API unless they are explicitly referenced from properties outside the components object.
|
|
@@ -254,7 +262,7 @@ interface CallbackObject$1 {
|
|
|
254
262
|
* read:pets: read your pets
|
|
255
263
|
* ```
|
|
256
264
|
*/
|
|
257
|
-
interface ComponentsObject$1 {
|
|
265
|
+
interface ComponentsObject$1 extends SpecificationExtensions$2 {
|
|
258
266
|
/**
|
|
259
267
|
* An object to hold reusable {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#callback-object Callback Objects}.
|
|
260
268
|
*/
|
|
@@ -308,7 +316,7 @@ interface ComponentsObject$1 {
|
|
|
308
316
|
* email: support@example.com
|
|
309
317
|
* ```
|
|
310
318
|
*/
|
|
311
|
-
interface ContactObject$2 {
|
|
319
|
+
interface ContactObject$2 extends SpecificationExtensions$2 {
|
|
312
320
|
/**
|
|
313
321
|
* The email address of the contact person/organization. This MUST be in the form of an email address.
|
|
314
322
|
*/
|
|
@@ -448,7 +456,7 @@ interface ContactObject$2 {
|
|
|
448
456
|
*
|
|
449
457
|
* will map to `Dog` because of the definition in the `mapping` element.
|
|
450
458
|
*/
|
|
451
|
-
interface DiscriminatorObject$1 {
|
|
459
|
+
interface DiscriminatorObject$1 extends SpecificationExtensions$2 {
|
|
452
460
|
/**
|
|
453
461
|
* An object to hold mappings between payload values and schema names or references.
|
|
454
462
|
*/
|
|
@@ -499,7 +507,7 @@ interface DiscriminatorObject$1 {
|
|
|
499
507
|
* type: integer
|
|
500
508
|
* ```
|
|
501
509
|
*/
|
|
502
|
-
interface EncodingObject$1 {
|
|
510
|
+
interface EncodingObject$1 extends SpecificationExtensions$2 {
|
|
503
511
|
/**
|
|
504
512
|
* Determines whether the parameter value SHOULD allow reserved characters, as defined by {@link https://tools.ietf.org/html/rfc3986#section-2.2 RFC3986} `:/?#[]@!$&'()*+,;=` to be included without percent-encoding. The default value is `false`. This property SHALL be ignored if the request body media type is not `application/x-www-form-urlencoded` or `multipart/form-data`. If a value is explicitly defined, then the value of {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#encodingContentType `contentType`} (implicit or explicit) SHALL be ignored.
|
|
505
513
|
*/
|
|
@@ -587,7 +595,7 @@ interface EncodingObject$1 {
|
|
|
587
595
|
* $ref: '#/components/examples/confirmation-success'
|
|
588
596
|
* ```
|
|
589
597
|
*/
|
|
590
|
-
interface ExampleObject$2 {
|
|
598
|
+
interface ExampleObject$2 extends SpecificationExtensions$2 {
|
|
591
599
|
/**
|
|
592
600
|
* Long description for the example. {@link https://spec.commonmark.org/ CommonMark syntax} MAY be used for rich text representation.
|
|
593
601
|
*/
|
|
@@ -616,7 +624,7 @@ interface ExampleObject$2 {
|
|
|
616
624
|
* url: https://example.com
|
|
617
625
|
* ```
|
|
618
626
|
*/
|
|
619
|
-
interface ExternalDocumentationObject$2 {
|
|
627
|
+
interface ExternalDocumentationObject$2 extends SpecificationExtensions$2 {
|
|
620
628
|
/**
|
|
621
629
|
* A description of the target documentation. {@link https://spec.commonmark.org/ CommonMark syntax} MAY be used for rich text representation.
|
|
622
630
|
*/
|
|
@@ -662,7 +670,7 @@ type HeaderObject$2 = Omit<ParameterObject, 'in' | 'name'>;
|
|
|
662
670
|
* version: 1.0.1
|
|
663
671
|
* ```
|
|
664
672
|
*/
|
|
665
|
-
interface InfoObject {
|
|
673
|
+
interface InfoObject extends SpecificationExtensions$2 {
|
|
666
674
|
/**
|
|
667
675
|
* The contact information for the exposed API.
|
|
668
676
|
*/
|
|
@@ -703,7 +711,7 @@ interface InfoObject {
|
|
|
703
711
|
* identifier: Apache-2.0
|
|
704
712
|
* ```
|
|
705
713
|
*/
|
|
706
|
-
interface LicenseObject$2 {
|
|
714
|
+
interface LicenseObject$2 extends SpecificationExtensions$2 {
|
|
707
715
|
/**
|
|
708
716
|
* An {@link https://spdx.org/licenses/ SPDX} license expression for the API. The `identifier` field is mutually exclusive of the `url` field.
|
|
709
717
|
*/
|
|
@@ -864,7 +872,7 @@ interface LicenseObject$2 {
|
|
|
864
872
|
*
|
|
865
873
|
* Runtime expressions preserve the type of the referenced value. Expressions can be embedded into string values by surrounding the expression with `{}` curly braces.
|
|
866
874
|
*/
|
|
867
|
-
interface LinkObject$1 {
|
|
875
|
+
interface LinkObject$1 extends SpecificationExtensions$2 {
|
|
868
876
|
/**
|
|
869
877
|
* A description of the link. {@link https://spec.commonmark.org/ CommonMark syntax} MAY be used for rich text representation.
|
|
870
878
|
*/
|
|
@@ -923,7 +931,7 @@ interface LinkObject$1 {
|
|
|
923
931
|
* $ref: "#/components/examples/frog-example"
|
|
924
932
|
* ```
|
|
925
933
|
*/
|
|
926
|
-
interface MediaTypeObject$1 {
|
|
934
|
+
interface MediaTypeObject$1 extends SpecificationExtensions$2 {
|
|
927
935
|
/**
|
|
928
936
|
* A map between a property name and its encoding information. The key, being the property name, MUST exist in the schema as a property. The encoding object SHALL only apply to `requestBody` objects when the media type is `multipart` or `application/x-www-form-urlencoded`.
|
|
929
937
|
*/
|
|
@@ -964,7 +972,7 @@ interface MediaTypeObject$1 {
|
|
|
964
972
|
* read:pets: read your pets
|
|
965
973
|
* ```
|
|
966
974
|
*/
|
|
967
|
-
interface OAuthFlowObject$1 {
|
|
975
|
+
interface OAuthFlowObject$1 extends SpecificationExtensions$2 {
|
|
968
976
|
/**
|
|
969
977
|
* **REQUIRED (`"implicit"`, `"authorizationCode"`)**. The authorization URL to be used for this flow. This MUST be in the form of a URL. The OAuth2 standard requires the use of TLS.
|
|
970
978
|
*/
|
|
@@ -987,7 +995,7 @@ interface OAuthFlowObject$1 {
|
|
|
987
995
|
*
|
|
988
996
|
* This object MAY be extended with {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#specification-extensions Specification Extensions}.
|
|
989
997
|
*/
|
|
990
|
-
interface OAuthFlowsObject$1 {
|
|
998
|
+
interface OAuthFlowsObject$1 extends SpecificationExtensions$2 {
|
|
991
999
|
/**
|
|
992
1000
|
* Configuration for the OAuth Authorization Code flow. Previously called `accessCode` in OpenAPI 2.0.
|
|
993
1001
|
*/
|
|
@@ -1054,7 +1062,7 @@ interface OAuthFlowsObject$1 {
|
|
|
1054
1062
|
* - read:pets
|
|
1055
1063
|
* ```
|
|
1056
1064
|
*/
|
|
1057
|
-
interface OperationObject {
|
|
1065
|
+
interface OperationObject extends SpecificationExtensions$2 {
|
|
1058
1066
|
/**
|
|
1059
1067
|
* A map of possible out-of band callbacks related to the parent operation. The key is a unique identifier for the Callback Object. Each value in the map is a {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#callback-object Callback Object} that describes a request that may be initiated by the API provider and the expected responses.
|
|
1060
1068
|
*/
|
|
@@ -1201,7 +1209,7 @@ interface OperationObject {
|
|
|
1201
1209
|
* type: number
|
|
1202
1210
|
* ```
|
|
1203
1211
|
*/
|
|
1204
|
-
interface ParameterObject {
|
|
1212
|
+
interface ParameterObject extends SpecificationExtensions$2 {
|
|
1205
1213
|
/**
|
|
1206
1214
|
* Sets the ability to pass empty-valued parameters. This is valid only for `query` parameters and allows sending a parameter with an empty value. Default value is `false`. If {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#parameterStyle `style`} is used, and if behavior is `n/a` (cannot be serialized), the value of `allowEmptyValue` SHALL be ignored. Use of this property is NOT RECOMMENDED, as it is likely to be removed in a later revision.
|
|
1207
1215
|
*/
|
|
@@ -1296,7 +1304,7 @@ interface ParameterObject {
|
|
|
1296
1304
|
* style: simple
|
|
1297
1305
|
* ```
|
|
1298
1306
|
*/
|
|
1299
|
-
interface PathItemObject$2 {
|
|
1307
|
+
interface PathItemObject$2 extends SpecificationExtensions$2 {
|
|
1300
1308
|
/**
|
|
1301
1309
|
* Allows for a referenced definition of this path item. The referenced structure MUST be in the form of a {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#path-item-object Path Item Object}. In case a Path Item Object field appears both in the defined object and the referenced object, the behavior is undefined. See the rules for resolving {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#relative-references-in-uris Relative References}.
|
|
1302
1310
|
*/
|
|
@@ -1395,7 +1403,7 @@ interface PathItemObject$2 {
|
|
|
1395
1403
|
* $ref: '#/components/schemas/pet'
|
|
1396
1404
|
* ```
|
|
1397
1405
|
*/
|
|
1398
|
-
interface PathsObject$2 {
|
|
1406
|
+
interface PathsObject$2 extends SpecificationExtensions$2 {
|
|
1399
1407
|
/**
|
|
1400
1408
|
* A relative path to an individual endpoint. The field name MUST begin with a forward slash (`/`). The path is **appended** (no relative URL resolution) to the expanded URL from the {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#server-object `Server Object`}'s `url` field in order to construct the full URL. {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#path-templating Path templating} is allowed. When matching URLs, concrete (non-templated) paths would be matched before their templated counterparts. Templated paths with the same hierarchy but different templated names MUST NOT exist as they are identical. In case of ambiguous matching, it's up to the tooling to decide which one to use.
|
|
1401
1409
|
*/
|
|
@@ -1498,7 +1506,7 @@ interface ReferenceObject$1 {
|
|
|
1498
1506
|
* type: string
|
|
1499
1507
|
* ```
|
|
1500
1508
|
*/
|
|
1501
|
-
interface RequestBodyObject {
|
|
1509
|
+
interface RequestBodyObject extends SpecificationExtensions$2 {
|
|
1502
1510
|
/**
|
|
1503
1511
|
* **REQUIRED**. The content of the request body. The key is a media type or {@link https://tools.ietf.org/html/rfc7231#appendix-D media type range} and the value describes it. For requests that match multiple keys, only the most specific key is applicable. e.g. text/plain overrides text/*
|
|
1504
1512
|
*/
|
|
@@ -1573,7 +1581,7 @@ interface RequestBodyObject {
|
|
|
1573
1581
|
* description: object created
|
|
1574
1582
|
* ```
|
|
1575
1583
|
*/
|
|
1576
|
-
interface ResponseObject {
|
|
1584
|
+
interface ResponseObject extends SpecificationExtensions$2 {
|
|
1577
1585
|
/**
|
|
1578
1586
|
* A map containing descriptions of potential response payloads. The key is a media type or {@link https://datatracker.ietf.org/doc/html/rfc7231#appendix-D media type range} and the value describes it. For responses that match multiple keys, only the most specific key is applicable. e.g. text/plain overrides text/*
|
|
1579
1587
|
*/
|
|
@@ -1620,11 +1628,11 @@ interface ResponseObject {
|
|
|
1620
1628
|
* $ref: '#/components/schemas/ErrorModel'
|
|
1621
1629
|
* ```
|
|
1622
1630
|
*/
|
|
1623
|
-
interface ResponsesObject$2 {
|
|
1631
|
+
interface ResponsesObject$2 extends SpecificationExtensions$2 {
|
|
1624
1632
|
/**
|
|
1625
1633
|
* Any {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#http-status-codes HTTP status code} can be used as the property name, but only one property per code, to describe the expected response for that HTTP status code. This field MUST be enclosed in quotation marks (for example, "200") for compatibility between JSON and YAML. To define a range of response codes, this field MAY contain the uppercase wildcard character `X`. For example, `2XX` represents all response codes between `[200-299]`. Only the following range definitions are allowed: `1XX`, `2XX`, `3XX`, `4XX`, and `5XX`. If a response is defined using an explicit code, the explicit code definition takes precedence over the range definition for that code.
|
|
1626
1634
|
*/
|
|
1627
|
-
[httpStatusCode: string]: ResponseObject | ReferenceObject$1 | undefined;
|
|
1635
|
+
[httpStatusCode: string]: ResponseObject | ReferenceObject$1 | undefined | unknown;
|
|
1628
1636
|
/**
|
|
1629
1637
|
* The documentation of responses other than the ones declared for specific HTTP response codes. Use this field to cover undeclared responses.
|
|
1630
1638
|
*/
|
|
@@ -1654,7 +1662,7 @@ interface ResponsesObject$2 {
|
|
|
1654
1662
|
*
|
|
1655
1663
|
* This object MAY be extended with {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#specification-extensions Specification Extensions}, though as noted, additional properties MAY omit the `x-` prefix within this object.
|
|
1656
1664
|
*/
|
|
1657
|
-
type SchemaObject = JsonSchemaDraft2020_12;
|
|
1665
|
+
type SchemaObject = JsonSchemaDraft2020_12 & SpecificationExtensions$2;
|
|
1658
1666
|
/**
|
|
1659
1667
|
* Lists the required security schemes to execute this operation. The name used for each property MUST correspond to a security scheme declared in the {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#componentsSecuritySchemes Security Schemes} under the {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#components-object Components Object}.
|
|
1660
1668
|
*
|
|
@@ -1739,7 +1747,7 @@ interface SecurityRequirementObject$2 {
|
|
|
1739
1747
|
* read:pets: read your pets
|
|
1740
1748
|
* ```
|
|
1741
1749
|
*/
|
|
1742
|
-
type SecuritySchemeObject$2 = {
|
|
1750
|
+
type SecuritySchemeObject$2 = SpecificationExtensions$2 & {
|
|
1743
1751
|
/**
|
|
1744
1752
|
* A description for security scheme. {@link https://spec.commonmark.org/ CommonMark syntax} MAY be used for rich text representation.
|
|
1745
1753
|
*/
|
|
@@ -1805,7 +1813,7 @@ type SecuritySchemeObject$2 = {
|
|
|
1805
1813
|
* description: Development server
|
|
1806
1814
|
* ```
|
|
1807
1815
|
*/
|
|
1808
|
-
interface ServerObject$1 {
|
|
1816
|
+
interface ServerObject$1 extends SpecificationExtensions$2 {
|
|
1809
1817
|
/**
|
|
1810
1818
|
* An optional string describing the host designated by the URL. {@link https://spec.commonmark.org/ CommonMark syntax} MAY be used for rich text representation.
|
|
1811
1819
|
*/
|
|
@@ -1824,7 +1832,7 @@ interface ServerObject$1 {
|
|
|
1824
1832
|
*
|
|
1825
1833
|
* This object MAY be extended with {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#specification-extensions Specification Extensions}.
|
|
1826
1834
|
*/
|
|
1827
|
-
interface ServerVariableObject$1 {
|
|
1835
|
+
interface ServerVariableObject$1 extends SpecificationExtensions$2 {
|
|
1828
1836
|
/**
|
|
1829
1837
|
* **REQUIRED**. The default value to use for substitution, which SHALL be sent if an alternate value is _not_ supplied. Note this behavior is different than the {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#schema-object Schema Object's} treatment of default values, because in those cases parameter values are optional. If the {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#serverVariableEnum `enum`} is defined, the value MUST exist in the enum's values.
|
|
1830
1838
|
*/
|
|
@@ -1849,7 +1857,7 @@ interface ServerVariableObject$1 {
|
|
|
1849
1857
|
* description: Pets operations
|
|
1850
1858
|
* ```
|
|
1851
1859
|
*/
|
|
1852
|
-
interface TagObject$2 {
|
|
1860
|
+
interface TagObject$2 extends SpecificationExtensions$2 {
|
|
1853
1861
|
/**
|
|
1854
1862
|
* A description for the tag. {@link https://spec.commonmark.org/ CommonMark syntax} MAY be used for rich text representation.
|
|
1855
1863
|
*/
|
|
@@ -2055,7 +2063,7 @@ interface TagObject$2 {
|
|
|
2055
2063
|
* </aliens>
|
|
2056
2064
|
* ```
|
|
2057
2065
|
*/
|
|
2058
|
-
interface XMLObject$2 {
|
|
2066
|
+
interface XMLObject$2 extends SpecificationExtensions$2 {
|
|
2059
2067
|
/**
|
|
2060
2068
|
* Declares whether the property definition translates to an attribute instead of an element. Default value is `false`.
|
|
2061
2069
|
*/
|
|
@@ -2102,7 +2110,7 @@ interface OpenApiSchemaExtensions {
|
|
|
2102
2110
|
//#endregion
|
|
2103
2111
|
//#region src/openApi/3.1.x/types/json-schema-draft-2020-12.d.ts
|
|
2104
2112
|
// TODO: left out some keywords related to structuring a complex schema and declaring a dialect
|
|
2105
|
-
interface JsonSchemaDraft2020_12 extends ArrayKeywords, NumberKeywords, ObjectKeywords, StringKeywords, EnumExtensions, OpenApiSchemaExtensions {
|
|
2113
|
+
interface JsonSchemaDraft2020_12 extends ArrayKeywords, NumberKeywords, ObjectKeywords, StringKeywords, EnumExtensions, OpenApiSchemaExtensions, SpecificationExtensions$2 {
|
|
2106
2114
|
/**
|
|
2107
2115
|
* The `$comment` {@link https://json-schema.org/learn/glossary#keyword keyword} is strictly intended for adding comments to a schema. Its value must always be a string. Unlike the annotations `title`, `description`, and `examples`, JSON schema {@link https://json-schema.org/learn/glossary#implementation implementations} aren't allowed to attach any meaning or behavior to it whatsoever, and may even strip them at any time. Therefore, they are useful for leaving notes to future editors of a JSON schema, but should not be used to communicate to users of the schema.
|
|
2108
2116
|
*/
|
|
@@ -2427,6 +2435,14 @@ type JsonSchemaTypes$1 = 'array' | 'boolean' | 'integer' | 'null' | 'number' | '
|
|
|
2427
2435
|
type IRMediaType = 'form-data' | 'json' | 'text' | 'url-search-params' | 'octet-stream';
|
|
2428
2436
|
//#endregion
|
|
2429
2437
|
//#region src/ir/types.d.ts
|
|
2438
|
+
/**
|
|
2439
|
+
* OpenAPI Specification Extensions.
|
|
2440
|
+
*
|
|
2441
|
+
* See {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#specification-extensions Specification Extensions}.
|
|
2442
|
+
*/
|
|
2443
|
+
interface SpecificationExtensions$1 {
|
|
2444
|
+
[extension: `x-${string}`]: unknown;
|
|
2445
|
+
}
|
|
2430
2446
|
interface IRBodyObject {
|
|
2431
2447
|
mediaType: string;
|
|
2432
2448
|
/**
|
|
@@ -2443,7 +2459,7 @@ interface IRComponentsObject {
|
|
|
2443
2459
|
requestBodies?: Record<string, IRRequestBodyObject>;
|
|
2444
2460
|
schemas?: Record<string, IRSchemaObject>;
|
|
2445
2461
|
}
|
|
2446
|
-
interface IROperationObject {
|
|
2462
|
+
interface IROperationObject extends SpecificationExtensions$1 {
|
|
2447
2463
|
body?: IRBodyObject;
|
|
2448
2464
|
deprecated?: boolean;
|
|
2449
2465
|
description?: string;
|
|
@@ -2464,7 +2480,7 @@ interface IRParametersObject {
|
|
|
2464
2480
|
path?: Record<string, IRParameterObject>;
|
|
2465
2481
|
query?: Record<string, IRParameterObject>;
|
|
2466
2482
|
}
|
|
2467
|
-
interface IRParameterObject extends Pick<JsonSchemaDraft2020_12, 'deprecated' | 'description'
|
|
2483
|
+
interface IRParameterObject extends Pick<JsonSchemaDraft2020_12, 'deprecated' | 'description'>, SpecificationExtensions$1 {
|
|
2468
2484
|
/**
|
|
2469
2485
|
* Determines whether the parameter value SHOULD allow reserved characters, as defined by RFC3986 `:/?#[]@!$&'()*+,;=` to be included without percent-encoding. The default value is `false`. This property SHALL be ignored if the request body media type is not `application/x-www-form-urlencoded` or `multipart/form-data`. If a value is explicitly defined, then the value of `contentType` (implicit or explicit) SHALL be ignored.
|
|
2470
2486
|
*/
|
|
@@ -2522,7 +2538,7 @@ interface IRResponseObject {
|
|
|
2522
2538
|
mediaType?: string;
|
|
2523
2539
|
schema: IRSchemaObject;
|
|
2524
2540
|
}
|
|
2525
|
-
interface IRSchemaObject extends Pick<JsonSchemaDraft2020_12, '$ref' | 'const' | 'default' | 'deprecated' | 'description' | 'exclusiveMaximum' | 'exclusiveMinimum' | 'maximum' | 'maxItems' | 'maxLength' | 'minimum' | 'minItems' | 'minLength' | 'pattern' | 'required' | 'title' | 'example'
|
|
2541
|
+
interface IRSchemaObject extends Pick<JsonSchemaDraft2020_12, '$ref' | 'const' | 'default' | 'deprecated' | 'description' | 'exclusiveMaximum' | 'exclusiveMinimum' | 'maximum' | 'maxItems' | 'maxLength' | 'minimum' | 'minItems' | 'minLength' | 'pattern' | 'required' | 'title' | 'example'>, SpecificationExtensions$1 {
|
|
2526
2542
|
/**
|
|
2527
2543
|
* If the schema is intended to be used as an object property, it can be
|
|
2528
2544
|
* marked as read-only or write-only. This value controls whether the schema
|
|
@@ -4746,12 +4762,20 @@ interface OpenApiV2_0_XTypes {
|
|
|
4746
4762
|
}
|
|
4747
4763
|
//#endregion
|
|
4748
4764
|
//#region src/openApi/3.0.x/types/spec.d.ts
|
|
4765
|
+
/**
|
|
4766
|
+
* OpenAPI Specification Extensions.
|
|
4767
|
+
*
|
|
4768
|
+
* See {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.4.md#specification-extensions Specification Extensions}.
|
|
4769
|
+
*/
|
|
4770
|
+
interface SpecificationExtensions {
|
|
4771
|
+
[extension: `x-${string}`]: unknown;
|
|
4772
|
+
}
|
|
4749
4773
|
/**
|
|
4750
4774
|
* This is the root object of the {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.4.md#openapi-description OpenAPI Description}.
|
|
4751
4775
|
*
|
|
4752
4776
|
* This object MAY be extended with {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.4.md#specification-extensions Specification Extensions}.
|
|
4753
4777
|
*/
|
|
4754
|
-
interface OpenApiV3_0_X {
|
|
4778
|
+
interface OpenApiV3_0_X extends SpecificationExtensions {
|
|
4755
4779
|
/**
|
|
4756
4780
|
* An element to hold various Objects for the OpenAPI Description.
|
|
4757
4781
|
*/
|
|
@@ -4792,11 +4816,11 @@ interface OpenApiV3_0_X {
|
|
|
4792
4816
|
*
|
|
4793
4817
|
* TODO: examples
|
|
4794
4818
|
*/
|
|
4795
|
-
interface CallbackObject {
|
|
4819
|
+
interface CallbackObject extends SpecificationExtensions {
|
|
4796
4820
|
/**
|
|
4797
4821
|
* A Path Item Object used to define a callback request and expected responses. A {@link https://learn.openapis.org/examples/v3.0/callback-example.html complete example} is available.
|
|
4798
4822
|
*/
|
|
4799
|
-
[expression: string]: PathItemObject | ReferenceObject$2;
|
|
4823
|
+
[expression: string]: PathItemObject | ReferenceObject$2 | unknown;
|
|
4800
4824
|
}
|
|
4801
4825
|
/**
|
|
4802
4826
|
* Holds a set of reusable objects for different aspects of the OAS. All objects defined within the Components Object will have no effect on the API unless they are explicitly referenced from outside the Components Object.
|
|
@@ -4807,7 +4831,7 @@ interface CallbackObject {
|
|
|
4807
4831
|
*
|
|
4808
4832
|
* TODO: examples
|
|
4809
4833
|
*/
|
|
4810
|
-
interface ComponentsObject {
|
|
4834
|
+
interface ComponentsObject extends SpecificationExtensions {
|
|
4811
4835
|
/**
|
|
4812
4836
|
* An object to hold reusable {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.4.md#callback-object Callback Objects}.
|
|
4813
4837
|
*/
|
|
@@ -4856,7 +4880,7 @@ interface ComponentsObject {
|
|
|
4856
4880
|
* email: support@example.com
|
|
4857
4881
|
* ```
|
|
4858
4882
|
*/
|
|
4859
|
-
interface ContactObject {
|
|
4883
|
+
interface ContactObject extends SpecificationExtensions {
|
|
4860
4884
|
/**
|
|
4861
4885
|
* The email address of the contact person/organization. This MUST be in the form of an email address.
|
|
4862
4886
|
*/
|
|
@@ -4901,7 +4925,7 @@ interface DiscriminatorObject {
|
|
|
4901
4925
|
* TODO: default values examples
|
|
4902
4926
|
* TODO: examples
|
|
4903
4927
|
*/
|
|
4904
|
-
interface EncodingObject {
|
|
4928
|
+
interface EncodingObject extends SpecificationExtensions {
|
|
4905
4929
|
/**
|
|
4906
4930
|
* When this is true, parameter values are serialized using reserved expansion, as defined by {@link https://datatracker.ietf.org/doc/html/rfc6570#section-3.2.3 RFC6570}, which allows {@link https://datatracker.ietf.org/doc/html/rfc3986#section-2.2 RFC3986's reserved character set}, as well as percent-encoded triples, to pass through unchanged, while still percent-encoding all other disallowed characters (including `%` outside of percent-encoded triples). Applications are still responsible for percent-encoding reserved characters that are {@link https://datatracker.ietf.org/doc/html/rfc3986#section-3.4 not allowed in the query string} (`[`, `]`, `#`), or have a special meaning in `application/x-www-form-urlencoded` (`-`, `&`, `+`); see Appendices {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.4.md#appendix-c-using-rfc6570-based-serialization C} and {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.4.md#appendix-e-percent-encoding-and-form-media-types E} for details. The default value is `false`. This field SHALL be ignored if the request body media type is not `application/x-www-form-urlencoded`.
|
|
4907
4931
|
*/
|
|
@@ -4934,7 +4958,7 @@ interface EncodingObject {
|
|
|
4934
4958
|
*
|
|
4935
4959
|
* TODO: examples
|
|
4936
4960
|
*/
|
|
4937
|
-
interface ExampleObject {
|
|
4961
|
+
interface ExampleObject extends SpecificationExtensions {
|
|
4938
4962
|
/**
|
|
4939
4963
|
* Long description for the example. {@link https://spec.commonmark.org/ CommonMark syntax} MAY be used for rich text representation.
|
|
4940
4964
|
*/
|
|
@@ -4964,7 +4988,7 @@ interface ExampleObject {
|
|
|
4964
4988
|
* url: https://example.com
|
|
4965
4989
|
* ```
|
|
4966
4990
|
*/
|
|
4967
|
-
interface ExternalDocumentationObject {
|
|
4991
|
+
interface ExternalDocumentationObject extends SpecificationExtensions {
|
|
4968
4992
|
/**
|
|
4969
4993
|
* A description of the target documentation. {@link https://spec.commonmark.org/ CommonMark syntax} MAY be used for rich text representation.
|
|
4970
4994
|
*/
|
|
@@ -5006,7 +5030,7 @@ type HeaderObject = Omit<ParameterObject$1, 'in' | 'name'>;
|
|
|
5006
5030
|
* version: 1.0.1
|
|
5007
5031
|
* ```
|
|
5008
5032
|
*/
|
|
5009
|
-
interface InfoObject$1 {
|
|
5033
|
+
interface InfoObject$1 extends SpecificationExtensions {
|
|
5010
5034
|
/**
|
|
5011
5035
|
* The contact information for the exposed API.
|
|
5012
5036
|
*/
|
|
@@ -5042,7 +5066,7 @@ interface InfoObject$1 {
|
|
|
5042
5066
|
* url: https://www.apache.org/licenses/LICENSE-2.0.html
|
|
5043
5067
|
* ```
|
|
5044
5068
|
*/
|
|
5045
|
-
interface LicenseObject {
|
|
5069
|
+
interface LicenseObject extends SpecificationExtensions {
|
|
5046
5070
|
/**
|
|
5047
5071
|
* **REQUIRED**. The license name used for the API.
|
|
5048
5072
|
*/
|
|
@@ -5067,7 +5091,7 @@ interface LicenseObject {
|
|
|
5067
5091
|
*
|
|
5068
5092
|
* TODO: examples
|
|
5069
5093
|
*/
|
|
5070
|
-
interface LinkObject {
|
|
5094
|
+
interface LinkObject extends SpecificationExtensions {
|
|
5071
5095
|
/**
|
|
5072
5096
|
* A description of the link. {@link https://spec.commonmark.org/ CommonMark syntax} MAY be used for rich text representation.
|
|
5073
5097
|
*/
|
|
@@ -5102,7 +5126,7 @@ interface LinkObject {
|
|
|
5102
5126
|
*
|
|
5103
5127
|
* TODO: examples
|
|
5104
5128
|
*/
|
|
5105
|
-
interface MediaTypeObject {
|
|
5129
|
+
interface MediaTypeObject extends SpecificationExtensions {
|
|
5106
5130
|
/**
|
|
5107
5131
|
* A map between a property name and its encoding information. The key, being the property name, MUST exist in the schema as a property. The `encoding` field SHALL only apply to {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.4.md#request-body-object Request Body Objects}, and only when the media type is `multipart` or `application/x-www-form-urlencoded`. If no Encoding Object is provided for a property, the behavior is determined by the default values documented for the Encoding Object.
|
|
5108
5132
|
*/
|
|
@@ -5127,7 +5151,7 @@ interface MediaTypeObject {
|
|
|
5127
5151
|
*
|
|
5128
5152
|
* TODO: examples
|
|
5129
5153
|
*/
|
|
5130
|
-
interface OAuthFlowObject {
|
|
5154
|
+
interface OAuthFlowObject extends SpecificationExtensions {
|
|
5131
5155
|
/**
|
|
5132
5156
|
* **REQUIRED (`"implicit"`, `"authorizationCode"`)**. The authorization URL to be used for this flow. This MUST be in the form of a URL. The OAuth2 standard requires the use of TLS.
|
|
5133
5157
|
*/
|
|
@@ -5150,7 +5174,7 @@ interface OAuthFlowObject {
|
|
|
5150
5174
|
*
|
|
5151
5175
|
* This object MAY be extended with {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.4.md#specification-extensions Specification Extensions}.
|
|
5152
5176
|
*/
|
|
5153
|
-
interface OAuthFlowsObject {
|
|
5177
|
+
interface OAuthFlowsObject extends SpecificationExtensions {
|
|
5154
5178
|
/**
|
|
5155
5179
|
* Configuration for the OAuth Authorization Code flow. Previously called `accessCode` in OpenAPI 2.0.
|
|
5156
5180
|
*/
|
|
@@ -5175,7 +5199,7 @@ interface OAuthFlowsObject {
|
|
|
5175
5199
|
*
|
|
5176
5200
|
* TODO: examples
|
|
5177
5201
|
*/
|
|
5178
|
-
interface OperationObject$1 {
|
|
5202
|
+
interface OperationObject$1 extends SpecificationExtensions {
|
|
5179
5203
|
/**
|
|
5180
5204
|
* A map of possible out-of band callbacks related to the parent operation. The key is a unique identifier for the Callback Object. Each value in the map is a {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.4.md#callback-object Callback Object} that describes a request that may be initiated by the API provider and the expected responses.
|
|
5181
5205
|
*/
|
|
@@ -5269,7 +5293,7 @@ interface OperationObject$1 {
|
|
|
5269
5293
|
*
|
|
5270
5294
|
* TODO: examples
|
|
5271
5295
|
*/
|
|
5272
|
-
interface ParameterObject$1 {
|
|
5296
|
+
interface ParameterObject$1 extends SpecificationExtensions {
|
|
5273
5297
|
/**
|
|
5274
5298
|
* If `true`, clients MAY pass a zero-length string value in place of parameters that would otherwise be omitted entirely, which the server SHOULD interpret as the parameter being unused. Default value is `false`. If {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.4.md#parameter-style `style`} is used, and if {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.4.md#style-examples behavior is _n/a_ (cannot be serialized)}, the value of `allowEmptyValue` SHALL be ignored. Interactions between this field and the parameter's {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.4.md#schema-object Schema Object} are implementation-defined. This field is valid only for `query` parameters. Use of this field is NOT RECOMMENDED, and it is likely to be removed in a later revision.
|
|
5275
5299
|
*/
|
|
@@ -5333,7 +5357,7 @@ interface ParameterObject$1 {
|
|
|
5333
5357
|
*
|
|
5334
5358
|
* TODO: examples
|
|
5335
5359
|
*/
|
|
5336
|
-
interface PathItemObject {
|
|
5360
|
+
interface PathItemObject extends SpecificationExtensions {
|
|
5337
5361
|
/**
|
|
5338
5362
|
* Allows for a referenced definition of this path item. The value MUST be in the form of a URL, and the referenced structure MUST be in the form of a {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.4.md#path-item-object Path Item Object}. In case a Path Item Object field appears both in the defined object and the referenced object, the behavior is undefined. See the rules for resolving {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.4.md#relative-references-in-urls Relative References}.
|
|
5339
5363
|
*/
|
|
@@ -5394,7 +5418,7 @@ interface PathItemObject {
|
|
|
5394
5418
|
*
|
|
5395
5419
|
* TODO: examples
|
|
5396
5420
|
*/
|
|
5397
|
-
interface PathsObject {
|
|
5421
|
+
interface PathsObject extends SpecificationExtensions {
|
|
5398
5422
|
/**
|
|
5399
5423
|
* A relative path to an individual endpoint. The field name MUST begin with a forward slash (`/`). The path is **appended** (no relative URL resolution) to the expanded URL from the {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.4.md#server-object Server Object}'s `url` field in order to construct the full URL. {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.4.md#path-templating Path templating} is allowed. When matching URLs, concrete (non-templated) paths would be matched before their templated counterparts. Templated paths with the same hierarchy but different templated names MUST NOT exist as they are identical. In case of ambiguous matching, it's up to the tooling to decide which one to use.
|
|
5400
5424
|
*/
|
|
@@ -5440,7 +5464,7 @@ interface ReferenceObject$2 {
|
|
|
5440
5464
|
*
|
|
5441
5465
|
* TODO: examples
|
|
5442
5466
|
*/
|
|
5443
|
-
interface RequestBodyObject$1 {
|
|
5467
|
+
interface RequestBodyObject$1 extends SpecificationExtensions {
|
|
5444
5468
|
/**
|
|
5445
5469
|
* **REQUIRED**. The content of the request body. The key is a media type or {@link https://tools.ietf.org/html/rfc7231#appendix-D media type range} and the value describes it. For requests that match multiple keys, only the most specific key is applicable. e.g. `"text/plain"` overrides `"text/*"`
|
|
5446
5470
|
*/
|
|
@@ -5461,7 +5485,7 @@ interface RequestBodyObject$1 {
|
|
|
5461
5485
|
*
|
|
5462
5486
|
* TODO: examples
|
|
5463
5487
|
*/
|
|
5464
|
-
interface ResponseObject$1 {
|
|
5488
|
+
interface ResponseObject$1 extends SpecificationExtensions {
|
|
5465
5489
|
/**
|
|
5466
5490
|
* A map containing descriptions of potential response payloads. The key is a media type or {@link https://tools.ietf.org/html/rfc7231#appendix-D media type range} and the value describes it. For responses that match multiple keys, only the most specific key is applicable. e.g. `"text/plain"` overrides `"text/*"`
|
|
5467
5491
|
*/
|
|
@@ -5492,11 +5516,11 @@ interface ResponseObject$1 {
|
|
|
5492
5516
|
*
|
|
5493
5517
|
* TODO: examples
|
|
5494
5518
|
*/
|
|
5495
|
-
interface ResponsesObject {
|
|
5519
|
+
interface ResponsesObject extends SpecificationExtensions {
|
|
5496
5520
|
/**
|
|
5497
5521
|
* Any {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.4.md#http-status-codes HTTP status code} can be used as the property name, but only one property per code, to describe the expected response for that HTTP status code. A {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.4.md#reference-object Reference Object} can link to a response that is defined in the {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.4.md#components-responses OpenAPI Object's `components.responses`} section. This field MUST be enclosed in quotation marks (for example, "200") for compatibility between JSON and YAML. To define a range of response codes, this field MAY contain the uppercase wildcard character `X`. For example, `2XX` represents all response codes between `200` and `299`. Only the following range definitions are allowed: `1XX`, `2XX`, `3XX`, `4XX`, and `5XX`. If a response is defined using an explicit code, the explicit code definition takes precedence over the range definition for that code.
|
|
5498
5522
|
*/
|
|
5499
|
-
[httpStatusCode: string]: ResponseObject$1 | ReferenceObject$2 | undefined;
|
|
5523
|
+
[httpStatusCode: string]: ResponseObject$1 | ReferenceObject$2 | undefined | unknown;
|
|
5500
5524
|
/**
|
|
5501
5525
|
* The documentation of responses other than the ones declared for specific HTTP response codes. Use this field to cover undeclared responses. A {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.4.md#reference-object Reference Object} can link to a response that the {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.4.md#components-responses OpenAPI Object's `components.responses`} section defines.
|
|
5502
5526
|
*/
|
|
@@ -5553,7 +5577,7 @@ interface ResponsesObject {
|
|
|
5553
5577
|
*
|
|
5554
5578
|
* TODO: content, examples
|
|
5555
5579
|
*/
|
|
5556
|
-
interface SchemaObject$1 extends EnumExtensions {
|
|
5580
|
+
interface SchemaObject$1 extends EnumExtensions, SpecificationExtensions {
|
|
5557
5581
|
/**
|
|
5558
5582
|
* The value of "additionalProperties" MUST be a boolean or a schema.
|
|
5559
5583
|
*
|
|
@@ -5804,7 +5828,7 @@ interface SecurityRequirementObject {
|
|
|
5804
5828
|
*
|
|
5805
5829
|
* TODO: examples
|
|
5806
5830
|
*/
|
|
5807
|
-
type SecuritySchemeObject = {
|
|
5831
|
+
type SecuritySchemeObject = SpecificationExtensions & {
|
|
5808
5832
|
/**
|
|
5809
5833
|
* A description for security scheme. {@link https://spec.commonmark.org/ CommonMark syntax} MAY be used for rich text representation.
|
|
5810
5834
|
*/
|
|
@@ -5861,7 +5885,7 @@ type SecuritySchemeObject = {
|
|
|
5861
5885
|
*
|
|
5862
5886
|
* TODO: examples
|
|
5863
5887
|
*/
|
|
5864
|
-
interface ServerObject {
|
|
5888
|
+
interface ServerObject extends SpecificationExtensions {
|
|
5865
5889
|
/**
|
|
5866
5890
|
* An optional string describing the host designated by the URL. {@link https://spec.commonmark.org/ CommonMark syntax} MAY be used for rich text representation.
|
|
5867
5891
|
*/
|
|
@@ -5880,7 +5904,7 @@ interface ServerObject {
|
|
|
5880
5904
|
*
|
|
5881
5905
|
* This object MAY be extended with {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.4.md#specification-extensions Specification Extensions}.
|
|
5882
5906
|
*/
|
|
5883
|
-
interface ServerVariableObject {
|
|
5907
|
+
interface ServerVariableObject extends SpecificationExtensions {
|
|
5884
5908
|
/**
|
|
5885
5909
|
* **REQUIRED**. The default value to use for substitution, which SHALL be sent if an alternate value is _not_ supplied. If the {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.4.md#server-variable-enum `enum`} is defined, the value SHOULD exist in the enum's values. Note that this behavior is different from the {@link https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.4.md#schema-object Schema Object}'s `default` keyword, which documents the receiver's behavior rather than inserting the value into the data.
|
|
5886
5910
|
*/
|
|
@@ -5906,7 +5930,7 @@ interface ServerVariableObject {
|
|
|
5906
5930
|
* description: Pets operations
|
|
5907
5931
|
* ```
|
|
5908
5932
|
*/
|
|
5909
|
-
interface TagObject {
|
|
5933
|
+
interface TagObject extends SpecificationExtensions {
|
|
5910
5934
|
/**
|
|
5911
5935
|
* A description for the tag. {@link https://spec.commonmark.org/ CommonMark syntax} MAY be used for rich text representation.
|
|
5912
5936
|
*/
|
|
@@ -5934,7 +5958,7 @@ interface TagObject {
|
|
|
5934
5958
|
*
|
|
5935
5959
|
* TODO: examples
|
|
5936
5960
|
*/
|
|
5937
|
-
interface XMLObject {
|
|
5961
|
+
interface XMLObject extends SpecificationExtensions {
|
|
5938
5962
|
/**
|
|
5939
5963
|
* Declares whether the property definition translates to an attribute instead of an element. Default value is `false`.
|
|
5940
5964
|
*/
|
|
@@ -6250,10 +6274,8 @@ type Config$13 = Plugin.Name<'@hey-api/sdk'> & Plugin.Hooks & {
|
|
|
6250
6274
|
* Set `instance` to create an instantiable SDK. Using `true` will use the
|
|
6251
6275
|
* default instance name; in practice, you want to define your own by passing
|
|
6252
6276
|
* a string value.
|
|
6253
|
-
*
|
|
6254
|
-
* @default false
|
|
6255
6277
|
*/
|
|
6256
|
-
instance: string
|
|
6278
|
+
instance: string;
|
|
6257
6279
|
/**
|
|
6258
6280
|
* Customise the name of methods within the service. By default,
|
|
6259
6281
|
* {@link IR.OperationObject.id} is used.
|
|
@@ -6353,8 +6375,8 @@ declare abstract class TsDsl<T extends ts.Node = ts.Node> implements Node<T> {
|
|
|
6353
6375
|
parent?: Node;
|
|
6354
6376
|
root?: Node;
|
|
6355
6377
|
symbol?: Symbol;
|
|
6356
|
-
toAst(): T;
|
|
6357
|
-
readonly '~brand'
|
|
6378
|
+
toAst(_: AstContext): T;
|
|
6379
|
+
readonly '~brand' = "heyapi.node";
|
|
6358
6380
|
/** Branding property to identify the DSL class at runtime. */
|
|
6359
6381
|
abstract readonly '~dsl': string;
|
|
6360
6382
|
/** Conditionally applies a callback to this builder. */
|
|
@@ -6362,8 +6384,8 @@ declare abstract class TsDsl<T extends ts.Node = ts.Node> implements Node<T> {
|
|
|
6362
6384
|
$if<T extends TsDsl, V, R extends TsDsl = T>(this: T, value: V, ifTrue: (v: Exclude<V, false | null | undefined>) => R | void, ifFalse?: (v: Extract<V, false | null | undefined>) => R | void): R | T;
|
|
6363
6385
|
$if<T extends TsDsl, V, R extends TsDsl = T>(this: T, value: V, ifTrue: () => R | void, ifFalse?: () => R | void): R | T;
|
|
6364
6386
|
protected $maybeId<T extends string | ts.Expression>(expr: T): T extends string ? ts.Identifier : T;
|
|
6365
|
-
protected $node<I>(value: I): NodeOfMaybe<I>;
|
|
6366
|
-
protected $type<I>(value: I, args?: ReadonlyArray<ts.TypeNode>): TypeOfMaybe<I>;
|
|
6387
|
+
protected $node<I>(ctx: AstContext, value: I): NodeOfMaybe<I>;
|
|
6388
|
+
protected $type<I>(ctx: AstContext, value: I, args?: ReadonlyArray<ts.TypeNode>): TypeOfMaybe<I>;
|
|
6367
6389
|
/** Unwraps nested nodes into raw TypeScript AST. */
|
|
6368
6390
|
private unwrap;
|
|
6369
6391
|
}
|
|
@@ -6375,19 +6397,9 @@ type TypeOfMaybe<I> = undefined extends I ? TypeOf<NonNullable<FromRef<I>>> | un
|
|
|
6375
6397
|
type TypeOf<I> = I extends ReadonlyArray<infer U> ? ReadonlyArray<TypeOf<U>> : I extends string ? ts.TypeNode : I extends boolean ? ts.LiteralTypeNode : I extends TsDsl<infer N> ? N : I extends ts.TypeNode ? I : never;
|
|
6376
6398
|
//#endregion
|
|
6377
6399
|
//#region src/ts-dsl/mixins/types.d.ts
|
|
6378
|
-
type BaseCtor<T> = abstract new (...args: any
|
|
6379
|
-
type
|
|
6380
|
-
|
|
6381
|
-
//#region src/ts-dsl/mixins/type-args.d.ts
|
|
6382
|
-
type Arg$1 = Symbol | string | MaybeTsDsl<TypeTsDsl>;
|
|
6383
|
-
interface TypeArgsMethods extends Node {
|
|
6384
|
-
/** Returns the type arguments as an array of ts.TypeNode nodes. */
|
|
6385
|
-
$generics(): ReadonlyArray<ts.TypeNode> | undefined;
|
|
6386
|
-
/** Adds a single type argument (e.g. `string` in `Foo<string>`). */
|
|
6387
|
-
generic(arg: Arg$1): this;
|
|
6388
|
-
/** Adds type arguments (e.g. `Map<string, number>`). */
|
|
6389
|
-
generics(...args: ReadonlyArray<Arg$1>): this;
|
|
6390
|
-
}
|
|
6400
|
+
type BaseCtor<T> = abstract new (...args: Array<any>) => TsDsl<T>;
|
|
6401
|
+
type DropFirst<T extends Array<any>> = T extends [any, ...infer Rest] ? Rest : never;
|
|
6402
|
+
type MixinCtor<T extends BaseCtor<any>, K$1> = abstract new (...args: Array<any>) => InstanceType<T> & K$1;
|
|
6391
6403
|
//#endregion
|
|
6392
6404
|
//#region src/ts-dsl/mixins/optional.d.ts
|
|
6393
6405
|
interface OptionalMethods extends Node {
|
|
@@ -6398,31 +6410,18 @@ interface OptionalMethods extends Node {
|
|
|
6398
6410
|
required(condition?: boolean): this;
|
|
6399
6411
|
}
|
|
6400
6412
|
//#endregion
|
|
6401
|
-
//#region src/ts-dsl/expr/as.d.ts
|
|
6402
|
-
type AsExpr = Symbol | string | MaybeTsDsl<ts.Expression>;
|
|
6403
|
-
type AsType = Symbol | string | TypeTsDsl;
|
|
6404
|
-
declare const Mixed$52: MixinCtor<MixinCtor<abstract new () => TsDsl<ts.AsExpression>, ExprMethods>, AsMethods>;
|
|
6405
|
-
declare class AsTsDsl extends Mixed$52 {
|
|
6406
|
-
readonly '~dsl' = "AsTsDsl";
|
|
6407
|
-
protected expr: Ref<AsExpr>;
|
|
6408
|
-
protected type: Ref<AsType>;
|
|
6409
|
-
constructor(expr: AsExpr, type: AsType);
|
|
6410
|
-
analyze(ctx: AnalysisContext): void;
|
|
6411
|
-
toAst(): ts.AsExpression;
|
|
6412
|
-
}
|
|
6413
|
-
//#endregion
|
|
6414
6413
|
//#region src/ts-dsl/mixins/as.d.ts
|
|
6415
6414
|
interface AsMethods extends Node {
|
|
6416
6415
|
/** Creates an `as` type assertion expression (e.g. `value as Type`). */
|
|
6417
|
-
as(
|
|
6416
|
+
as(...args: DropFirst<Parameters<typeof f.as>>): ReturnType<typeof f.as>;
|
|
6418
6417
|
}
|
|
6419
6418
|
//#endregion
|
|
6420
6419
|
//#region src/ts-dsl/expr/binary.d.ts
|
|
6421
6420
|
type Expr$3 = Symbol | string | MaybeTsDsl<ts.Expression>;
|
|
6422
6421
|
type Op$1 = Operator | ts.BinaryOperator;
|
|
6423
|
-
type Operator = '!=' | '!==' | '&&' | '*' | '+' | '-' | '/' | '<' | '<=' | '=' | '==' | '===' | '>' | '>=' | '??' | '||';
|
|
6424
|
-
declare const Mixed$
|
|
6425
|
-
declare class BinaryTsDsl extends Mixed$
|
|
6422
|
+
type Operator = '!=' | '!==' | '&&' | '*' | '+' | '-' | '/' | '<' | '<=' | '=' | '==' | '===' | '>' | '>=' | '??' | '??=' | '||';
|
|
6423
|
+
declare const Mixed$52: MixinCtor<MixinCtor<abstract new () => TsDsl<ts.BinaryExpression>, ExprMethods>, AsMethods>;
|
|
6424
|
+
declare class BinaryTsDsl extends Mixed$52 {
|
|
6426
6425
|
readonly '~dsl' = "BinaryTsDsl";
|
|
6427
6426
|
protected _base: Ref<Expr$3>;
|
|
6428
6427
|
protected _expr?: Ref<Expr$3>;
|
|
@@ -6455,13 +6454,15 @@ declare class BinaryTsDsl extends Mixed$51 {
|
|
|
6455
6454
|
minus(expr: Expr$3): this;
|
|
6456
6455
|
/** Strict inequality — `this !== expr` */
|
|
6457
6456
|
neq(expr: Expr$3): this;
|
|
6457
|
+
/** Nullish assignment — `this ??= expr` */
|
|
6458
|
+
nullishAssign(expr: Expr$3): this;
|
|
6458
6459
|
/** Logical OR — `this || expr` */
|
|
6459
6460
|
or(expr: Expr$3): this;
|
|
6460
6461
|
/** Addition — `this + expr` */
|
|
6461
6462
|
plus(expr: Expr$3): this;
|
|
6462
6463
|
/** Multiplication — `this * expr` */
|
|
6463
6464
|
times(expr: Expr$3): this;
|
|
6464
|
-
toAst(): ts.BinaryExpression;
|
|
6465
|
+
toAst(ctx: AstContext): ts.BinaryExpression;
|
|
6465
6466
|
/** Sets the binary operator and right-hand operand for this expression. */
|
|
6466
6467
|
private opAndExpr;
|
|
6467
6468
|
private opToToken;
|
|
@@ -6496,6 +6497,8 @@ interface OperatorMethods extends Node {
|
|
|
6496
6497
|
minus(expr: Expr$2): BinaryTsDsl;
|
|
6497
6498
|
/** Strict inequality — `this !== expr` */
|
|
6498
6499
|
neq(expr: Expr$2): BinaryTsDsl;
|
|
6500
|
+
/** Nullish assignment — `this ??= expr` */
|
|
6501
|
+
nullishAssign(expr: Expr$2): BinaryTsDsl;
|
|
6499
6502
|
/** Logical OR — `this || expr` */
|
|
6500
6503
|
or(expr: Expr$2): BinaryTsDsl;
|
|
6501
6504
|
/** Addition — `this + expr` */
|
|
@@ -6507,55 +6510,45 @@ interface OperatorMethods extends Node {
|
|
|
6507
6510
|
//#region src/ts-dsl/expr/attr.d.ts
|
|
6508
6511
|
type AttrLeft = Symbol | string | MaybeTsDsl<ts.Expression>;
|
|
6509
6512
|
type AttrRight = Symbol | string | ts.MemberName | number;
|
|
6510
|
-
|
|
6511
|
-
declare
|
|
6513
|
+
type AttrCtor = (left: AttrLeft, right: AttrRight) => AttrTsDsl;
|
|
6514
|
+
declare const Mixed$51: MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.PropertyAccessExpression | ts.ElementAccessExpression>, OptionalMethods>, OperatorMethods>, ExprMethods>, AsMethods>;
|
|
6515
|
+
declare class AttrTsDsl extends Mixed$51 {
|
|
6512
6516
|
readonly '~dsl' = "AttrTsDsl";
|
|
6513
6517
|
protected left: Ref<AttrLeft>;
|
|
6514
6518
|
protected right: Ref<AttrRight>;
|
|
6515
6519
|
constructor(left: AttrLeft, right: AttrRight);
|
|
6516
6520
|
analyze(ctx: AnalysisContext): void;
|
|
6517
|
-
toAst(): ts.PropertyAccessExpression | ts.ElementAccessExpression;
|
|
6521
|
+
toAst(ctx: AstContext): ts.PropertyAccessExpression | ts.ElementAccessExpression;
|
|
6518
6522
|
}
|
|
6519
6523
|
//#endregion
|
|
6520
6524
|
//#region src/ts-dsl/expr/await.d.ts
|
|
6521
6525
|
type AwaitExpr = Symbol | string | MaybeTsDsl<ts.Expression>;
|
|
6522
|
-
|
|
6523
|
-
declare
|
|
6526
|
+
type AwaitCtor = (expr: AwaitExpr) => AwaitTsDsl;
|
|
6527
|
+
declare const Mixed$50: MixinCtor<abstract new () => TsDsl<ts.AwaitExpression>, ExprMethods>;
|
|
6528
|
+
declare class AwaitTsDsl extends Mixed$50 {
|
|
6524
6529
|
readonly '~dsl' = "AwaitTsDsl";
|
|
6525
6530
|
protected _awaitExpr: Ref<AwaitExpr>;
|
|
6526
6531
|
constructor(expr: AwaitExpr);
|
|
6527
6532
|
analyze(ctx: AnalysisContext): void;
|
|
6528
|
-
toAst(): ts.AwaitExpression;
|
|
6529
|
-
}
|
|
6530
|
-
//#endregion
|
|
6531
|
-
//#region src/ts-dsl/stmt/return.d.ts
|
|
6532
|
-
type ReturnExpr = Symbol | string | MaybeTsDsl<ts.Expression>;
|
|
6533
|
-
declare const Mixed$48: abstract new () => TsDsl<ts.ReturnStatement>;
|
|
6534
|
-
declare class ReturnTsDsl extends Mixed$48 {
|
|
6535
|
-
readonly '~dsl' = "ReturnTsDsl";
|
|
6536
|
-
protected _returnExpr?: Ref<ReturnExpr>;
|
|
6537
|
-
constructor(expr?: ReturnExpr);
|
|
6538
|
-
analyze(ctx: AnalysisContext): void;
|
|
6539
|
-
toAst(): ts.ReturnStatement;
|
|
6533
|
+
toAst(ctx: AstContext): ts.AwaitExpression;
|
|
6540
6534
|
}
|
|
6541
6535
|
//#endregion
|
|
6542
|
-
//#region src/ts-dsl/mixins/
|
|
6543
|
-
|
|
6544
|
-
|
|
6545
|
-
|
|
6546
|
-
|
|
6547
|
-
|
|
6548
|
-
|
|
6549
|
-
|
|
6550
|
-
|
|
6551
|
-
return(): ReturnTsDsl;
|
|
6536
|
+
//#region src/ts-dsl/mixins/type-args.d.ts
|
|
6537
|
+
type Arg$1 = Symbol | string | MaybeTsDsl<TypeTsDsl>;
|
|
6538
|
+
interface TypeArgsMethods extends Node {
|
|
6539
|
+
/** Returns the type arguments as an array of ts.TypeNode nodes. */
|
|
6540
|
+
$generics(ctx: AstContext): ReadonlyArray<ts.TypeNode> | undefined;
|
|
6541
|
+
/** Adds a single type argument (e.g. `string` in `Foo<string>`). */
|
|
6542
|
+
generic(arg: Arg$1): this;
|
|
6543
|
+
/** Adds type arguments (e.g. `Map<string, number>`). */
|
|
6544
|
+
generics(...args: ReadonlyArray<Arg$1>): this;
|
|
6552
6545
|
}
|
|
6553
6546
|
//#endregion
|
|
6554
6547
|
//#region src/ts-dsl/mixins/args.d.ts
|
|
6555
6548
|
type Arg = Symbol | string | MaybeTsDsl<ts.Expression>;
|
|
6556
6549
|
interface ArgsMethods extends Node {
|
|
6557
6550
|
/** Renders the arguments into an array of `Expression`s. */
|
|
6558
|
-
$args(): ReadonlyArray<ts.Expression>;
|
|
6551
|
+
$args(ctx: AstContext): ReadonlyArray<ts.Expression>;
|
|
6559
6552
|
/** Adds a single expression argument. */
|
|
6560
6553
|
arg(arg: Arg | undefined): this;
|
|
6561
6554
|
/** Adds one or more expression arguments. */
|
|
@@ -6566,13 +6559,259 @@ interface ArgsMethods extends Node {
|
|
|
6566
6559
|
type CallCallee = string | MaybeTsDsl<ts.Expression>;
|
|
6567
6560
|
type CallArg = Symbol | string | MaybeTsDsl<ts.Expression>;
|
|
6568
6561
|
type CallArgs = ReadonlyArray<CallArg | undefined>;
|
|
6569
|
-
|
|
6570
|
-
declare
|
|
6562
|
+
type CallCtor = (callee: CallCallee, ...args: CallArgs) => CallTsDsl;
|
|
6563
|
+
declare const Mixed$49: MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.CallExpression>, TypeArgsMethods>, ExprMethods>, AsMethods>, ArgsMethods>;
|
|
6564
|
+
declare class CallTsDsl extends Mixed$49 {
|
|
6571
6565
|
readonly '~dsl' = "CallTsDsl";
|
|
6572
6566
|
protected _callee: CallCallee;
|
|
6573
6567
|
constructor(callee: CallCallee, ...args: CallArgs);
|
|
6574
6568
|
analyze(ctx: AnalysisContext): void;
|
|
6575
|
-
toAst(): ts.CallExpression;
|
|
6569
|
+
toAst(ctx: AstContext): ts.CallExpression;
|
|
6570
|
+
}
|
|
6571
|
+
//#endregion
|
|
6572
|
+
//#region src/ts-dsl/expr/typeof.d.ts
|
|
6573
|
+
type TypeOfExpr = string | MaybeTsDsl<ts.Expression>;
|
|
6574
|
+
type TypeOfExprCtor = (expr: TypeOfExpr) => TypeOfExprTsDsl;
|
|
6575
|
+
declare const Mixed$48: MixinCtor<abstract new () => TsDsl<ts.TypeOfExpression>, OperatorMethods>;
|
|
6576
|
+
declare class TypeOfExprTsDsl extends Mixed$48 {
|
|
6577
|
+
readonly '~dsl' = "TypeOfExprTsDsl";
|
|
6578
|
+
protected _expr: TypeOfExpr;
|
|
6579
|
+
constructor(expr: TypeOfExpr);
|
|
6580
|
+
analyze(ctx: AnalysisContext): void;
|
|
6581
|
+
toAst(ctx: AstContext): ts.TypeOfExpression;
|
|
6582
|
+
}
|
|
6583
|
+
//#endregion
|
|
6584
|
+
//#region src/ts-dsl/stmt/return.d.ts
|
|
6585
|
+
type ReturnExpr = Symbol | string | MaybeTsDsl<ts.Expression>;
|
|
6586
|
+
type ReturnCtor = (expr?: ReturnExpr) => ReturnTsDsl;
|
|
6587
|
+
declare const Mixed$47: abstract new () => TsDsl<ts.ReturnStatement>;
|
|
6588
|
+
declare class ReturnTsDsl extends Mixed$47 {
|
|
6589
|
+
readonly '~dsl' = "ReturnTsDsl";
|
|
6590
|
+
protected _returnExpr?: Ref<ReturnExpr>;
|
|
6591
|
+
constructor(expr?: ReturnExpr);
|
|
6592
|
+
analyze(ctx: AnalysisContext): void;
|
|
6593
|
+
toAst(ctx: AstContext): ts.ReturnStatement;
|
|
6594
|
+
}
|
|
6595
|
+
//#endregion
|
|
6596
|
+
//#region src/ts-dsl/mixins/type-expr.d.ts
|
|
6597
|
+
interface TypeExprMethods extends Node {
|
|
6598
|
+
/** Creates an indexed-access type (e.g. `Foo<T>[K]`). */
|
|
6599
|
+
idx(this: Parameters<typeof f.type.idx>[0], ...args: DropFirst<Parameters<typeof f.type.idx>>): ReturnType<typeof f.type.idx>;
|
|
6600
|
+
/** Shorthand: builds `keyof T`. */
|
|
6601
|
+
keyof(this: MaybeTsDsl<TypeTsDsl>): ReturnType<typeof f.type.operator>;
|
|
6602
|
+
/** Shorthand: builds `readonly T`. */
|
|
6603
|
+
readonly(this: MaybeTsDsl<TypeTsDsl>): ReturnType<typeof f.type.operator>;
|
|
6604
|
+
/** Create a TypeExpr node representing ReturnType<this>. */
|
|
6605
|
+
returnType(this: Parameters<typeof f.type.query>[0], ...args: DropFirst<Parameters<typeof f.type.query>>): ReturnType<typeof f.type.expr>;
|
|
6606
|
+
/** Create a TypeOfExpr node representing typeof this. */
|
|
6607
|
+
typeofExpr(this: Parameters<typeof f.typeofExpr>[0], ...args: DropFirst<Parameters<typeof f.typeofExpr>>): ReturnType<typeof f.typeofExpr>;
|
|
6608
|
+
/** Create a TypeQuery node representing typeof this. */
|
|
6609
|
+
typeofType(this: Parameters<typeof f.type.query>[0], ...args: DropFirst<Parameters<typeof f.type.query>>): ReturnType<typeof f.type.query>;
|
|
6610
|
+
/** Shorthand: builds `unique T`. */
|
|
6611
|
+
unique(this: MaybeTsDsl<TypeTsDsl>): ReturnType<typeof f.type.operator>;
|
|
6612
|
+
}
|
|
6613
|
+
//#endregion
|
|
6614
|
+
//#region src/ts-dsl/type/attr.d.ts
|
|
6615
|
+
type Base$2 = Symbol | string | MaybeTsDsl<ts.EntityName>;
|
|
6616
|
+
type Right = Symbol | string | ts.Identifier;
|
|
6617
|
+
declare const Mixed$46: MixinCtor<abstract new () => TsDsl<ts.QualifiedName>, TypeExprMethods>;
|
|
6618
|
+
declare class TypeAttrTsDsl extends Mixed$46 {
|
|
6619
|
+
readonly '~dsl' = "TypeAttrTsDsl";
|
|
6620
|
+
protected _base?: Ref<Base$2>;
|
|
6621
|
+
protected _right: Ref<Right>;
|
|
6622
|
+
constructor(base: Base$2 | Ref<Base$2>, right: string | ts.Identifier);
|
|
6623
|
+
constructor(right: Right);
|
|
6624
|
+
analyze(ctx: AnalysisContext): void;
|
|
6625
|
+
base(base?: Base$2 | Ref<Base$2>): this;
|
|
6626
|
+
right(right: Right): this;
|
|
6627
|
+
toAst(ctx: AstContext): ts.QualifiedName;
|
|
6628
|
+
}
|
|
6629
|
+
//#endregion
|
|
6630
|
+
//#region src/ts-dsl/type/expr.d.ts
|
|
6631
|
+
type TypeExprName = Symbol | string;
|
|
6632
|
+
type TypeExprExpr = TypeExprName | TypeAttrTsDsl;
|
|
6633
|
+
type TypeExprFn = (t: TypeExprTsDsl) => void;
|
|
6634
|
+
type TypeExprCtor = (nameOrFn?: TypeExprName | TypeExprFn, fn?: TypeExprFn) => TypeExprTsDsl;
|
|
6635
|
+
declare const Mixed$45: MixinCtor<MixinCtor<abstract new () => TsDsl<ts.TypeReferenceNode>, TypeExprMethods>, TypeArgsMethods>;
|
|
6636
|
+
declare class TypeExprTsDsl extends Mixed$45 {
|
|
6637
|
+
readonly '~dsl' = "TypeExprTsDsl";
|
|
6638
|
+
protected _exprInput?: Ref<TypeExprExpr>;
|
|
6639
|
+
constructor();
|
|
6640
|
+
constructor(fn: TypeExprFn);
|
|
6641
|
+
constructor(name: TypeExprName);
|
|
6642
|
+
constructor(name: TypeExprName, fn?: TypeExprFn);
|
|
6643
|
+
analyze(ctx: AnalysisContext): void;
|
|
6644
|
+
/** Accesses a nested type (e.g. `Foo.Bar`). */
|
|
6645
|
+
attr(right: string | ts.Identifier | TypeAttrTsDsl): this;
|
|
6646
|
+
toAst(ctx: AstContext): ts.TypeReferenceNode;
|
|
6647
|
+
}
|
|
6648
|
+
//#endregion
|
|
6649
|
+
//#region src/ts-dsl/type/idx.d.ts
|
|
6650
|
+
type Base$1 = string | MaybeTsDsl<ts.TypeNode>;
|
|
6651
|
+
type Index = string | number | MaybeTsDsl<ts.TypeNode>;
|
|
6652
|
+
type TypeIdxCtor = (base: Base$1, index: Index) => TypeIdxTsDsl;
|
|
6653
|
+
declare const Mixed$44: MixinCtor<abstract new () => TsDsl<ts.IndexedAccessTypeNode>, TypeExprMethods>;
|
|
6654
|
+
declare class TypeIdxTsDsl extends Mixed$44 {
|
|
6655
|
+
readonly '~dsl' = "TypeIdxTsDsl";
|
|
6656
|
+
protected _base: Base$1;
|
|
6657
|
+
protected _index: Index;
|
|
6658
|
+
constructor(base: Base$1, index: Index);
|
|
6659
|
+
analyze(ctx: AnalysisContext): void;
|
|
6660
|
+
base(base: Base$1): this;
|
|
6661
|
+
index(index: Index): this;
|
|
6662
|
+
toAst(ctx: AstContext): ts.IndexedAccessTypeNode;
|
|
6663
|
+
}
|
|
6664
|
+
//#endregion
|
|
6665
|
+
//#region src/ts-dsl/type/operator.d.ts
|
|
6666
|
+
type Op = ts.SyntaxKind.KeyOfKeyword | ts.SyntaxKind.ReadonlyKeyword | ts.SyntaxKind.UniqueKeyword;
|
|
6667
|
+
type Type$2 = string | MaybeTsDsl<ts.TypeNode>;
|
|
6668
|
+
type TypeOperatorCtor = () => TypeOperatorTsDsl;
|
|
6669
|
+
declare const Mixed$43: abstract new () => TsDsl<ts.TypeOperatorNode>;
|
|
6670
|
+
/**
|
|
6671
|
+
* Builds a TypeScript `TypeOperatorNode`, such as:
|
|
6672
|
+
*
|
|
6673
|
+
* - `keyof T`
|
|
6674
|
+
* - `readonly U`
|
|
6675
|
+
* - `unique V`
|
|
6676
|
+
*
|
|
6677
|
+
* This DSL provides both a generic `.operator()` API and convenient
|
|
6678
|
+
* shorthand methods (`.keyof()`, `.readonly()`, `.unique()`).
|
|
6679
|
+
*
|
|
6680
|
+
* The node will throw during render if required fields are missing.
|
|
6681
|
+
*/
|
|
6682
|
+
declare class TypeOperatorTsDsl extends Mixed$43 {
|
|
6683
|
+
readonly '~dsl' = "TypeOperatorTsDsl";
|
|
6684
|
+
protected _op?: Op;
|
|
6685
|
+
protected _type?: Type$2;
|
|
6686
|
+
analyze(ctx: AnalysisContext): void;
|
|
6687
|
+
/** Shorthand: builds `keyof T`. */
|
|
6688
|
+
keyof(type: Type$2): this;
|
|
6689
|
+
/** Sets the operator explicitly. */
|
|
6690
|
+
operator(op: Op): this;
|
|
6691
|
+
/** Shorthand: builds `readonly T`. */
|
|
6692
|
+
readonly(type: Type$2): this;
|
|
6693
|
+
/** Sets the target type of the operator. */
|
|
6694
|
+
type(type: Type$2): this;
|
|
6695
|
+
/** Shorthand: builds `unique T`. */
|
|
6696
|
+
unique(type: Type$2): this;
|
|
6697
|
+
toAst(ctx: AstContext): ts.TypeOperatorNode;
|
|
6698
|
+
/** Throws if required fields are not set. */
|
|
6699
|
+
$validate(): asserts this is this & {
|
|
6700
|
+
_op: Op;
|
|
6701
|
+
_type: Type$2;
|
|
6702
|
+
};
|
|
6703
|
+
private missingRequiredCalls;
|
|
6704
|
+
}
|
|
6705
|
+
//#endregion
|
|
6706
|
+
//#region src/ts-dsl/type/query.d.ts
|
|
6707
|
+
type TypeQueryExpr = string | MaybeTsDsl<TypeTsDsl | ts.Expression>;
|
|
6708
|
+
type TypeQueryCtor = (expr: TypeQueryExpr) => TypeQueryTsDsl;
|
|
6709
|
+
declare const Mixed$42: MixinCtor<abstract new () => TsDsl<ts.TypeQueryNode>, TypeExprMethods>;
|
|
6710
|
+
declare class TypeQueryTsDsl extends Mixed$42 {
|
|
6711
|
+
readonly '~dsl' = "TypeQueryTsDsl";
|
|
6712
|
+
protected _expr: TypeQueryExpr;
|
|
6713
|
+
constructor(expr: TypeQueryExpr);
|
|
6714
|
+
analyze(ctx: AnalysisContext): void;
|
|
6715
|
+
toAst(ctx: AstContext): ts.TypeQueryNode;
|
|
6716
|
+
}
|
|
6717
|
+
//#endregion
|
|
6718
|
+
//#region src/ts-dsl/utils/factories.d.ts
|
|
6719
|
+
type Ctor = (...args: Array<any>) => any;
|
|
6720
|
+
type Factory<T extends Ctor> = {
|
|
6721
|
+
(...args: Parameters<T>): ReturnType<T>;
|
|
6722
|
+
/** Sets the implementation of this factory. */
|
|
6723
|
+
set(fn: T): void;
|
|
6724
|
+
};
|
|
6725
|
+
declare const f: {
|
|
6726
|
+
/** Factory for creating `as` type assertion expressions (e.g. `value as Type`). */
|
|
6727
|
+
as: Factory<AsCtor>;
|
|
6728
|
+
/** Factory for creating property access expressions (e.g. `obj.foo`). */
|
|
6729
|
+
attr: Factory<AttrCtor>;
|
|
6730
|
+
/** Factory for creating await expressions (e.g. `await promise`). */
|
|
6731
|
+
await: Factory<AwaitCtor>;
|
|
6732
|
+
/** Factory for creating function or method call expressions (e.g. `fn(arg)`). */
|
|
6733
|
+
call: Factory<CallCtor>;
|
|
6734
|
+
/** Factory for creating return statements. */
|
|
6735
|
+
return: Factory<ReturnCtor>;
|
|
6736
|
+
/** Factories for creating type nodes. */
|
|
6737
|
+
type: {
|
|
6738
|
+
/** Factory for creating basic type references or type expressions (e.g. Foo or Foo<T>). */
|
|
6739
|
+
expr: Factory<TypeExprCtor>;
|
|
6740
|
+
/** Factory for creating indexed-access types (e.g. `Foo<T>[K]`). */
|
|
6741
|
+
idx: Factory<TypeIdxCtor>;
|
|
6742
|
+
/** Factory for creating type operator nodes (e.g. `readonly T`, `keyof T`, `unique T`). */
|
|
6743
|
+
operator: Factory<TypeOperatorCtor>;
|
|
6744
|
+
/** Factory for creating type query nodes (e.g. `typeof Foo`). */
|
|
6745
|
+
query: Factory<TypeQueryCtor>;
|
|
6746
|
+
};
|
|
6747
|
+
/** Factory for creating `typeof` expressions (e.g. `typeof value`). */
|
|
6748
|
+
typeofExpr: Factory<TypeOfExprCtor>;
|
|
6749
|
+
};
|
|
6750
|
+
//#endregion
|
|
6751
|
+
//#region src/ts-dsl/mixins/expr.d.ts
|
|
6752
|
+
interface ExprMethods extends Node {
|
|
6753
|
+
/** Accesses a property on the current expression (e.g. `this.foo`). */
|
|
6754
|
+
attr(...args: DropFirst<Parameters<typeof f.attr>>): ReturnType<typeof f.attr>;
|
|
6755
|
+
/** Awaits the current expression (e.g. `await expr`). */
|
|
6756
|
+
await(): ReturnType<typeof f.await>;
|
|
6757
|
+
/** Calls the current expression (e.g. `fn(arg1, arg2)`). */
|
|
6758
|
+
call(...args: DropFirst<Parameters<typeof f.call>>): ReturnType<typeof f.call>;
|
|
6759
|
+
/** Produces a `return` statement returning the current expression. */
|
|
6760
|
+
return(): ReturnType<typeof f.return>;
|
|
6761
|
+
}
|
|
6762
|
+
//#endregion
|
|
6763
|
+
//#region src/ts-dsl/expr/as.d.ts
|
|
6764
|
+
type AsExpr = Symbol | string | MaybeTsDsl<ts.Expression>;
|
|
6765
|
+
type AsType = Symbol | string | TypeTsDsl;
|
|
6766
|
+
type AsCtor = (expr: AsExpr, type: AsType) => AsTsDsl;
|
|
6767
|
+
declare const Mixed$41: MixinCtor<MixinCtor<abstract new () => TsDsl<ts.AsExpression>, ExprMethods>, AsMethods>;
|
|
6768
|
+
declare class AsTsDsl extends Mixed$41 {
|
|
6769
|
+
readonly '~dsl' = "AsTsDsl";
|
|
6770
|
+
protected expr: Ref<AsExpr>;
|
|
6771
|
+
protected type: Ref<AsType>;
|
|
6772
|
+
constructor(expr: AsExpr, type: AsType);
|
|
6773
|
+
analyze(ctx: AnalysisContext): void;
|
|
6774
|
+
toAst(ctx: AstContext): ts.AsExpression;
|
|
6775
|
+
}
|
|
6776
|
+
//#endregion
|
|
6777
|
+
//#region src/ts-dsl/mixins/value.d.ts
|
|
6778
|
+
type ValueExpr = string | MaybeTsDsl<ts.Expression>;
|
|
6779
|
+
interface ValueMethods extends Node {
|
|
6780
|
+
$value(ctx: AstContext): ts.Expression | undefined;
|
|
6781
|
+
/** Sets the initializer expression (e.g. `= expr`). */
|
|
6782
|
+
assign(expr: ValueExpr): this;
|
|
6783
|
+
}
|
|
6784
|
+
//#endregion
|
|
6785
|
+
//#region src/ts-dsl/mixins/pattern.d.ts
|
|
6786
|
+
interface PatternMethods extends Node {
|
|
6787
|
+
/** Renders the pattern into a `BindingName`. */
|
|
6788
|
+
$pattern(ctx: AstContext): ts.BindingName | undefined;
|
|
6789
|
+
/** Defines an array binding pattern. */
|
|
6790
|
+
array(...props: ReadonlyArray<string> | [ReadonlyArray<string>]): this;
|
|
6791
|
+
/** Defines an object binding pattern. */
|
|
6792
|
+
object(...props: ReadonlyArray<MaybeArray$1<string> | Record<string, string>>): this;
|
|
6793
|
+
/** Adds a spread element (e.g. `...args`, `...options`) to the pattern. */
|
|
6794
|
+
spread(name: string): this;
|
|
6795
|
+
}
|
|
6796
|
+
//#endregion
|
|
6797
|
+
//#region src/ts-dsl/layout/hint.d.ts
|
|
6798
|
+
type HintMaybeLazy<T> = ((ctx: AstContext) => T) | T;
|
|
6799
|
+
type HintFn = (d: HintTsDsl) => void;
|
|
6800
|
+
type HintLines = HintMaybeLazy<MaybeArray$1<string>>;
|
|
6801
|
+
declare class HintTsDsl extends TsDsl<ts.Node> {
|
|
6802
|
+
readonly '~dsl' = "HintTsDsl";
|
|
6803
|
+
protected _lines: Array<HintLines>;
|
|
6804
|
+
constructor(lines?: HintLines, fn?: HintFn);
|
|
6805
|
+
analyze(ctx: AnalysisContext): void;
|
|
6806
|
+
add(lines: HintLines): this;
|
|
6807
|
+
apply<T extends ts.Node>(ctx: AstContext, node: T): T;
|
|
6808
|
+
toAst(ctx: AstContext): ts.Node;
|
|
6809
|
+
}
|
|
6810
|
+
//#endregion
|
|
6811
|
+
//#region src/ts-dsl/mixins/hint.d.ts
|
|
6812
|
+
interface HintMethods extends Node {
|
|
6813
|
+
$hint<T extends ts.Node>(ctx: AstContext, node: T): T;
|
|
6814
|
+
hint(lines?: HintLines, fn?: HintFn): this;
|
|
6576
6815
|
}
|
|
6577
6816
|
//#endregion
|
|
6578
6817
|
//#region src/ts-dsl/mixins/modifiers.d.ts
|
|
@@ -6670,39 +6909,124 @@ interface StaticMethods extends Modifiers {
|
|
|
6670
6909
|
static(condition?: boolean): this;
|
|
6671
6910
|
}
|
|
6672
6911
|
//#endregion
|
|
6673
|
-
//#region src/ts-dsl/
|
|
6674
|
-
type
|
|
6675
|
-
|
|
6676
|
-
|
|
6677
|
-
|
|
6678
|
-
|
|
6912
|
+
//#region src/ts-dsl/layout/doc.d.ts
|
|
6913
|
+
type DocMaybeLazy<T> = ((ctx: AstContext) => T) | T;
|
|
6914
|
+
type DocFn = (d: DocTsDsl) => void;
|
|
6915
|
+
type DocLines = DocMaybeLazy<MaybeArray$1<string>>;
|
|
6916
|
+
declare class DocTsDsl extends TsDsl<ts.Node> {
|
|
6917
|
+
readonly '~dsl' = "DocTsDsl";
|
|
6918
|
+
protected _lines: Array<DocLines>;
|
|
6919
|
+
constructor(lines?: DocLines, fn?: DocFn);
|
|
6920
|
+
analyze(ctx: AnalysisContext): void;
|
|
6921
|
+
add(lines: DocLines): this;
|
|
6922
|
+
apply<T extends ts.Node>(ctx: AstContext, node: T): T;
|
|
6923
|
+
toAst(ctx: AstContext): ts.Node;
|
|
6679
6924
|
}
|
|
6680
6925
|
//#endregion
|
|
6681
|
-
//#region src/ts-dsl/mixins/
|
|
6682
|
-
interface
|
|
6683
|
-
|
|
6684
|
-
|
|
6685
|
-
|
|
6686
|
-
|
|
6687
|
-
|
|
6688
|
-
|
|
6689
|
-
|
|
6690
|
-
|
|
6926
|
+
//#region src/ts-dsl/mixins/doc.d.ts
|
|
6927
|
+
interface DocMethods extends Node {
|
|
6928
|
+
$docs<T extends ts.Node>(ctx: AstContext, node: T): T;
|
|
6929
|
+
doc(lines?: DocLines, fn?: DocFn): this;
|
|
6930
|
+
}
|
|
6931
|
+
//#endregion
|
|
6932
|
+
//#region src/ts-dsl/stmt/var.d.ts
|
|
6933
|
+
type VarName = Symbol | string;
|
|
6934
|
+
declare const Mixed$40: MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.VariableStatement>, ValueMethods>, PatternMethods>, HintMethods>, ExportMethods>, DocMethods>, DefaultMethods>;
|
|
6935
|
+
declare class VarTsDsl extends Mixed$40 {
|
|
6936
|
+
readonly '~dsl' = "VarTsDsl";
|
|
6937
|
+
protected kind: ts.NodeFlags;
|
|
6938
|
+
protected name?: Ref<VarName>;
|
|
6939
|
+
protected _type?: TypeTsDsl;
|
|
6940
|
+
constructor(name?: VarName);
|
|
6941
|
+
analyze(ctx: AnalysisContext): void;
|
|
6942
|
+
const(): this;
|
|
6943
|
+
let(): this;
|
|
6944
|
+
/** Sets the variable type. */
|
|
6945
|
+
type(type: string | TypeTsDsl): this;
|
|
6946
|
+
var(): this;
|
|
6947
|
+
toAst(ctx: AstContext): ts.VariableStatement;
|
|
6948
|
+
}
|
|
6949
|
+
//#endregion
|
|
6950
|
+
//#region src/ts-dsl/decl/decorator.d.ts
|
|
6951
|
+
type DecoratorName = Symbol | string | MaybeTsDsl<ts.Expression>;
|
|
6952
|
+
declare const Mixed$39: MixinCtor<abstract new () => TsDsl<ts.Decorator>, ArgsMethods>;
|
|
6953
|
+
declare class DecoratorTsDsl extends Mixed$39 {
|
|
6954
|
+
readonly '~dsl' = "DecoratorTsDsl";
|
|
6955
|
+
protected name: Ref<DecoratorName>;
|
|
6956
|
+
constructor(name: DecoratorName, ...args: ReadonlyArray<string | MaybeTsDsl<ts.Expression>>);
|
|
6957
|
+
analyze(ctx: AnalysisContext): void;
|
|
6958
|
+
toAst(ctx: AstContext): ts.Decorator;
|
|
6959
|
+
}
|
|
6960
|
+
//#endregion
|
|
6961
|
+
//#region src/ts-dsl/decl/member.d.ts
|
|
6962
|
+
type Value$2 = string | number | MaybeTsDsl<ts.Expression>;
|
|
6963
|
+
type ValueFn$1 = Value$2 | ((m: EnumMemberTsDsl) => void);
|
|
6964
|
+
declare const Mixed$38: MixinCtor<abstract new () => TsDsl<ts.EnumMember>, DocMethods>;
|
|
6965
|
+
declare class EnumMemberTsDsl extends Mixed$38 {
|
|
6966
|
+
readonly '~dsl' = "EnumMemberTsDsl";
|
|
6967
|
+
private _name;
|
|
6968
|
+
private _value?;
|
|
6969
|
+
constructor(name: string, value?: ValueFn$1);
|
|
6970
|
+
analyze(ctx: AnalysisContext): void;
|
|
6971
|
+
/** Sets the enum member value. */
|
|
6972
|
+
value(value?: Value$2): this;
|
|
6973
|
+
toAst(ctx: AstContext): ts.EnumMember;
|
|
6974
|
+
}
|
|
6975
|
+
//#endregion
|
|
6976
|
+
//#region src/ts-dsl/decl/enum.d.ts
|
|
6977
|
+
type EnumName = Symbol | string;
|
|
6978
|
+
type Value$1 = string | number | MaybeTsDsl<ts.Expression>;
|
|
6979
|
+
type ValueFn = Value$1 | ((m: EnumMemberTsDsl) => void);
|
|
6980
|
+
declare const Mixed$37: MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.EnumDeclaration>, ExportMethods>, DocMethods>, ConstMethods>;
|
|
6981
|
+
declare class EnumTsDsl extends Mixed$37 {
|
|
6982
|
+
readonly '~dsl' = "EnumTsDsl";
|
|
6983
|
+
private _members;
|
|
6984
|
+
private _name;
|
|
6985
|
+
constructor(name: EnumName, fn?: (e: EnumTsDsl) => void);
|
|
6986
|
+
analyze(ctx: AnalysisContext): void;
|
|
6987
|
+
/** Adds an enum member. */
|
|
6988
|
+
member(name: string, value?: ValueFn): this;
|
|
6989
|
+
/** Adds multiple enum members. */
|
|
6990
|
+
members(...members: ReadonlyArray<EnumMemberTsDsl>): this;
|
|
6991
|
+
toAst(ctx: AstContext): ts.EnumDeclaration;
|
|
6691
6992
|
}
|
|
6692
6993
|
//#endregion
|
|
6693
6994
|
//#region src/ts-dsl/mixins/decorator.d.ts
|
|
6694
6995
|
interface DecoratorMethods extends Node {
|
|
6695
6996
|
/** Renders the decorators into an array of `ts.Decorator`s. */
|
|
6696
|
-
$decorators(): ReadonlyArray<ts.Decorator>;
|
|
6997
|
+
$decorators(ctx: AstContext): ReadonlyArray<ts.Decorator>;
|
|
6697
6998
|
/** Adds a decorator (e.g. `@sealed({ in: 'root' })`). */
|
|
6698
6999
|
decorator(name: Symbol | string | MaybeTsDsl<ts.Expression>, ...args: ReadonlyArray<string | MaybeTsDsl<ts.Expression>>): this;
|
|
6699
7000
|
}
|
|
6700
7001
|
//#endregion
|
|
7002
|
+
//#region src/ts-dsl/decl/field.d.ts
|
|
7003
|
+
type FieldName = Symbol | string;
|
|
7004
|
+
type FieldType = TypeExprName | TypeTsDsl;
|
|
7005
|
+
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>;
|
|
7006
|
+
declare class FieldTsDsl extends Mixed$36 {
|
|
7007
|
+
readonly '~dsl' = "FieldTsDsl";
|
|
7008
|
+
protected name: FieldName;
|
|
7009
|
+
protected _type?: TypeTsDsl;
|
|
7010
|
+
constructor(name: FieldName, fn?: (f: FieldTsDsl) => void);
|
|
7011
|
+
analyze(ctx: AnalysisContext): void;
|
|
7012
|
+
/** Sets the field type. */
|
|
7013
|
+
type(type: FieldType): this;
|
|
7014
|
+
toAst(ctx: AstContext): ts.PropertyDeclaration;
|
|
7015
|
+
}
|
|
7016
|
+
//#endregion
|
|
7017
|
+
//#region src/ts-dsl/mixins/type-returns.d.ts
|
|
7018
|
+
interface TypeReturnsMethods extends Node {
|
|
7019
|
+
/** Returns the return type node. */
|
|
7020
|
+
$returns(ctx: AstContext): ts.TypeNode | undefined;
|
|
7021
|
+
/** Sets the return type. */
|
|
7022
|
+
returns(type: TypeExprName | TypeTsDsl): this;
|
|
7023
|
+
}
|
|
7024
|
+
//#endregion
|
|
6701
7025
|
//#region src/ts-dsl/decl/param.d.ts
|
|
6702
7026
|
type ParamName = Symbol | string;
|
|
6703
7027
|
type ParamCtor = (name: ParamName | ((p: ParamTsDsl) => void), fn?: (p: ParamTsDsl) => void) => ParamTsDsl;
|
|
6704
|
-
declare const Mixed$
|
|
6705
|
-
declare class ParamTsDsl extends Mixed$
|
|
7028
|
+
declare const Mixed$35: MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.ParameterDeclaration>, ValueMethods>, PatternMethods>, OptionalMethods>, DecoratorMethods>;
|
|
7029
|
+
declare class ParamTsDsl extends Mixed$35 {
|
|
6706
7030
|
readonly '~dsl' = "ParamTsDsl";
|
|
6707
7031
|
protected name?: Ref<ParamName>;
|
|
6708
7032
|
protected _type?: TypeTsDsl;
|
|
@@ -6710,41 +7034,24 @@ declare class ParamTsDsl extends Mixed$46 {
|
|
|
6710
7034
|
analyze(ctx: AnalysisContext): void;
|
|
6711
7035
|
/** Sets the parameter type. */
|
|
6712
7036
|
type(type: string | TypeTsDsl): this;
|
|
6713
|
-
toAst(): ts.ParameterDeclaration;
|
|
7037
|
+
toAst(ctx: AstContext): ts.ParameterDeclaration;
|
|
6714
7038
|
}
|
|
6715
7039
|
//#endregion
|
|
6716
7040
|
//#region src/ts-dsl/mixins/param.d.ts
|
|
6717
7041
|
interface ParamMethods extends Node {
|
|
6718
7042
|
/** Renders the parameters into an array of `ParameterDeclaration`s. */
|
|
6719
|
-
$params(): ReadonlyArray<ts.ParameterDeclaration>;
|
|
7043
|
+
$params(ast: AstContext): ReadonlyArray<ts.ParameterDeclaration>;
|
|
6720
7044
|
/** Adds a parameter. */
|
|
6721
7045
|
param(...args: Parameters<ParamCtor>): this;
|
|
6722
7046
|
/** Adds multiple parameters. */
|
|
6723
7047
|
params(...params: ReadonlyArray<MaybeTsDsl<ts.ParameterDeclaration>>): this;
|
|
6724
7048
|
}
|
|
6725
7049
|
//#endregion
|
|
6726
|
-
//#region src/ts-dsl/layout/doc.d.ts
|
|
6727
|
-
declare class DocTsDsl extends TsDsl<ts.Node> {
|
|
6728
|
-
readonly '~dsl' = "DocTsDsl";
|
|
6729
|
-
protected _lines: Array<string>;
|
|
6730
|
-
constructor(lines?: MaybeArray$1<string>, fn?: (d: DocTsDsl) => void);
|
|
6731
|
-
analyze(ctx: AnalysisContext): void;
|
|
6732
|
-
add(...lines: ReadonlyArray<string>): this;
|
|
6733
|
-
apply<T extends ts.Node>(node: T): T;
|
|
6734
|
-
toAst(): ts.Node;
|
|
6735
|
-
}
|
|
6736
|
-
//#endregion
|
|
6737
|
-
//#region src/ts-dsl/mixins/doc.d.ts
|
|
6738
|
-
interface DocMethods extends Node {
|
|
6739
|
-
$docs<T extends ts.Node>(node: T): T;
|
|
6740
|
-
doc(lines?: MaybeArray$1<string>, fn?: (d: DocTsDsl) => void): this;
|
|
6741
|
-
}
|
|
6742
|
-
//#endregion
|
|
6743
7050
|
//#region src/ts-dsl/mixins/do.d.ts
|
|
6744
7051
|
type DoExpr = MaybeTsDsl<ts.Expression | ts.Statement>;
|
|
6745
7052
|
interface DoMethods extends Node {
|
|
6746
7053
|
/** Renders the collected `.do()` calls into an array of `Statement` nodes. */
|
|
6747
|
-
$do(): ReadonlyArray<ts.Statement>;
|
|
7054
|
+
$do(ctx: AstContext): ReadonlyArray<ts.Statement>;
|
|
6748
7055
|
_do: Array<DoExpr>;
|
|
6749
7056
|
/** Adds one or more expressions/statements to the body. */
|
|
6750
7057
|
do(...items: ReadonlyArray<DoExpr>): this;
|
|
@@ -6752,19 +7059,19 @@ interface DoMethods extends Node {
|
|
|
6752
7059
|
//#endregion
|
|
6753
7060
|
//#region src/ts-dsl/decl/getter.d.ts
|
|
6754
7061
|
type GetterName = string | ts.PropertyName;
|
|
6755
|
-
declare const Mixed$
|
|
6756
|
-
declare class GetterTsDsl extends Mixed$
|
|
7062
|
+
declare const Mixed$34: 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>;
|
|
7063
|
+
declare class GetterTsDsl extends Mixed$34 {
|
|
6757
7064
|
readonly '~dsl' = "GetterTsDsl";
|
|
6758
7065
|
protected name: GetterName;
|
|
6759
7066
|
constructor(name: GetterName, fn?: (g: GetterTsDsl) => void);
|
|
6760
7067
|
analyze(ctx: AnalysisContext): void;
|
|
6761
|
-
toAst(): ts.GetAccessorDeclaration;
|
|
7068
|
+
toAst(ctx: AstContext): ts.GetAccessorDeclaration;
|
|
6762
7069
|
}
|
|
6763
7070
|
//#endregion
|
|
6764
7071
|
//#region src/ts-dsl/stmt/if.d.ts
|
|
6765
7072
|
type IfCondition = string | MaybeTsDsl<ts.Expression>;
|
|
6766
|
-
declare const Mixed$
|
|
6767
|
-
declare class IfTsDsl extends Mixed$
|
|
7073
|
+
declare const Mixed$33: MixinCtor<abstract new () => TsDsl<ts.IfStatement>, DoMethods>;
|
|
7074
|
+
declare class IfTsDsl extends Mixed$33 {
|
|
6768
7075
|
readonly '~dsl' = "IfTsDsl";
|
|
6769
7076
|
protected _condition?: IfCondition;
|
|
6770
7077
|
protected _else?: Array<DoExpr>;
|
|
@@ -6772,25 +7079,72 @@ declare class IfTsDsl extends Mixed$44 {
|
|
|
6772
7079
|
analyze(ctx: AnalysisContext): void;
|
|
6773
7080
|
condition(condition: IfCondition): this;
|
|
6774
7081
|
otherwise(...items: Array<DoExpr>): this;
|
|
6775
|
-
toAst(): ts.IfStatement;
|
|
7082
|
+
toAst(ctx: AstContext): ts.IfStatement;
|
|
7083
|
+
}
|
|
7084
|
+
//#endregion
|
|
7085
|
+
//#region src/ts-dsl/utils/lazy.d.ts
|
|
7086
|
+
type LazyThunk<T extends ts.Node> = (ctx: AstContext) => TsDsl<T>;
|
|
7087
|
+
declare class LazyTsDsl<T extends ts.Node = ts.Node> extends TsDsl<T> {
|
|
7088
|
+
readonly '~dsl' = "LazyTsDsl";
|
|
7089
|
+
private _thunk;
|
|
7090
|
+
constructor(thunk: LazyThunk<T>);
|
|
7091
|
+
analyze(ctx: AnalysisContext): void;
|
|
7092
|
+
toAst(ctx: AstContext): T;
|
|
7093
|
+
}
|
|
7094
|
+
//#endregion
|
|
7095
|
+
//#region src/ts-dsl/expr/new.d.ts
|
|
7096
|
+
type NewExpr = Symbol | string | MaybeTsDsl<ts.Expression>;
|
|
7097
|
+
declare const Mixed$32: MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.NewExpression>, TypeArgsMethods>, ExprMethods>, ArgsMethods>;
|
|
7098
|
+
declare class NewTsDsl extends Mixed$32 {
|
|
7099
|
+
readonly '~dsl' = "NewTsDsl";
|
|
7100
|
+
protected classExpr: Ref<NewExpr>;
|
|
7101
|
+
constructor(classExpr: NewExpr, ...args: ReadonlyArray<NewExpr>);
|
|
7102
|
+
analyze(ctx: AnalysisContext): void;
|
|
7103
|
+
toAst(ctx: AstContext): ts.NewExpression;
|
|
7104
|
+
}
|
|
7105
|
+
//#endregion
|
|
7106
|
+
//#region src/ts-dsl/layout/note.d.ts
|
|
7107
|
+
type NoteMaybeLazy<T> = ((ctx: AstContext) => T) | T;
|
|
7108
|
+
type NoteFn = (d: NoteTsDsl) => void;
|
|
7109
|
+
type NoteLines = NoteMaybeLazy<MaybeArray$1<string>>;
|
|
7110
|
+
declare class NoteTsDsl extends TsDsl<ts.Node> {
|
|
7111
|
+
readonly '~dsl' = "NoteTsDsl";
|
|
7112
|
+
protected _lines: Array<NoteLines>;
|
|
7113
|
+
constructor(lines?: NoteLines, fn?: NoteFn);
|
|
7114
|
+
analyze(ctx: AnalysisContext): void;
|
|
7115
|
+
add(lines: NoteLines): this;
|
|
7116
|
+
apply<T extends ts.Node>(ctx: AstContext, node: T): T;
|
|
7117
|
+
toAst(ctx: AstContext): ts.Node;
|
|
6776
7118
|
}
|
|
6777
7119
|
//#endregion
|
|
6778
7120
|
//#region src/ts-dsl/decl/setter.d.ts
|
|
6779
7121
|
type SetterName = string | ts.PropertyName;
|
|
6780
|
-
declare const Mixed$
|
|
6781
|
-
declare class SetterTsDsl extends Mixed$
|
|
7122
|
+
declare const Mixed$31: 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>;
|
|
7123
|
+
declare class SetterTsDsl extends Mixed$31 {
|
|
6782
7124
|
readonly '~dsl' = "SetterTsDsl";
|
|
6783
7125
|
protected name: SetterName;
|
|
6784
7126
|
constructor(name: SetterName, fn?: (s: SetterTsDsl) => void);
|
|
6785
7127
|
analyze(ctx: AnalysisContext): void;
|
|
6786
|
-
toAst(): ts.SetAccessorDeclaration;
|
|
7128
|
+
toAst(ctx: AstContext): ts.SetAccessorDeclaration;
|
|
7129
|
+
}
|
|
7130
|
+
//#endregion
|
|
7131
|
+
//#region src/ts-dsl/expr/template.d.ts
|
|
7132
|
+
type TemplatePart = Symbol | string | MaybeTsDsl<ts.Expression>;
|
|
7133
|
+
declare const Mixed$30: abstract new () => TsDsl<ts.NoSubstitutionTemplateLiteral | ts.TemplateExpression>;
|
|
7134
|
+
declare class TemplateTsDsl extends Mixed$30 {
|
|
7135
|
+
readonly '~dsl' = "TemplateTsDsl";
|
|
7136
|
+
protected parts: Array<Ref<TemplatePart>>;
|
|
7137
|
+
constructor(value?: TemplatePart);
|
|
7138
|
+
analyze(ctx: AnalysisContext): void;
|
|
7139
|
+
add(value: TemplatePart): this;
|
|
7140
|
+
toAst(ctx: AstContext): ts.NoSubstitutionTemplateLiteral | ts.TemplateExpression;
|
|
6787
7141
|
}
|
|
6788
7142
|
//#endregion
|
|
6789
7143
|
//#region src/ts-dsl/type/param.d.ts
|
|
6790
7144
|
type TypeParamName = Symbol | string;
|
|
6791
7145
|
type TypeParamExpr = Symbol | string | boolean | MaybeTsDsl<TypeTsDsl>;
|
|
6792
|
-
declare const Mixed$
|
|
6793
|
-
declare class TypeParamTsDsl extends Mixed$
|
|
7146
|
+
declare const Mixed$29: abstract new () => TsDsl<ts.TypeParameterDeclaration>;
|
|
7147
|
+
declare class TypeParamTsDsl extends Mixed$29 {
|
|
6794
7148
|
readonly '~dsl' = "TypeParamTsDsl";
|
|
6795
7149
|
protected constraint?: Ref<TypeParamExpr>;
|
|
6796
7150
|
protected defaultValue?: Ref<TypeParamExpr>;
|
|
@@ -6799,187 +7153,44 @@ declare class TypeParamTsDsl extends Mixed$42 {
|
|
|
6799
7153
|
analyze(ctx: AnalysisContext): void;
|
|
6800
7154
|
default(value: TypeParamExpr): this;
|
|
6801
7155
|
extends(constraint: TypeParamExpr): this;
|
|
6802
|
-
toAst(): ts.TypeParameterDeclaration;
|
|
7156
|
+
toAst(ctx: AstContext): ts.TypeParameterDeclaration;
|
|
6803
7157
|
}
|
|
6804
7158
|
//#endregion
|
|
6805
7159
|
//#region src/ts-dsl/mixins/type-params.d.ts
|
|
6806
7160
|
interface TypeParamsMethods extends Node {
|
|
6807
7161
|
/** Returns the type parameters as an array of ts.TypeParameterDeclaration nodes. */
|
|
6808
|
-
$generics(): ReadonlyArray<ts.TypeParameterDeclaration> | undefined;
|
|
7162
|
+
$generics(ast: AstContext): ReadonlyArray<ts.TypeParameterDeclaration> | undefined;
|
|
6809
7163
|
/** Adds a single type parameter (e.g. `T` in `Array<T>`). */
|
|
6810
7164
|
generic(...args: ConstructorParameters<typeof TypeParamTsDsl>): this;
|
|
6811
7165
|
/** Adds type parameters (e.g. `Map<string, T>`). */
|
|
6812
7166
|
generics(...args: ReadonlyArray<Symbol | string | MaybeTsDsl<TypeParamTsDsl>>): this;
|
|
6813
7167
|
}
|
|
6814
7168
|
//#endregion
|
|
6815
|
-
//#region src/ts-dsl/expr/typeof.d.ts
|
|
6816
|
-
declare const Mixed$41: MixinCtor<abstract new () => TsDsl<ts.TypeOfExpression>, OperatorMethods>;
|
|
6817
|
-
declare class TypeOfExprTsDsl extends Mixed$41 {
|
|
6818
|
-
readonly '~dsl' = "TypeOfExprTsDsl";
|
|
6819
|
-
protected _expr: string | MaybeTsDsl<ts.Expression>;
|
|
6820
|
-
constructor(expr: string | MaybeTsDsl<ts.Expression>);
|
|
6821
|
-
analyze(ctx: AnalysisContext): void;
|
|
6822
|
-
toAst(): ts.TypeOfExpression;
|
|
6823
|
-
}
|
|
6824
|
-
//#endregion
|
|
6825
|
-
//#region src/ts-dsl/type/idx.d.ts
|
|
6826
|
-
type Base$2 = string | MaybeTsDsl<ts.TypeNode>;
|
|
6827
|
-
type Index = string | number | MaybeTsDsl<ts.TypeNode>;
|
|
6828
|
-
declare const Mixed$40: MixinCtor<abstract new () => TypeTsDsl<ts.IndexedAccessTypeNode>, TypeExprMethods>;
|
|
6829
|
-
declare class TypeIdxTsDsl extends Mixed$40 {
|
|
6830
|
-
readonly '~dsl' = "TypeIdxTsDsl";
|
|
6831
|
-
protected _base: Base$2;
|
|
6832
|
-
protected _index: Index;
|
|
6833
|
-
constructor(base: Base$2, index: Index);
|
|
6834
|
-
analyze(ctx: AnalysisContext): void;
|
|
6835
|
-
base(base: Base$2): this;
|
|
6836
|
-
index(index: Index): this;
|
|
6837
|
-
toAst(): ts.IndexedAccessTypeNode;
|
|
6838
|
-
}
|
|
6839
|
-
//#endregion
|
|
6840
|
-
//#region src/ts-dsl/type/operator.d.ts
|
|
6841
|
-
type Op = ts.SyntaxKind.KeyOfKeyword | ts.SyntaxKind.ReadonlyKeyword | ts.SyntaxKind.UniqueKeyword;
|
|
6842
|
-
type Type$2 = string | MaybeTsDsl<ts.TypeNode>;
|
|
6843
|
-
declare const Mixed$39: abstract new () => TypeTsDsl<ts.TypeOperatorNode>;
|
|
6844
|
-
/**
|
|
6845
|
-
* Builds a TypeScript `TypeOperatorNode`, such as:
|
|
6846
|
-
*
|
|
6847
|
-
* - `keyof T`
|
|
6848
|
-
* - `readonly U`
|
|
6849
|
-
* - `unique V`
|
|
6850
|
-
*
|
|
6851
|
-
* This DSL provides both a generic `.operator()` API and convenient
|
|
6852
|
-
* shorthand methods (`.keyof()`, `.readonly()`, `.unique()`).
|
|
6853
|
-
*
|
|
6854
|
-
* The node will throw during render if required fields are missing.
|
|
6855
|
-
*/
|
|
6856
|
-
declare class TypeOperatorTsDsl extends Mixed$39 {
|
|
6857
|
-
readonly '~dsl' = "TypeOperatorTsDsl";
|
|
6858
|
-
protected _op?: Op;
|
|
6859
|
-
protected _type?: Type$2;
|
|
6860
|
-
analyze(ctx: AnalysisContext): void;
|
|
6861
|
-
/** Shorthand: builds `keyof T`. */
|
|
6862
|
-
keyof(type: Type$2): this;
|
|
6863
|
-
/** Sets the operator explicitly. */
|
|
6864
|
-
operator(op: Op): this;
|
|
6865
|
-
/** Shorthand: builds `readonly T`. */
|
|
6866
|
-
readonly(type: Type$2): this;
|
|
6867
|
-
/** Sets the target type of the operator. */
|
|
6868
|
-
type(type: Type$2): this;
|
|
6869
|
-
/** Shorthand: builds `unique T`. */
|
|
6870
|
-
unique(type: Type$2): this;
|
|
6871
|
-
toAst(): ts.TypeOperatorNode;
|
|
6872
|
-
/** Throws if required fields are not set. */
|
|
6873
|
-
$validate(): asserts this is this & {
|
|
6874
|
-
_op: Op;
|
|
6875
|
-
_type: Type$2;
|
|
6876
|
-
};
|
|
6877
|
-
private missingRequiredCalls;
|
|
6878
|
-
}
|
|
6879
|
-
//#endregion
|
|
6880
|
-
//#region src/ts-dsl/type/query.d.ts
|
|
6881
|
-
declare const Mixed$38: MixinCtor<abstract new () => TypeTsDsl<ts.TypeQueryNode>, TypeExprMethods>;
|
|
6882
|
-
declare class TypeQueryTsDsl extends Mixed$38 {
|
|
6883
|
-
readonly '~dsl' = "TypeQueryTsDsl";
|
|
6884
|
-
protected _expr: string | MaybeTsDsl<TypeTsDsl | ts.Expression>;
|
|
6885
|
-
constructor(expr: string | MaybeTsDsl<TypeTsDsl | ts.Expression>);
|
|
6886
|
-
analyze(ctx: AnalysisContext): void;
|
|
6887
|
-
toAst(): ts.TypeQueryNode;
|
|
6888
|
-
}
|
|
6889
|
-
//#endregion
|
|
6890
|
-
//#region src/ts-dsl/mixins/type-expr.d.ts
|
|
6891
|
-
interface TypeExprMethods extends Node {
|
|
6892
|
-
/** Creates an indexed-access type (e.g. `Foo<T>[K]`). */
|
|
6893
|
-
idx(this: MaybeTsDsl<TypeTsDsl>, index: string | number | MaybeTsDsl<ts.TypeNode>): TypeIdxTsDsl;
|
|
6894
|
-
/** Shorthand: builds `keyof T`. */
|
|
6895
|
-
keyof(this: MaybeTsDsl<TypeTsDsl>): TypeOperatorTsDsl;
|
|
6896
|
-
/** Shorthand: builds `readonly T`. */
|
|
6897
|
-
readonly(this: MaybeTsDsl<TypeTsDsl>): TypeOperatorTsDsl;
|
|
6898
|
-
/** Create a TypeExpr node representing ReturnType<this>. */
|
|
6899
|
-
returnType(this: MaybeTsDsl<ts.Expression>): TypeExprTsDsl;
|
|
6900
|
-
/** Create a TypeOfExpr node representing typeof this. */
|
|
6901
|
-
typeofExpr(this: MaybeTsDsl<ts.Expression>): TypeOfExprTsDsl;
|
|
6902
|
-
/** Create a TypeQuery node representing typeof this. */
|
|
6903
|
-
typeofType(this: MaybeTsDsl<TypeTsDsl | ts.Expression>): TypeQueryTsDsl;
|
|
6904
|
-
/** Shorthand: builds `unique T`. */
|
|
6905
|
-
unique(this: MaybeTsDsl<TypeTsDsl>): TypeOperatorTsDsl;
|
|
6906
|
-
}
|
|
6907
|
-
//#endregion
|
|
6908
|
-
//#region src/ts-dsl/type/attr.d.ts
|
|
6909
|
-
type Base$1 = Symbol | string | MaybeTsDsl<ts.EntityName>;
|
|
6910
|
-
type Right = Symbol | string | ts.Identifier;
|
|
6911
|
-
declare const Mixed$37: MixinCtor<abstract new () => TypeTsDsl<ts.QualifiedName>, TypeExprMethods>;
|
|
6912
|
-
declare class TypeAttrTsDsl extends Mixed$37 {
|
|
6913
|
-
readonly '~dsl' = "TypeAttrTsDsl";
|
|
6914
|
-
protected _base?: Ref<Base$1>;
|
|
6915
|
-
protected _right: Ref<Right>;
|
|
6916
|
-
constructor(base: Base$1 | Ref<Base$1>, right: string | ts.Identifier);
|
|
6917
|
-
constructor(right: Right);
|
|
6918
|
-
analyze(ctx: AnalysisContext): void;
|
|
6919
|
-
base(base?: Base$1 | Ref<Base$1>): this;
|
|
6920
|
-
right(right: Right): this;
|
|
6921
|
-
toAst(): ts.QualifiedName;
|
|
6922
|
-
}
|
|
6923
|
-
//#endregion
|
|
6924
|
-
//#region src/ts-dsl/type/expr.d.ts
|
|
6925
|
-
type TypeExprName = Symbol | string;
|
|
6926
|
-
type TypeExprExpr = TypeExprName | TypeAttrTsDsl;
|
|
6927
|
-
declare const Mixed$36: MixinCtor<MixinCtor<abstract new () => TypeTsDsl<ts.TypeReferenceNode>, TypeExprMethods>, TypeArgsMethods>;
|
|
6928
|
-
declare class TypeExprTsDsl extends Mixed$36 {
|
|
6929
|
-
readonly '~dsl' = "TypeExprTsDsl";
|
|
6930
|
-
protected _exprInput?: Ref<TypeExprExpr>;
|
|
6931
|
-
constructor();
|
|
6932
|
-
constructor(fn: (t: TypeExprTsDsl) => void);
|
|
6933
|
-
constructor(name: TypeExprName);
|
|
6934
|
-
constructor(name: TypeExprName, fn?: (t: TypeExprTsDsl) => void);
|
|
6935
|
-
analyze(ctx: AnalysisContext): void;
|
|
6936
|
-
/** Accesses a nested type (e.g. `Foo.Bar`). */
|
|
6937
|
-
attr(right: string | ts.Identifier | TypeAttrTsDsl): this;
|
|
6938
|
-
toAst(): ts.TypeReferenceNode;
|
|
6939
|
-
}
|
|
6940
|
-
//#endregion
|
|
6941
|
-
//#region src/ts-dsl/decl/field.d.ts
|
|
6942
|
-
type FieldType = TypeExprName | TypeTsDsl;
|
|
6943
|
-
declare const Mixed$35: MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.PropertyDeclaration>, ValueMethods>, StaticMethods>, ReadonlyMethods>, PublicMethods>, ProtectedMethods>, PrivateMethods>, DocMethods>, DecoratorMethods>;
|
|
6944
|
-
declare class FieldTsDsl extends Mixed$35 {
|
|
6945
|
-
readonly '~dsl' = "FieldTsDsl";
|
|
6946
|
-
protected name: string;
|
|
6947
|
-
protected _type?: TypeTsDsl;
|
|
6948
|
-
constructor(name: string, fn?: (f: FieldTsDsl) => void);
|
|
6949
|
-
analyze(ctx: AnalysisContext): void;
|
|
6950
|
-
/** Sets the field type. */
|
|
6951
|
-
type(type: FieldType): this;
|
|
6952
|
-
toAst(): ts.PropertyDeclaration;
|
|
6953
|
-
}
|
|
6954
|
-
//#endregion
|
|
6955
7169
|
//#region src/ts-dsl/decl/init.d.ts
|
|
6956
|
-
declare const Mixed$
|
|
6957
|
-
declare class InitTsDsl extends Mixed$
|
|
7170
|
+
declare const Mixed$28: MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.ConstructorDeclaration>, PublicMethods>, ProtectedMethods>, PrivateMethods>, ParamMethods>, DocMethods>, DoMethods>, DecoratorMethods>;
|
|
7171
|
+
declare class InitTsDsl extends Mixed$28 {
|
|
6958
7172
|
readonly '~dsl' = "InitTsDsl";
|
|
6959
7173
|
constructor(fn?: (i: InitTsDsl) => void);
|
|
6960
7174
|
analyze(ctx: AnalysisContext): void;
|
|
6961
|
-
toAst(): ts.ConstructorDeclaration;
|
|
7175
|
+
toAst(ctx: AstContext): ts.ConstructorDeclaration;
|
|
6962
7176
|
}
|
|
6963
7177
|
//#endregion
|
|
6964
7178
|
//#region src/ts-dsl/decl/method.d.ts
|
|
6965
|
-
declare const Mixed$
|
|
6966
|
-
declare class MethodTsDsl extends Mixed$
|
|
7179
|
+
declare const Mixed$27: MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.MethodDeclaration>, TypeReturnsMethods>, TypeParamsMethods>, StaticMethods>, PublicMethods>, ProtectedMethods>, PrivateMethods>, ParamMethods>, OptionalMethods>, DocMethods>, DoMethods>, DecoratorMethods>, AsyncMethods>, AbstractMethods>;
|
|
7180
|
+
declare class MethodTsDsl extends Mixed$27 {
|
|
6967
7181
|
readonly '~dsl' = "MethodTsDsl";
|
|
6968
7182
|
protected name: string;
|
|
6969
|
-
protected _returns?: TypeTsDsl;
|
|
6970
7183
|
constructor(name: string, fn?: (m: MethodTsDsl) => void);
|
|
6971
7184
|
analyze(ctx: AnalysisContext): void;
|
|
6972
|
-
|
|
6973
|
-
returns(type: string | TypeTsDsl): this;
|
|
6974
|
-
toAst(): ts.MethodDeclaration;
|
|
7185
|
+
toAst(ctx: AstContext): ts.MethodDeclaration;
|
|
6975
7186
|
}
|
|
6976
7187
|
//#endregion
|
|
6977
7188
|
//#region src/ts-dsl/decl/class.d.ts
|
|
6978
7189
|
type Base = Symbol | string;
|
|
6979
7190
|
type Name$1 = Symbol | string;
|
|
6980
7191
|
type Body = Array<MaybeTsDsl<ts.ClassElement | ts.Node>>;
|
|
6981
|
-
declare const Mixed$
|
|
6982
|
-
declare class ClassTsDsl extends Mixed$
|
|
7192
|
+
declare const Mixed$26: MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.ClassDeclaration>, TypeParamsMethods>, ExportMethods>, DocMethods>, DefaultMethods>, DecoratorMethods>, AbstractMethods>;
|
|
7193
|
+
declare class ClassTsDsl extends Mixed$26 {
|
|
6983
7194
|
readonly '~dsl' = "ClassTsDsl";
|
|
6984
7195
|
protected baseClass?: Ref<Base>;
|
|
6985
7196
|
protected body: Body;
|
|
@@ -6991,71 +7202,26 @@ declare class ClassTsDsl extends Mixed$32 {
|
|
|
6991
7202
|
/** Records a base class to extend from. */
|
|
6992
7203
|
extends(base?: Base): this;
|
|
6993
7204
|
/** Adds a class field. */
|
|
6994
|
-
field(name:
|
|
7205
|
+
field(name: FieldName, fn?: (f: FieldTsDsl) => void): this;
|
|
6995
7206
|
/** Adds a class constructor. */
|
|
6996
7207
|
init(fn?: (i: InitTsDsl) => void): this;
|
|
6997
7208
|
/** Adds a class method. */
|
|
6998
7209
|
method(name: string, fn?: (m: MethodTsDsl) => void): this;
|
|
6999
7210
|
/** Inserts an empty line between members for formatting. */
|
|
7000
7211
|
newline(): this;
|
|
7001
|
-
toAst(): ts.ClassDeclaration;
|
|
7212
|
+
toAst(ctx: AstContext): ts.ClassDeclaration;
|
|
7002
7213
|
/** Builds heritage clauses (extends). */
|
|
7003
7214
|
private _heritage;
|
|
7004
7215
|
}
|
|
7005
7216
|
//#endregion
|
|
7006
|
-
//#region src/ts-dsl/decl/decorator.d.ts
|
|
7007
|
-
type DecoratorName = Symbol | string | MaybeTsDsl<ts.Expression>;
|
|
7008
|
-
declare const Mixed$31: MixinCtor<abstract new () => TsDsl<ts.Decorator>, ArgsMethods>;
|
|
7009
|
-
declare class DecoratorTsDsl extends Mixed$31 {
|
|
7010
|
-
readonly '~dsl' = "DecoratorTsDsl";
|
|
7011
|
-
protected name: Ref<DecoratorName>;
|
|
7012
|
-
constructor(name: DecoratorName, ...args: ReadonlyArray<string | MaybeTsDsl<ts.Expression>>);
|
|
7013
|
-
analyze(ctx: AnalysisContext): void;
|
|
7014
|
-
toAst(): ts.Decorator;
|
|
7015
|
-
}
|
|
7016
|
-
//#endregion
|
|
7017
|
-
//#region src/ts-dsl/decl/member.d.ts
|
|
7018
|
-
type Value$2 = string | number | MaybeTsDsl<ts.Expression>;
|
|
7019
|
-
type ValueFn$1 = Value$2 | ((m: EnumMemberTsDsl) => void);
|
|
7020
|
-
declare const Mixed$30: MixinCtor<abstract new () => TsDsl<ts.EnumMember>, DocMethods>;
|
|
7021
|
-
declare class EnumMemberTsDsl extends Mixed$30 {
|
|
7022
|
-
readonly '~dsl' = "EnumMemberTsDsl";
|
|
7023
|
-
private _name;
|
|
7024
|
-
private _value?;
|
|
7025
|
-
constructor(name: string, value?: ValueFn$1);
|
|
7026
|
-
analyze(ctx: AnalysisContext): void;
|
|
7027
|
-
/** Sets the enum member value. */
|
|
7028
|
-
value(value?: Value$2): this;
|
|
7029
|
-
toAst(): ts.EnumMember;
|
|
7030
|
-
}
|
|
7031
|
-
//#endregion
|
|
7032
|
-
//#region src/ts-dsl/decl/enum.d.ts
|
|
7033
|
-
type EnumName = Symbol | string;
|
|
7034
|
-
type Value$1 = string | number | MaybeTsDsl<ts.Expression>;
|
|
7035
|
-
type ValueFn = Value$1 | ((m: EnumMemberTsDsl) => void);
|
|
7036
|
-
declare const Mixed$29: MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.EnumDeclaration>, ExportMethods>, DocMethods>, ConstMethods>;
|
|
7037
|
-
declare class EnumTsDsl extends Mixed$29 {
|
|
7038
|
-
readonly '~dsl' = "EnumTsDsl";
|
|
7039
|
-
private _members;
|
|
7040
|
-
private _name;
|
|
7041
|
-
constructor(name: EnumName, fn?: (e: EnumTsDsl) => void);
|
|
7042
|
-
analyze(ctx: AnalysisContext): void;
|
|
7043
|
-
/** Adds an enum member. */
|
|
7044
|
-
member(name: string, value?: ValueFn): this;
|
|
7045
|
-
/** Adds multiple enum members. */
|
|
7046
|
-
members(...members: ReadonlyArray<EnumMemberTsDsl>): this;
|
|
7047
|
-
toAst(): ts.EnumDeclaration;
|
|
7048
|
-
}
|
|
7049
|
-
//#endregion
|
|
7050
7217
|
//#region src/ts-dsl/decl/func.d.ts
|
|
7051
7218
|
type FuncMode = 'arrow' | 'decl' | 'expr';
|
|
7052
7219
|
type FuncName = Symbol | string;
|
|
7053
|
-
declare const Mixed$
|
|
7054
|
-
declare class ImplFuncTsDsl<M extends FuncMode = 'arrow'> extends Mixed$
|
|
7220
|
+
declare const Mixed$25: 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>, DocMethods>, DoMethods>, DecoratorMethods>, AsyncMethods>, AsMethods>, AbstractMethods>;
|
|
7221
|
+
declare class ImplFuncTsDsl<M extends FuncMode = 'arrow'> extends Mixed$25 {
|
|
7055
7222
|
readonly '~dsl' = "FuncTsDsl";
|
|
7056
7223
|
protected mode?: FuncMode;
|
|
7057
7224
|
protected name?: Ref<FuncName>;
|
|
7058
|
-
protected _returns?: TypeTsDsl;
|
|
7059
7225
|
constructor();
|
|
7060
7226
|
constructor(fn: (f: ImplFuncTsDsl<'arrow'>) => void);
|
|
7061
7227
|
constructor(name: FuncName);
|
|
@@ -7067,9 +7233,7 @@ declare class ImplFuncTsDsl<M extends FuncMode = 'arrow'> extends Mixed$28 {
|
|
|
7067
7233
|
decl(): FuncTsDsl<'decl'>;
|
|
7068
7234
|
/** Switches the function to a function expression form. */
|
|
7069
7235
|
expr(): FuncTsDsl<'expr'>;
|
|
7070
|
-
|
|
7071
|
-
returns(type: string | TypeTsDsl): this;
|
|
7072
|
-
toAst(): M extends 'decl' ? ts.FunctionDeclaration : M extends 'expr' ? ts.FunctionExpression : ts.ArrowFunction;
|
|
7236
|
+
toAst(ctx: AstContext): M extends 'decl' ? ts.FunctionDeclaration : M extends 'expr' ? ts.FunctionExpression : ts.ArrowFunction;
|
|
7073
7237
|
}
|
|
7074
7238
|
declare const FuncTsDsl: {
|
|
7075
7239
|
new (): FuncTsDsl<"arrow">;
|
|
@@ -7080,11 +7244,11 @@ declare const FuncTsDsl: {
|
|
|
7080
7244
|
type FuncTsDsl<M extends FuncMode = 'arrow'> = ImplFuncTsDsl<M>;
|
|
7081
7245
|
//#endregion
|
|
7082
7246
|
//#region src/ts-dsl/decl/pattern.d.ts
|
|
7083
|
-
declare const Mixed$
|
|
7247
|
+
declare const Mixed$24: abstract new () => TsDsl<ts.BindingName>;
|
|
7084
7248
|
/**
|
|
7085
7249
|
* Builds binding patterns (e.g. `{ foo, bar }`, `[a, b, ...rest]`).
|
|
7086
7250
|
*/
|
|
7087
|
-
declare class PatternTsDsl extends Mixed$
|
|
7251
|
+
declare class PatternTsDsl extends Mixed$24 {
|
|
7088
7252
|
readonly '~dsl' = "PatternTsDsl";
|
|
7089
7253
|
protected pattern?: {
|
|
7090
7254
|
kind: 'array';
|
|
@@ -7101,7 +7265,7 @@ declare class PatternTsDsl extends Mixed$27 {
|
|
|
7101
7265
|
object(...props: ReadonlyArray<MaybeArray$1<string> | Record<string, string>>): this;
|
|
7102
7266
|
/** Adds a spread element (e.g. `...rest`, `...options`, `...args`). */
|
|
7103
7267
|
spread(name: string): this;
|
|
7104
|
-
toAst(): ts.ObjectBindingPattern | ts.ArrayBindingPattern;
|
|
7268
|
+
toAst(ctx: AstContext): ts.ObjectBindingPattern | ts.ArrayBindingPattern;
|
|
7105
7269
|
private createSpread;
|
|
7106
7270
|
}
|
|
7107
7271
|
//#endregion
|
|
@@ -7118,8 +7282,8 @@ interface LayoutMethods extends Node {
|
|
|
7118
7282
|
}
|
|
7119
7283
|
//#endregion
|
|
7120
7284
|
//#region src/ts-dsl/expr/array.d.ts
|
|
7121
|
-
declare const Mixed$
|
|
7122
|
-
declare class ArrayTsDsl extends Mixed$
|
|
7285
|
+
declare const Mixed$23: MixinCtor<MixinCtor<abstract new () => TsDsl<ts.ArrayLiteralExpression>, LayoutMethods>, AsMethods>;
|
|
7286
|
+
declare class ArrayTsDsl extends Mixed$23 {
|
|
7123
7287
|
readonly '~dsl' = "ArrayTsDsl";
|
|
7124
7288
|
protected _elements: Array<{
|
|
7125
7289
|
expr: MaybeTsDsl<ts.Expression>;
|
|
@@ -7136,23 +7300,23 @@ declare class ArrayTsDsl extends Mixed$26 {
|
|
|
7136
7300
|
elements(...exprs: ReadonlyArray<string | number | boolean | MaybeTsDsl<ts.Expression>>): this;
|
|
7137
7301
|
/** Adds a spread element (`...expr`). */
|
|
7138
7302
|
spread(expr: MaybeTsDsl<ts.Expression>): this;
|
|
7139
|
-
toAst(): ts.ArrayLiteralExpression;
|
|
7303
|
+
toAst(ctx: AstContext): ts.ArrayLiteralExpression;
|
|
7140
7304
|
}
|
|
7141
7305
|
//#endregion
|
|
7142
7306
|
//#region src/ts-dsl/expr/expr.d.ts
|
|
7143
7307
|
type Id = Symbol | string | MaybeTsDsl<ts.Expression>;
|
|
7144
|
-
declare const Mixed$
|
|
7145
|
-
declare class ExprTsDsl extends Mixed$
|
|
7308
|
+
declare const Mixed$22: MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.Expression>, TypeExprMethods>, OperatorMethods>, ExprMethods>, AsMethods>;
|
|
7309
|
+
declare class ExprTsDsl extends Mixed$22 {
|
|
7146
7310
|
readonly '~dsl' = "ExprTsDsl";
|
|
7147
7311
|
protected _exprInput: Ref<Id>;
|
|
7148
7312
|
constructor(id: Id);
|
|
7149
7313
|
analyze(ctx: AnalysisContext): void;
|
|
7150
|
-
toAst():
|
|
7314
|
+
toAst(ctx: AstContext): ts.Expression;
|
|
7151
7315
|
}
|
|
7152
7316
|
//#endregion
|
|
7153
7317
|
//#region src/ts-dsl/expr/id.d.ts
|
|
7154
|
-
declare const Mixed$
|
|
7155
|
-
declare class IdTsDsl extends Mixed$
|
|
7318
|
+
declare const Mixed$21: abstract new () => TsDsl<ts.Identifier>;
|
|
7319
|
+
declare class IdTsDsl extends Mixed$21 {
|
|
7156
7320
|
readonly '~dsl' = "IdTsDsl";
|
|
7157
7321
|
protected name: string;
|
|
7158
7322
|
constructor(name: string);
|
|
@@ -7161,41 +7325,13 @@ declare class IdTsDsl extends Mixed$24 {
|
|
|
7161
7325
|
}
|
|
7162
7326
|
//#endregion
|
|
7163
7327
|
//#region src/ts-dsl/expr/literal.d.ts
|
|
7164
|
-
declare const Mixed$
|
|
7165
|
-
declare class LiteralTsDsl extends Mixed$
|
|
7328
|
+
declare const Mixed$20: MixinCtor<abstract new () => TsDsl<ts.LiteralExpression | ts.NullLiteral | ts.BooleanLiteral | ts.PrefixUnaryExpression>, AsMethods>;
|
|
7329
|
+
declare class LiteralTsDsl extends Mixed$20 {
|
|
7166
7330
|
readonly '~dsl' = "LiteralTsDsl";
|
|
7167
7331
|
protected value: string | number | boolean | null;
|
|
7168
7332
|
constructor(value: string | number | boolean | null);
|
|
7169
7333
|
analyze(ctx: AnalysisContext): void;
|
|
7170
|
-
toAst():
|
|
7171
|
-
}
|
|
7172
|
-
//#endregion
|
|
7173
|
-
//#region src/ts-dsl/expr/new.d.ts
|
|
7174
|
-
type NewExpr = Symbol | string | MaybeTsDsl<ts.Expression>;
|
|
7175
|
-
declare const Mixed$22: MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.NewExpression>, TypeArgsMethods>, ExprMethods>, ArgsMethods>;
|
|
7176
|
-
declare class NewTsDsl extends Mixed$22 {
|
|
7177
|
-
readonly '~dsl' = "NewTsDsl";
|
|
7178
|
-
protected classExpr: Ref<NewExpr>;
|
|
7179
|
-
constructor(classExpr: NewExpr, ...args: ReadonlyArray<NewExpr>);
|
|
7180
|
-
analyze(ctx: AnalysisContext): void;
|
|
7181
|
-
toAst(): ts.NewExpression;
|
|
7182
|
-
}
|
|
7183
|
-
//#endregion
|
|
7184
|
-
//#region src/ts-dsl/layout/hint.d.ts
|
|
7185
|
-
declare class HintTsDsl extends TsDsl<ts.Node> {
|
|
7186
|
-
readonly '~dsl' = "HintTsDsl";
|
|
7187
|
-
protected _lines: Array<string>;
|
|
7188
|
-
constructor(lines?: MaybeArray$1<string>, fn?: (d: HintTsDsl) => void);
|
|
7189
|
-
analyze(ctx: AnalysisContext): void;
|
|
7190
|
-
add(...lines: ReadonlyArray<string>): this;
|
|
7191
|
-
apply<T extends ts.Node>(node: T): T;
|
|
7192
|
-
toAst(): ts.Node;
|
|
7193
|
-
}
|
|
7194
|
-
//#endregion
|
|
7195
|
-
//#region src/ts-dsl/mixins/hint.d.ts
|
|
7196
|
-
interface HintMethods extends Node {
|
|
7197
|
-
$hint<T extends ts.Node>(node: T): T;
|
|
7198
|
-
hint(lines?: MaybeArray$1<string>, fn?: (h: HintTsDsl) => void): this;
|
|
7334
|
+
toAst(ctx: AstContext): ts.StringLiteral | ts.NumericLiteral | ts.NullLiteral | ts.TrueLiteral | ts.FalseLiteral | ts.PrefixUnaryExpression;
|
|
7199
7335
|
}
|
|
7200
7336
|
//#endregion
|
|
7201
7337
|
//#region src/ts-dsl/expr/prop.d.ts
|
|
@@ -7218,8 +7354,8 @@ type Meta = {
|
|
|
7218
7354
|
kind: 'spread';
|
|
7219
7355
|
name?: undefined;
|
|
7220
7356
|
};
|
|
7221
|
-
declare const Mixed$
|
|
7222
|
-
declare class ObjectPropTsDsl extends Mixed$
|
|
7357
|
+
declare const Mixed$19: MixinCtor<abstract new () => TsDsl<ts.ObjectLiteralElementLike>, DocMethods>;
|
|
7358
|
+
declare class ObjectPropTsDsl extends Mixed$19 {
|
|
7223
7359
|
readonly '~dsl' = "ObjectPropTsDsl";
|
|
7224
7360
|
protected _value?: Ref<Expr$1 | Stmt$1>;
|
|
7225
7361
|
protected meta: Meta;
|
|
@@ -7228,7 +7364,7 @@ declare class ObjectPropTsDsl extends Mixed$21 {
|
|
|
7228
7364
|
/** Returns true when all required builder calls are present. */
|
|
7229
7365
|
get isValid(): boolean;
|
|
7230
7366
|
value(value: Expr$1 | Stmt$1 | ((p: ObjectPropTsDsl) => void)): this;
|
|
7231
|
-
toAst():
|
|
7367
|
+
toAst(ctx: AstContext): ts.GetAccessorDeclaration | ts.SetAccessorDeclaration | ts.PropertyAssignment | ts.ShorthandPropertyAssignment | ts.SpreadAssignment;
|
|
7232
7368
|
$validate(): asserts this is this & {
|
|
7233
7369
|
_value: Expr$1 | Stmt$1;
|
|
7234
7370
|
kind: Kind;
|
|
@@ -7241,8 +7377,8 @@ type Expr = Symbol | string | MaybeTsDsl<ts.Expression>;
|
|
|
7241
7377
|
type Stmt = Symbol | string | MaybeTsDsl<ts.Statement>;
|
|
7242
7378
|
type ExprFn = Expr | ((p: ObjectPropTsDsl) => void);
|
|
7243
7379
|
type StmtFn = Stmt | ((p: ObjectPropTsDsl) => void);
|
|
7244
|
-
declare const Mixed$
|
|
7245
|
-
declare class ObjectTsDsl extends Mixed$
|
|
7380
|
+
declare const Mixed$18: MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.ObjectLiteralExpression>, LayoutMethods>, HintMethods>, ExprMethods>, AsMethods>;
|
|
7381
|
+
declare class ObjectTsDsl extends Mixed$18 {
|
|
7246
7382
|
readonly '~dsl' = "ObjectTsDsl";
|
|
7247
7383
|
protected _props: Array<ObjectPropTsDsl>;
|
|
7248
7384
|
constructor(...props: Array<ObjectPropTsDsl>);
|
|
@@ -7263,12 +7399,12 @@ declare class ObjectTsDsl extends Mixed$20 {
|
|
|
7263
7399
|
setter(name: string, stmt: StmtFn): this;
|
|
7264
7400
|
/** Adds a spread property (e.g. `{ ...options }`). */
|
|
7265
7401
|
spread(expr: ExprFn): this;
|
|
7266
|
-
toAst(): ts.ObjectLiteralExpression;
|
|
7402
|
+
toAst(ctx: AstContext): ts.ObjectLiteralExpression;
|
|
7267
7403
|
}
|
|
7268
7404
|
//#endregion
|
|
7269
7405
|
//#region src/ts-dsl/expr/prefix.d.ts
|
|
7270
|
-
declare const Mixed$
|
|
7271
|
-
declare class PrefixTsDsl extends Mixed$
|
|
7406
|
+
declare const Mixed$17: abstract new () => TsDsl<ts.PrefixUnaryExpression>;
|
|
7407
|
+
declare class PrefixTsDsl extends Mixed$17 {
|
|
7272
7408
|
readonly '~dsl' = "PrefixTsDsl";
|
|
7273
7409
|
protected _expr?: string | MaybeTsDsl<ts.Expression>;
|
|
7274
7410
|
protected _op?: ts.PrefixUnaryOperator;
|
|
@@ -7282,14 +7418,14 @@ declare class PrefixTsDsl extends Mixed$19 {
|
|
|
7282
7418
|
not(): this;
|
|
7283
7419
|
/** Sets the operator (e.g. `ts.SyntaxKind.ExclamationToken` for `!`). */
|
|
7284
7420
|
op(op: ts.PrefixUnaryOperator): this;
|
|
7285
|
-
toAst(): ts.PrefixUnaryExpression;
|
|
7421
|
+
toAst(ctx: AstContext): ts.PrefixUnaryExpression;
|
|
7286
7422
|
}
|
|
7287
7423
|
//#endregion
|
|
7288
7424
|
//#region src/ts-dsl/expr/regexp.d.ts
|
|
7289
7425
|
type RegexFlag = 'g' | 'i' | 'm' | 's' | 'u' | 'y';
|
|
7290
7426
|
type RegexFlags<Avail extends string = RegexFlag> = '' | { [K in Avail]: `${K}${RegexFlags<Exclude<Avail, K>>}` }[Avail];
|
|
7291
|
-
declare const Mixed$
|
|
7292
|
-
declare class RegExpTsDsl extends Mixed$
|
|
7427
|
+
declare const Mixed$16: abstract new () => TsDsl<ts.RegularExpressionLiteral>;
|
|
7428
|
+
declare class RegExpTsDsl extends Mixed$16 {
|
|
7293
7429
|
readonly '~dsl' = "RegExpTsDsl";
|
|
7294
7430
|
protected pattern: string;
|
|
7295
7431
|
protected flags?: RegexFlags;
|
|
@@ -7298,21 +7434,9 @@ declare class RegExpTsDsl extends Mixed$18 {
|
|
|
7298
7434
|
toAst(): ts.RegularExpressionLiteral;
|
|
7299
7435
|
}
|
|
7300
7436
|
//#endregion
|
|
7301
|
-
//#region src/ts-dsl/expr/template.d.ts
|
|
7302
|
-
type TemplatePart = Symbol | string | MaybeTsDsl<ts.Expression>;
|
|
7303
|
-
declare const Mixed$17: abstract new () => TsDsl<ts.NoSubstitutionTemplateLiteral | ts.TemplateExpression>;
|
|
7304
|
-
declare class TemplateTsDsl extends Mixed$17 {
|
|
7305
|
-
readonly '~dsl' = "TemplateTsDsl";
|
|
7306
|
-
protected parts: Array<Ref<TemplatePart>>;
|
|
7307
|
-
constructor(value?: TemplatePart);
|
|
7308
|
-
analyze(ctx: AnalysisContext): void;
|
|
7309
|
-
add(value: TemplatePart): this;
|
|
7310
|
-
toAst(): ts.NoSubstitutionTemplateLiteral | ts.TemplateExpression;
|
|
7311
|
-
}
|
|
7312
|
-
//#endregion
|
|
7313
7437
|
//#region src/ts-dsl/expr/ternary.d.ts
|
|
7314
|
-
declare const Mixed$
|
|
7315
|
-
declare class TernaryTsDsl extends Mixed$
|
|
7438
|
+
declare const Mixed$15: abstract new () => TsDsl<ts.ConditionalExpression>;
|
|
7439
|
+
declare class TernaryTsDsl extends Mixed$15 {
|
|
7316
7440
|
readonly '~dsl' = "TernaryTsDsl";
|
|
7317
7441
|
protected _condition?: string | MaybeTsDsl<ts.Expression>;
|
|
7318
7442
|
protected _then?: string | MaybeTsDsl<ts.Expression>;
|
|
@@ -7322,49 +7446,38 @@ declare class TernaryTsDsl extends Mixed$16 {
|
|
|
7322
7446
|
condition(condition: string | MaybeTsDsl<ts.Expression>): this;
|
|
7323
7447
|
do(expr: string | MaybeTsDsl<ts.Expression>): this;
|
|
7324
7448
|
otherwise(expr: string | MaybeTsDsl<ts.Expression>): this;
|
|
7325
|
-
toAst(): ts.ConditionalExpression;
|
|
7449
|
+
toAst(ctx: AstContext): ts.ConditionalExpression;
|
|
7326
7450
|
}
|
|
7327
7451
|
//#endregion
|
|
7328
7452
|
//#region src/ts-dsl/layout/newline.d.ts
|
|
7329
7453
|
declare class NewlineTsDsl extends TsDsl<ts.Identifier> {
|
|
7330
7454
|
readonly '~dsl' = "NewlineTsDsl";
|
|
7331
7455
|
analyze(ctx: AnalysisContext): void;
|
|
7332
|
-
toAst(): ts.Identifier;
|
|
7333
|
-
}
|
|
7334
|
-
//#endregion
|
|
7335
|
-
//#region src/ts-dsl/layout/note.d.ts
|
|
7336
|
-
declare class NoteTsDsl extends TsDsl<ts.Node> {
|
|
7337
|
-
readonly '~dsl' = "NoteTsDsl";
|
|
7338
|
-
protected _lines: Array<string>;
|
|
7339
|
-
constructor(lines?: MaybeArray$1<string>, fn?: (d: NoteTsDsl) => void);
|
|
7340
|
-
analyze(ctx: AnalysisContext): void;
|
|
7341
|
-
add(...lines: ReadonlyArray<string>): this;
|
|
7342
|
-
apply<T extends ts.Node>(node: T): T;
|
|
7343
|
-
toAst(): ts.Node;
|
|
7456
|
+
toAst(ctx: AstContext): ts.Identifier;
|
|
7344
7457
|
}
|
|
7345
7458
|
//#endregion
|
|
7346
7459
|
//#region src/ts-dsl/stmt/block.d.ts
|
|
7347
|
-
declare const Mixed$
|
|
7348
|
-
declare class BlockTsDsl extends Mixed$
|
|
7460
|
+
declare const Mixed$14: MixinCtor<MixinCtor<abstract new () => TsDsl<ts.Block>, LayoutMethods>, DoMethods>;
|
|
7461
|
+
declare class BlockTsDsl extends Mixed$14 {
|
|
7349
7462
|
readonly '~dsl' = "BlockTsDsl";
|
|
7350
7463
|
constructor(...items: Array<DoExpr>);
|
|
7351
7464
|
analyze(ctx: AnalysisContext): void;
|
|
7352
|
-
toAst(): ts.Block;
|
|
7465
|
+
toAst(ctx: AstContext): ts.Block;
|
|
7353
7466
|
}
|
|
7354
7467
|
//#endregion
|
|
7355
7468
|
//#region src/ts-dsl/stmt/stmt.d.ts
|
|
7356
|
-
declare const Mixed$
|
|
7357
|
-
declare class StmtTsDsl extends Mixed$
|
|
7469
|
+
declare const Mixed$13: abstract new () => TsDsl<ts.Statement>;
|
|
7470
|
+
declare class StmtTsDsl extends Mixed$13 {
|
|
7358
7471
|
readonly '~dsl' = "StmtTsDsl";
|
|
7359
7472
|
protected _inner: ts.Expression | ts.Statement | TsDsl<any>;
|
|
7360
7473
|
constructor(inner: ts.Expression | ts.Statement | TsDsl<any>);
|
|
7361
7474
|
analyze(ctx: AnalysisContext): void;
|
|
7362
|
-
toAst(): ts.Statement;
|
|
7475
|
+
toAst(ctx: AstContext): ts.Statement;
|
|
7363
7476
|
}
|
|
7364
7477
|
//#endregion
|
|
7365
7478
|
//#region src/ts-dsl/stmt/throw.d.ts
|
|
7366
|
-
declare const Mixed$
|
|
7367
|
-
declare class ThrowTsDsl extends Mixed$
|
|
7479
|
+
declare const Mixed$12: abstract new () => TsDsl<ts.ThrowStatement>;
|
|
7480
|
+
declare class ThrowTsDsl extends Mixed$12 {
|
|
7368
7481
|
readonly '~dsl' = "ThrowTsDsl";
|
|
7369
7482
|
protected error: string | MaybeTsDsl<ts.Expression>;
|
|
7370
7483
|
protected msg?: string | MaybeTsDsl<ts.Expression>;
|
|
@@ -7372,13 +7485,13 @@ declare class ThrowTsDsl extends Mixed$13 {
|
|
|
7372
7485
|
constructor(error: string | MaybeTsDsl<ts.Expression>, useNew?: boolean);
|
|
7373
7486
|
analyze(ctx: AnalysisContext): void;
|
|
7374
7487
|
message(value: string | MaybeTsDsl<ts.Expression>): this;
|
|
7375
|
-
toAst(): ts.ThrowStatement;
|
|
7488
|
+
toAst(ctx: AstContext): ts.ThrowStatement;
|
|
7376
7489
|
}
|
|
7377
7490
|
//#endregion
|
|
7378
7491
|
//#region src/ts-dsl/stmt/try.d.ts
|
|
7379
|
-
declare const Mixed$
|
|
7492
|
+
declare const Mixed$11: abstract new () => TsDsl<ts.TryStatement>;
|
|
7380
7493
|
type CatchParam = Symbol | string;
|
|
7381
|
-
declare class TryTsDsl extends Mixed$
|
|
7494
|
+
declare class TryTsDsl extends Mixed$11 {
|
|
7382
7495
|
readonly '~dsl' = "TryTsDsl";
|
|
7383
7496
|
protected _catch?: Array<DoExpr>;
|
|
7384
7497
|
protected _catchArg?: CatchParam;
|
|
@@ -7390,25 +7503,7 @@ declare class TryTsDsl extends Mixed$12 {
|
|
|
7390
7503
|
catchArg(arg: CatchParam): this;
|
|
7391
7504
|
finally(...items: Array<DoExpr>): this;
|
|
7392
7505
|
try(...items: Array<DoExpr>): this;
|
|
7393
|
-
toAst(): ts.TryStatement;
|
|
7394
|
-
}
|
|
7395
|
-
//#endregion
|
|
7396
|
-
//#region src/ts-dsl/stmt/var.d.ts
|
|
7397
|
-
type VarName = Symbol | string;
|
|
7398
|
-
declare const Mixed$11: MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.VariableStatement>, ValueMethods>, PatternMethods>, HintMethods>, ExportMethods>, DocMethods>, DefaultMethods>;
|
|
7399
|
-
declare class VarTsDsl extends Mixed$11 {
|
|
7400
|
-
readonly '~dsl' = "VarTsDsl";
|
|
7401
|
-
protected kind: ts.NodeFlags;
|
|
7402
|
-
protected name?: Ref<VarName>;
|
|
7403
|
-
protected _type?: TypeTsDsl;
|
|
7404
|
-
constructor(name?: VarName);
|
|
7405
|
-
analyze(ctx: AnalysisContext): void;
|
|
7406
|
-
const(): this;
|
|
7407
|
-
let(): this;
|
|
7408
|
-
/** Sets the variable type. */
|
|
7409
|
-
type(type: string | TypeTsDsl): this;
|
|
7410
|
-
var(): this;
|
|
7411
|
-
toAst(): ts.VariableStatement;
|
|
7506
|
+
toAst(ctx: AstContext): ts.TryStatement;
|
|
7412
7507
|
}
|
|
7413
7508
|
//#endregion
|
|
7414
7509
|
//#region src/ts-dsl/token.d.ts
|
|
@@ -7444,44 +7539,41 @@ declare class TypeAliasTsDsl extends Mixed$10 {
|
|
|
7444
7539
|
analyze(ctx: AnalysisContext): void;
|
|
7445
7540
|
/** Sets the type expression on the right-hand side of `= ...`. */
|
|
7446
7541
|
type(node: Value): this;
|
|
7447
|
-
toAst(): ts.TypeAliasDeclaration;
|
|
7542
|
+
toAst(ctx: AstContext): ts.TypeAliasDeclaration;
|
|
7448
7543
|
}
|
|
7449
7544
|
//#endregion
|
|
7450
7545
|
//#region src/ts-dsl/type/and.d.ts
|
|
7451
7546
|
type Type$1 = Symbol | string | ts.TypeNode | TypeTsDsl;
|
|
7452
|
-
declare const Mixed$9: abstract new () =>
|
|
7547
|
+
declare const Mixed$9: abstract new () => TsDsl<ts.IntersectionTypeNode>;
|
|
7453
7548
|
declare class TypeAndTsDsl extends Mixed$9 {
|
|
7454
7549
|
readonly '~dsl' = "TypeAndTsDsl";
|
|
7455
7550
|
protected _types: Array<Ref<Type$1>>;
|
|
7456
7551
|
constructor(...nodes: Array<Type$1>);
|
|
7457
7552
|
analyze(ctx: AnalysisContext): void;
|
|
7458
7553
|
types(...nodes: Array<Type$1>): this;
|
|
7459
|
-
toAst(): ts.IntersectionTypeNode;
|
|
7554
|
+
toAst(ctx: AstContext): ts.IntersectionTypeNode;
|
|
7460
7555
|
}
|
|
7461
7556
|
//#endregion
|
|
7462
7557
|
//#region src/ts-dsl/type/func.d.ts
|
|
7463
|
-
declare const Mixed$8: MixinCtor<MixinCtor<MixinCtor<abstract new () =>
|
|
7558
|
+
declare const Mixed$8: MixinCtor<MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.FunctionTypeNode>, TypeReturnsMethods>, TypeParamsMethods>, ParamMethods>, DocMethods>;
|
|
7464
7559
|
declare class TypeFuncTsDsl extends Mixed$8 {
|
|
7465
7560
|
readonly '~dsl' = "TypeFuncTsDsl";
|
|
7466
|
-
protected _returns?: TypeTsDsl;
|
|
7467
7561
|
analyze(ctx: AnalysisContext): void;
|
|
7468
|
-
|
|
7469
|
-
returns(type: string | TypeTsDsl): this;
|
|
7470
|
-
toAst(): ts.FunctionTypeNode;
|
|
7562
|
+
toAst(ctx: AstContext): ts.FunctionTypeNode;
|
|
7471
7563
|
}
|
|
7472
7564
|
//#endregion
|
|
7473
7565
|
//#region src/ts-dsl/type/literal.d.ts
|
|
7474
|
-
declare const Mixed$7: abstract new () =>
|
|
7566
|
+
declare const Mixed$7: abstract new () => TsDsl<ts.LiteralTypeNode>;
|
|
7475
7567
|
declare class TypeLiteralTsDsl extends Mixed$7 {
|
|
7476
7568
|
readonly '~dsl' = "TypeLiteralTsDsl";
|
|
7477
7569
|
protected value: string | number | boolean | null;
|
|
7478
7570
|
constructor(value: string | number | boolean | null);
|
|
7479
7571
|
analyze(ctx: AnalysisContext): void;
|
|
7480
|
-
toAst(): ts.LiteralTypeNode;
|
|
7572
|
+
toAst(ctx: AstContext): ts.LiteralTypeNode;
|
|
7481
7573
|
}
|
|
7482
7574
|
//#endregion
|
|
7483
7575
|
//#region src/ts-dsl/type/mapped.d.ts
|
|
7484
|
-
declare const Mixed$6: abstract new () =>
|
|
7576
|
+
declare const Mixed$6: abstract new () => TsDsl<ts.MappedTypeNode>;
|
|
7485
7577
|
declare class TypeMappedTsDsl extends Mixed$6 {
|
|
7486
7578
|
readonly '~dsl' = "TypeMappedTsDsl";
|
|
7487
7579
|
protected questionToken?: TokenTsDsl<ts.SyntaxKind.QuestionToken | ts.SyntaxKind.PlusToken | ts.SyntaxKind.MinusToken>;
|
|
@@ -7507,7 +7599,7 @@ declare class TypeMappedTsDsl extends Mixed$6 {
|
|
|
7507
7599
|
required(): this;
|
|
7508
7600
|
/** Sets the mapped value type: `[K in X]: ValueType` */
|
|
7509
7601
|
type(type: string | MaybeTsDsl<ts.TypeNode>): this;
|
|
7510
|
-
toAst(): ts.MappedTypeNode;
|
|
7602
|
+
toAst(ctx: AstContext): ts.MappedTypeNode;
|
|
7511
7603
|
$validate(): asserts this is this & {
|
|
7512
7604
|
_key: string | MaybeTsDsl<ts.TypeNode>;
|
|
7513
7605
|
_name: string;
|
|
@@ -7519,7 +7611,7 @@ declare class TypeMappedTsDsl extends Mixed$6 {
|
|
|
7519
7611
|
//#region src/ts-dsl/type/idx-sig.d.ts
|
|
7520
7612
|
type TypeIdxSigName = string;
|
|
7521
7613
|
type TypeIdxSigType = string | MaybeTsDsl<ts.TypeNode>;
|
|
7522
|
-
declare const Mixed$5: MixinCtor<MixinCtor<abstract new () =>
|
|
7614
|
+
declare const Mixed$5: MixinCtor<MixinCtor<abstract new () => TsDsl<ts.IndexSignatureDeclaration>, ReadonlyMethods>, DocMethods>;
|
|
7523
7615
|
declare class TypeIdxSigTsDsl extends Mixed$5 {
|
|
7524
7616
|
readonly '~dsl' = "TypeIdxSigTsDsl";
|
|
7525
7617
|
protected _key?: TypeIdxSigType;
|
|
@@ -7533,7 +7625,7 @@ declare class TypeIdxSigTsDsl extends Mixed$5 {
|
|
|
7533
7625
|
key(type: TypeIdxSigType): this;
|
|
7534
7626
|
/** Sets the property type. */
|
|
7535
7627
|
type(type: TypeIdxSigType): this;
|
|
7536
|
-
toAst(): ts.IndexSignatureDeclaration;
|
|
7628
|
+
toAst(ctx: AstContext): ts.IndexSignatureDeclaration;
|
|
7537
7629
|
$validate(): asserts this is this & {
|
|
7538
7630
|
_key: TypeIdxSigType;
|
|
7539
7631
|
_name: TypeIdxSigName;
|
|
@@ -7545,7 +7637,7 @@ declare class TypeIdxSigTsDsl extends Mixed$5 {
|
|
|
7545
7637
|
//#region src/ts-dsl/type/prop.d.ts
|
|
7546
7638
|
type TypePropName = string;
|
|
7547
7639
|
type TypePropType = Symbol | string | MaybeTsDsl<ts.TypeNode>;
|
|
7548
|
-
declare const Mixed$4: MixinCtor<MixinCtor<MixinCtor<abstract new () =>
|
|
7640
|
+
declare const Mixed$4: MixinCtor<MixinCtor<MixinCtor<abstract new () => TsDsl<ts.TypeElement>, ReadonlyMethods>, OptionalMethods>, DocMethods>;
|
|
7549
7641
|
declare class TypePropTsDsl extends Mixed$4 {
|
|
7550
7642
|
readonly '~dsl' = "TypePropTsDsl";
|
|
7551
7643
|
protected name: TypePropName;
|
|
@@ -7554,11 +7646,11 @@ declare class TypePropTsDsl extends Mixed$4 {
|
|
|
7554
7646
|
analyze(ctx: AnalysisContext): void;
|
|
7555
7647
|
/** Sets the property type. */
|
|
7556
7648
|
type(type: TypePropType): this;
|
|
7557
|
-
toAst(): ts.PropertySignature;
|
|
7649
|
+
toAst(ctx: AstContext): ts.PropertySignature;
|
|
7558
7650
|
}
|
|
7559
7651
|
//#endregion
|
|
7560
7652
|
//#region src/ts-dsl/type/object.d.ts
|
|
7561
|
-
declare const Mixed$3: abstract new () =>
|
|
7653
|
+
declare const Mixed$3: abstract new () => TsDsl<ts.TypeNode>;
|
|
7562
7654
|
declare class TypeObjectTsDsl extends Mixed$3 {
|
|
7563
7655
|
readonly '~dsl' = "TypeObjectTsDsl";
|
|
7564
7656
|
protected props: Array<TypePropTsDsl | TypeIdxSigTsDsl>;
|
|
@@ -7571,23 +7663,23 @@ declare class TypeObjectTsDsl extends Mixed$3 {
|
|
|
7571
7663
|
get isEmpty(): boolean;
|
|
7572
7664
|
/** Adds a property signature (returns property builder). */
|
|
7573
7665
|
prop(name: string, fn: (p: TypePropTsDsl) => void): this;
|
|
7574
|
-
toAst(): ts.TypeLiteralNode;
|
|
7666
|
+
toAst(ctx: AstContext): ts.TypeLiteralNode;
|
|
7575
7667
|
}
|
|
7576
7668
|
//#endregion
|
|
7577
7669
|
//#region src/ts-dsl/type/or.d.ts
|
|
7578
7670
|
type Type = Symbol | string | ts.TypeNode | TypeTsDsl;
|
|
7579
|
-
declare const Mixed$2: abstract new () =>
|
|
7671
|
+
declare const Mixed$2: abstract new () => TsDsl<ts.UnionTypeNode>;
|
|
7580
7672
|
declare class TypeOrTsDsl extends Mixed$2 {
|
|
7581
7673
|
readonly '~dsl' = "TypeOrTsDsl";
|
|
7582
7674
|
protected _types: Array<Ref<Type>>;
|
|
7583
7675
|
constructor(...nodes: Array<Type>);
|
|
7584
7676
|
analyze(ctx: AnalysisContext): void;
|
|
7585
7677
|
types(...nodes: Array<Type>): this;
|
|
7586
|
-
toAst(): ts.UnionTypeNode;
|
|
7678
|
+
toAst(ctx: AstContext): ts.UnionTypeNode;
|
|
7587
7679
|
}
|
|
7588
7680
|
//#endregion
|
|
7589
7681
|
//#region src/ts-dsl/type/template.d.ts
|
|
7590
|
-
declare const Mixed$1: abstract new () =>
|
|
7682
|
+
declare const Mixed$1: abstract new () => TsDsl<ts.TemplateLiteralTypeNode>;
|
|
7591
7683
|
declare class TypeTemplateTsDsl extends Mixed$1 {
|
|
7592
7684
|
readonly '~dsl' = "TypeTemplateTsDsl";
|
|
7593
7685
|
protected parts: Array<string | MaybeTsDsl<ts.TypeNode>>;
|
|
@@ -7595,18 +7687,18 @@ declare class TypeTemplateTsDsl extends Mixed$1 {
|
|
|
7595
7687
|
analyze(ctx: AnalysisContext): void;
|
|
7596
7688
|
/** Adds a raw string segment or embedded type expression. */
|
|
7597
7689
|
add(part: string | MaybeTsDsl<ts.TypeNode>): this;
|
|
7598
|
-
toAst(): ts.TemplateLiteralTypeNode;
|
|
7690
|
+
toAst(ctx: AstContext): ts.TemplateLiteralTypeNode;
|
|
7599
7691
|
}
|
|
7600
7692
|
//#endregion
|
|
7601
7693
|
//#region src/ts-dsl/type/tuple.d.ts
|
|
7602
|
-
declare const Mixed: abstract new () =>
|
|
7694
|
+
declare const Mixed: abstract new () => TsDsl<ts.TupleTypeNode>;
|
|
7603
7695
|
declare class TypeTupleTsDsl extends Mixed {
|
|
7604
7696
|
readonly '~dsl' = "TypeTupleTsDsl";
|
|
7605
7697
|
protected _elements: Array<string | ts.TypeNode | TypeTsDsl>;
|
|
7606
7698
|
constructor(...nodes: Array<string | ts.TypeNode | TypeTsDsl>);
|
|
7607
7699
|
analyze(ctx: AnalysisContext): void;
|
|
7608
7700
|
elements(...types: Array<string | ts.TypeNode | TypeTsDsl>): this;
|
|
7609
|
-
toAst(): ts.TupleTypeNode;
|
|
7701
|
+
toAst(ctx: AstContext): ts.TupleTypeNode;
|
|
7610
7702
|
}
|
|
7611
7703
|
//#endregion
|
|
7612
7704
|
//#region src/ts-dsl/render/typescript.d.ts
|
|
@@ -7703,39 +7795,39 @@ declare const reserved: {
|
|
|
7703
7795
|
};
|
|
7704
7796
|
//#endregion
|
|
7705
7797
|
//#region src/ts-dsl/index.d.ts
|
|
7706
|
-
declare const $: ((id:
|
|
7798
|
+
declare const $: ((id: string | _hey_api_codegen_core0.Symbol | ts.Expression | TsDsl<ts.Expression>) => ExprTsDsl) & {
|
|
7707
7799
|
/** Creates an array literal expression (e.g. `[1, 2, 3]`). */
|
|
7708
7800
|
array: (...args: ConstructorParameters<typeof ArrayTsDsl>) => ArrayTsDsl;
|
|
7709
7801
|
/** Creates an `as` type assertion expression (e.g. `value as Type`). */
|
|
7710
|
-
as: (expr:
|
|
7802
|
+
as: (expr: AsExpr, type: AsType) => AsTsDsl;
|
|
7711
7803
|
/** Creates a property access expression (e.g. `obj.foo`). */
|
|
7712
|
-
attr: (left:
|
|
7804
|
+
attr: (left: AttrLeft, right: AttrRight) => AttrTsDsl;
|
|
7713
7805
|
/** Creates an await expression (e.g. `await promise`). */
|
|
7714
|
-
await: (expr:
|
|
7806
|
+
await: (expr: AwaitExpr) => AwaitTsDsl;
|
|
7715
7807
|
/** Creates a binary expression (e.g. `a + b`). */
|
|
7716
|
-
binary: (base:
|
|
7808
|
+
binary: (base: string | _hey_api_codegen_core0.Symbol | ts.Expression | TsDsl<ts.Expression>, op?: (("!=" | "!==" | "&&" | "*" | "+" | "-" | "/" | "<" | "<=" | "=" | "==" | "===" | ">" | ">=" | "??" | "??=" | "||") | ts.BinaryOperator) | undefined, expr?: (string | _hey_api_codegen_core0.Symbol | ts.Expression | TsDsl<ts.Expression>) | undefined) => BinaryTsDsl;
|
|
7717
7809
|
/** Creates a statement block (`{ ... }`). */
|
|
7718
7810
|
block: (...args: ConstructorParameters<typeof BlockTsDsl>) => BlockTsDsl;
|
|
7719
7811
|
/** Creates a function or method call expression (e.g. `fn(arg)`). */
|
|
7720
|
-
call: (callee: CallCallee, ...args:
|
|
7812
|
+
call: (callee: CallCallee, ...args: (CallArg | undefined)[]) => CallTsDsl;
|
|
7721
7813
|
/** Creates a class declaration or expression. */
|
|
7722
|
-
class: (name:
|
|
7814
|
+
class: (name: string | _hey_api_codegen_core0.Symbol) => ClassTsDsl;
|
|
7723
7815
|
/** Creates a constant variable declaration (`const`). */
|
|
7724
|
-
const: (name?:
|
|
7816
|
+
const: (name?: VarName | undefined) => VarTsDsl;
|
|
7725
7817
|
/** Creates a decorator expression (e.g. `@decorator`). */
|
|
7726
|
-
decorator: (name:
|
|
7818
|
+
decorator: (name: DecoratorName, ...args: (string | ts.Expression | TsDsl<ts.Expression>)[]) => DecoratorTsDsl;
|
|
7727
7819
|
/** Creates a JSDoc documentation block. */
|
|
7728
|
-
doc: (lines?:
|
|
7820
|
+
doc: (lines?: DocLines | undefined, fn?: DocFn | undefined) => DocTsDsl;
|
|
7729
7821
|
/** Creates an enum declaration. */
|
|
7730
|
-
enum: (name:
|
|
7822
|
+
enum: (name: EnumName, fn?: ((e: EnumTsDsl) => void) | undefined) => EnumTsDsl;
|
|
7731
7823
|
/** Creates a general expression node. */
|
|
7732
|
-
expr: (id:
|
|
7824
|
+
expr: (id: string | _hey_api_codegen_core0.Symbol | ts.Expression | TsDsl<ts.Expression>) => ExprTsDsl;
|
|
7733
7825
|
/** Creates a field declaration in a class or object. */
|
|
7734
|
-
field: (name:
|
|
7826
|
+
field: (name: FieldName, fn?: ((f: FieldTsDsl) => void) | undefined) => FieldTsDsl;
|
|
7735
7827
|
/** Converts a runtime value into a corresponding expression node. */
|
|
7736
7828
|
fromValue: (input: unknown, options?: {
|
|
7737
7829
|
layout?: "pretty";
|
|
7738
|
-
} | undefined) => TsDsl<
|
|
7830
|
+
} | undefined) => TsDsl<ts.Expression>;
|
|
7739
7831
|
/** Creates a function expression or declaration. */
|
|
7740
7832
|
func: {
|
|
7741
7833
|
(): FuncTsDsl<"arrow">;
|
|
@@ -7747,39 +7839,41 @@ declare const $: ((id: any) => ExprTsDsl) & {
|
|
|
7747
7839
|
/** Creates a getter method declaration. */
|
|
7748
7840
|
getter: (name: GetterName, fn?: ((g: GetterTsDsl) => void) | undefined) => GetterTsDsl;
|
|
7749
7841
|
/** Creates a single-line comment (//). */
|
|
7750
|
-
hint: (lines?:
|
|
7842
|
+
hint: (lines?: HintLines | undefined, fn?: HintFn | undefined) => HintTsDsl;
|
|
7751
7843
|
/** Creates an identifier (e.g. `foo`). */
|
|
7752
7844
|
id: (name: string) => IdTsDsl;
|
|
7753
7845
|
/** Creates an if statement. */
|
|
7754
7846
|
if: (condition?: IfCondition | undefined) => IfTsDsl;
|
|
7755
7847
|
/** Creates an initialization block or statement. */
|
|
7756
7848
|
init: (fn?: ((i: InitTsDsl) => void) | undefined) => InitTsDsl;
|
|
7849
|
+
/** Creates a lazy, context-aware node with deferred evaluation. */
|
|
7850
|
+
lazy: <T extends ts.Node>(thunk: LazyThunk<T>) => LazyTsDsl<T>;
|
|
7757
7851
|
/** Creates a let variable declaration (`let`). */
|
|
7758
|
-
let: (name?:
|
|
7852
|
+
let: (name?: VarName | undefined) => VarTsDsl;
|
|
7759
7853
|
/** Creates a literal value (e.g. string, number, boolean). */
|
|
7760
7854
|
literal: (value: string | number | boolean | null) => LiteralTsDsl;
|
|
7761
7855
|
/** Creates an enum member declaration. */
|
|
7762
|
-
member: (name: string, value?: ((string | number |
|
|
7856
|
+
member: (name: string, value?: ((string | number | ts.Expression | TsDsl<ts.Expression>) | ((m: EnumMemberTsDsl) => void)) | undefined) => EnumMemberTsDsl;
|
|
7763
7857
|
/** Creates a method declaration inside a class or object. */
|
|
7764
7858
|
method: (name: string, fn?: ((m: MethodTsDsl) => void) | undefined) => MethodTsDsl;
|
|
7765
7859
|
/** Creates a negation expression (`-x`). */
|
|
7766
|
-
neg: (expr?: string |
|
|
7860
|
+
neg: (expr?: string | ts.Expression | TsDsl<ts.Expression> | undefined, op?: ts.PrefixUnaryOperator | undefined) => PrefixTsDsl;
|
|
7767
7861
|
/** Creates a new expression (e.g. `new ClassName()`). */
|
|
7768
|
-
new: (classExpr:
|
|
7862
|
+
new: (classExpr: NewExpr, ...args: NewExpr[]) => NewTsDsl;
|
|
7769
7863
|
/** Creates a newline (for formatting purposes). */
|
|
7770
7864
|
newline: () => NewlineTsDsl;
|
|
7771
7865
|
/** Creates a logical NOT expression (`!x`). */
|
|
7772
|
-
not: (expr?: string |
|
|
7866
|
+
not: (expr?: string | ts.Expression | TsDsl<ts.Expression> | undefined, op?: ts.PrefixUnaryOperator | undefined) => PrefixTsDsl;
|
|
7773
7867
|
/** Creates a block comment (/* ... *\/). */
|
|
7774
|
-
note: (lines?:
|
|
7868
|
+
note: (lines?: NoteLines | undefined, fn?: NoteFn | undefined) => NoteTsDsl;
|
|
7775
7869
|
/** Creates an object literal expression. */
|
|
7776
7870
|
object: (...args: ConstructorParameters<typeof ObjectTsDsl>) => ObjectTsDsl;
|
|
7777
7871
|
/** Creates a parameter declaration for functions or methods. */
|
|
7778
|
-
param: (name:
|
|
7872
|
+
param: (name: ParamName | ((p: ParamTsDsl) => void), fn?: ((p: ParamTsDsl) => void) | undefined) => ParamTsDsl;
|
|
7779
7873
|
/** Creates a pattern for destructuring or matching. */
|
|
7780
7874
|
pattern: () => PatternTsDsl;
|
|
7781
7875
|
/** Creates a prefix unary expression (e.g. `-x`, `!x`, `~x`). */
|
|
7782
|
-
prefix: (expr?: string |
|
|
7876
|
+
prefix: (expr?: string | ts.Expression | TsDsl<ts.Expression> | undefined, op?: ts.PrefixUnaryOperator | undefined) => PrefixTsDsl;
|
|
7783
7877
|
/** Creates an object literal property (e.g. `{ foo: bar }`). */
|
|
7784
7878
|
prop: (meta: {
|
|
7785
7879
|
kind: "computed";
|
|
@@ -7800,37 +7894,37 @@ declare const $: ((id: any) => ExprTsDsl) & {
|
|
|
7800
7894
|
/** Creates a regular expression literal (e.g. `/foo/gi`). */
|
|
7801
7895
|
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;
|
|
7802
7896
|
/** Creates a return statement. */
|
|
7803
|
-
return: (expr?:
|
|
7897
|
+
return: (expr?: ReturnExpr | undefined) => ReturnTsDsl;
|
|
7804
7898
|
/** Creates a setter method declaration. */
|
|
7805
7899
|
setter: (name: SetterName, fn?: ((s: SetterTsDsl) => void) | undefined) => SetterTsDsl;
|
|
7806
7900
|
/** Wraps an expression or statement-like value into a `StmtTsDsl`. */
|
|
7807
|
-
stmt: (inner:
|
|
7901
|
+
stmt: (inner: ts.Expression | ts.Statement | TsDsl<any>) => StmtTsDsl;
|
|
7808
7902
|
/** Creates a template literal expression. */
|
|
7809
|
-
template: (value?:
|
|
7903
|
+
template: (value?: TemplatePart | undefined) => TemplateTsDsl;
|
|
7810
7904
|
/** Creates a ternary conditional expression (if ? then : else). */
|
|
7811
|
-
ternary: (condition?: string |
|
|
7905
|
+
ternary: (condition?: string | ts.Expression | TsDsl<ts.Expression> | undefined) => TernaryTsDsl;
|
|
7812
7906
|
/** Creates a throw statement. */
|
|
7813
|
-
throw: (error: string |
|
|
7907
|
+
throw: (error: string | ts.Expression | TsDsl<ts.Expression>, useNew?: boolean | undefined) => ThrowTsDsl;
|
|
7814
7908
|
/** Creates a syntax token (e.g. `?`, `readonly`, `+`, `-`). */
|
|
7815
7909
|
token: () => TokenTsDsl<never>;
|
|
7816
7910
|
/** Creates a try/catch/finally statement. */
|
|
7817
7911
|
try: (...args: ConstructorParameters<typeof TryTsDsl>) => TryTsDsl;
|
|
7818
7912
|
/** Creates a basic type reference or type expression (e.g. Foo or Foo<T>). */
|
|
7819
|
-
type: ((name:
|
|
7913
|
+
type: ((name: TypeExprName, fn?: TypeExprFn | undefined) => TypeExprTsDsl) & {
|
|
7820
7914
|
/** Creates a type alias declaration (e.g. `type Foo = Bar`). */
|
|
7821
|
-
alias: (name:
|
|
7915
|
+
alias: (name: string | _hey_api_codegen_core0.Symbol, fn?: ((t: TypeAliasTsDsl) => void) | undefined) => TypeAliasTsDsl;
|
|
7822
7916
|
/** Creates an intersection type (e.g. `A & B`). */
|
|
7823
7917
|
and: (...args: ConstructorParameters<typeof TypeAndTsDsl>) => TypeAndTsDsl;
|
|
7824
7918
|
/** Creates a qualified type reference (e.g. Foo.Bar). */
|
|
7825
|
-
attr: (right:
|
|
7919
|
+
attr: (right: string | _hey_api_codegen_core0.Symbol | ts.Identifier) => TypeAttrTsDsl;
|
|
7826
7920
|
/** Creates a basic type reference or type expression (e.g. Foo or Foo<T>). */
|
|
7827
|
-
expr: (name:
|
|
7921
|
+
expr: (name: TypeExprName, fn?: TypeExprFn | undefined) => TypeExprTsDsl;
|
|
7828
7922
|
/** Converts a runtime value into a corresponding type expression node. */
|
|
7829
|
-
fromValue: (input: unknown) => TsDsl<
|
|
7923
|
+
fromValue: (input: unknown) => TsDsl<ts.TypeNode>;
|
|
7830
7924
|
/** Creates a function type node (e.g. `(a: string) => number`). */
|
|
7831
7925
|
func: (...args: ConstructorParameters<typeof TypeFuncTsDsl>) => TypeFuncTsDsl;
|
|
7832
7926
|
/** Creates an indexed-access type (e.g. `Foo<T>[K]`). */
|
|
7833
|
-
idx: (base: string |
|
|
7927
|
+
idx: (base: string | ts.TypeNode | TsDsl<ts.TypeNode>, index: string | number | ts.TypeNode | TsDsl<ts.TypeNode>) => TypeIdxTsDsl;
|
|
7834
7928
|
/** Creates a literal type node (e.g. 'foo', 42, or true). */
|
|
7835
7929
|
literal: (value: string | number | boolean | null) => TypeLiteralTsDsl;
|
|
7836
7930
|
/** Creates a mapped type (e.g. `{ [K in keyof T]: U }`). */
|
|
@@ -7842,18 +7936,18 @@ declare const $: ((id: any) => ExprTsDsl) & {
|
|
|
7842
7936
|
/** Represents a union type (e.g. `A | B | C`). */
|
|
7843
7937
|
or: (...args: ConstructorParameters<typeof TypeOrTsDsl>) => TypeOrTsDsl;
|
|
7844
7938
|
/** Creates a type parameter (e.g. `<T>`). */
|
|
7845
|
-
param: (name?:
|
|
7939
|
+
param: (name?: TypeParamName | undefined, fn?: ((name: TypeParamTsDsl) => void) | undefined) => TypeParamTsDsl;
|
|
7846
7940
|
/** Creates a type query node (e.g. `typeof Foo`). */
|
|
7847
|
-
query: (expr:
|
|
7941
|
+
query: (expr: TypeQueryExpr) => TypeQueryTsDsl;
|
|
7848
7942
|
/** Builds a TypeScript template literal *type* (e.g. `${Foo}-${Bar}` as a type). */
|
|
7849
|
-
template: (value?: string |
|
|
7943
|
+
template: (value?: string | ts.TypeNode | TsDsl<ts.TypeNode> | undefined) => TypeTemplateTsDsl;
|
|
7850
7944
|
/** Creates a tuple type (e.g. [A, B, C]). */
|
|
7851
7945
|
tuple: (...args: ConstructorParameters<typeof TypeTupleTsDsl>) => TypeTupleTsDsl;
|
|
7852
7946
|
};
|
|
7853
|
-
/** Creates a
|
|
7854
|
-
typeofExpr: (expr:
|
|
7855
|
-
/** Creates a variable declaration (var). */
|
|
7856
|
-
var: (name?:
|
|
7947
|
+
/** Creates a `typeof` expression (e.g. `typeof value`). */
|
|
7948
|
+
typeofExpr: (expr: TypeOfExpr) => TypeOfExprTsDsl;
|
|
7949
|
+
/** Creates a variable declaration (`var`). */
|
|
7950
|
+
var: (name?: VarName | undefined) => VarTsDsl;
|
|
7857
7951
|
};
|
|
7858
7952
|
type DollarTsDsl = {
|
|
7859
7953
|
/**
|
|
@@ -7870,7 +7964,7 @@ type DollarTsDsl = {
|
|
|
7870
7964
|
*
|
|
7871
7965
|
* Returns:
|
|
7872
7966
|
* - A new `ExprTsDsl` instance when called directly.
|
|
7873
|
-
* - The `
|
|
7967
|
+
* - The `tsDsl` object for constructing more specific nodes.
|
|
7874
7968
|
*/
|
|
7875
7969
|
$: typeof $;
|
|
7876
7970
|
};
|
|
@@ -14136,8 +14230,6 @@ declare class PluginInstance<T extends Plugin.Types = Plugin.Types> {
|
|
|
14136
14230
|
gen: IProject;
|
|
14137
14231
|
name: string;
|
|
14138
14232
|
});
|
|
14139
|
-
addNode(node: Node | null): number;
|
|
14140
|
-
updateNode(index: number, node: Node | null): void;
|
|
14141
14233
|
/**
|
|
14142
14234
|
* Iterates over various input elements as specified by the event types, in
|
|
14143
14235
|
* a specific order: servers, schemas, parameters, request bodies, then
|
|
@@ -14188,6 +14280,14 @@ declare class PluginInstance<T extends Plugin.Types = Plugin.Types> {
|
|
|
14188
14280
|
};
|
|
14189
14281
|
};
|
|
14190
14282
|
isSymbolRegistered(identifier: SymbolIdentifier): boolean;
|
|
14283
|
+
/**
|
|
14284
|
+
* Sets or adds a node to the project graph.
|
|
14285
|
+
*
|
|
14286
|
+
* @param node The node to be added or updated in the project graph.
|
|
14287
|
+
* @param index The index at which to update the node. If undefined, the node will be added.
|
|
14288
|
+
* @returns The index of the added node or void if updated.
|
|
14289
|
+
*/
|
|
14290
|
+
node<T extends number | undefined = undefined>(node: Node | null, index?: T): T extends number ? void : number;
|
|
14191
14291
|
querySymbol(filter: SymbolMeta): Symbol | undefined;
|
|
14192
14292
|
referenceSymbol(meta: SymbolMeta): Symbol;
|
|
14193
14293
|
/**
|
|
@@ -14766,8 +14866,8 @@ type UserOutput = {
|
|
|
14766
14866
|
/**
|
|
14767
14867
|
* If specified, this will be the file extension used when importing
|
|
14768
14868
|
* other modules. By default, we don't add a file extension and let the
|
|
14769
|
-
* runtime resolve it. If you're using moduleResolution `nodenext
|
|
14770
|
-
* default to `.js`.
|
|
14869
|
+
* runtime resolve it. If you're using moduleResolution `nodenext` or
|
|
14870
|
+
* `node16`, we default to `.js`.
|
|
14771
14871
|
*
|
|
14772
14872
|
* @default undefined
|
|
14773
14873
|
*/
|
|
@@ -14865,8 +14965,8 @@ type Output = {
|
|
|
14865
14965
|
/**
|
|
14866
14966
|
* If specified, this will be the file extension used when importing
|
|
14867
14967
|
* other modules. By default, we don't add a file extension and let the
|
|
14868
|
-
* runtime resolve it. If you're using moduleResolution `nodenext
|
|
14869
|
-
* default to `.js`.
|
|
14968
|
+
* runtime resolve it. If you're using moduleResolution `nodenext` or
|
|
14969
|
+
* `node16`, we default to `.js`.
|
|
14870
14970
|
*/
|
|
14871
14971
|
importFileExtension: ImportFileExtensions | (string & {}) | null | undefined;
|
|
14872
14972
|
/**
|
|
@@ -15553,4 +15653,4 @@ type Config = Omit<Required<UserConfig>, 'input' | 'logs' | 'output' | 'parser'
|
|
|
15553
15653
|
};
|
|
15554
15654
|
//#endregion
|
|
15555
15655
|
export { LazyOrAsync as A, MaybeTsDsl as C, PluginHandler as D, Client as E, StringCase as O, TypeScriptRenderer as S, TypeTsDsl as T, $ as _, Plugin as a, regexp as b, OpenApiOperationObject as c, OpenApiResponseObject as d, OpenApiSchemaObject as f, ExpressionTransformer as g, TypeTransformer as h, DefinePlugin as i, MaybeArray as j, IR$1 as k, OpenApiParameterObject as l, Logger as m, UserConfig as n, OpenApi as o, Context as p, Input as r, OpenApiMetaObject as s, Config as t, OpenApiRequestBodyObject as u, DollarTsDsl as v, TsDsl as w, keywords as x, reserved as y };
|
|
15556
|
-
//# sourceMappingURL=config-
|
|
15656
|
+
//# sourceMappingURL=config-Duuay7XM.d.cts.map
|