@skmtc/core 0.0.798 → 0.0.800

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (103) hide show
  1. package/esm/context/GenerateContext.d.ts +26 -1
  2. package/esm/context/GenerateContext.d.ts.map +1 -1
  3. package/esm/context/GenerateContext.js +26 -1
  4. package/esm/context/ParseContext.d.ts +64 -3
  5. package/esm/context/ParseContext.d.ts.map +1 -1
  6. package/esm/context/ParseContext.js +61 -0
  7. package/esm/context/ResultsHandler.d.ts +10 -3
  8. package/esm/context/ResultsHandler.d.ts.map +1 -1
  9. package/esm/dsl/model/types.d.ts +51 -4
  10. package/esm/dsl/model/types.d.ts.map +1 -1
  11. package/esm/dsl/operation/types.d.ts +61 -3
  12. package/esm/dsl/operation/types.d.ts.map +1 -1
  13. package/esm/oas/array/array-types.d.ts +23 -0
  14. package/esm/oas/array/array-types.d.ts.map +1 -1
  15. package/esm/oas/array/array-types.js +7 -0
  16. package/esm/oas/boolean/boolean-types.d.ts +25 -1
  17. package/esm/oas/boolean/boolean-types.d.ts.map +1 -1
  18. package/esm/oas/boolean/boolean-types.js +6 -0
  19. package/esm/oas/discriminator/discriminator-types.d.ts +17 -0
  20. package/esm/oas/discriminator/discriminator-types.d.ts.map +1 -1
  21. package/esm/oas/discriminator/discriminator-types.js +7 -0
  22. package/esm/oas/integer/integer-types.d.ts +18 -0
  23. package/esm/oas/integer/integer-types.d.ts.map +1 -1
  24. package/esm/oas/integer/integer-types.js +18 -0
  25. package/esm/oas/mediaType/mediaType-types.d.ts +17 -0
  26. package/esm/oas/mediaType/mediaType-types.d.ts.map +1 -1
  27. package/esm/oas/mediaType/mediaType-types.js +6 -0
  28. package/esm/oas/number/number-types.d.ts +12 -0
  29. package/esm/oas/number/number-types.d.ts.map +1 -1
  30. package/esm/oas/number/number-types.js +12 -0
  31. package/esm/oas/operation/Operation.d.ts +47 -2
  32. package/esm/oas/operation/Operation.d.ts.map +1 -1
  33. package/esm/oas/operation/Operation.js +43 -0
  34. package/esm/oas/ref/Ref.d.ts +49 -2
  35. package/esm/oas/ref/Ref.d.ts.map +1 -1
  36. package/esm/oas/ref/Ref.js +28 -0
  37. package/esm/oas/serverVariable/ServerVariable.d.ts +34 -0
  38. package/esm/oas/serverVariable/ServerVariable.d.ts.map +1 -1
  39. package/esm/oas/serverVariable/ServerVariable.js +24 -0
  40. package/esm/oas/string/string-types.d.ts +38 -1
  41. package/esm/oas/string/string-types.d.ts.map +1 -1
  42. package/esm/oas/string/string-types.js +12 -0
  43. package/esm/oas/union/union-types.d.ts +20 -0
  44. package/esm/oas/union/union-types.d.ts.map +1 -1
  45. package/esm/oas/union/union-types.js +7 -0
  46. package/esm/oas/unknown/unknown-types.d.ts +18 -0
  47. package/esm/oas/unknown/unknown-types.d.ts.map +1 -1
  48. package/esm/oas/unknown/unknown-types.js +6 -0
  49. package/esm/typescript/List.d.ts +64 -3
  50. package/esm/typescript/List.d.ts.map +1 -1
  51. package/esm/typescript/List.js +43 -0
  52. package/package.json +1 -1
  53. package/script/context/GenerateContext.d.ts +26 -1
  54. package/script/context/GenerateContext.d.ts.map +1 -1
  55. package/script/context/GenerateContext.js +26 -1
  56. package/script/context/ParseContext.d.ts +64 -3
  57. package/script/context/ParseContext.d.ts.map +1 -1
  58. package/script/context/ParseContext.js +61 -0
  59. package/script/context/ResultsHandler.d.ts +10 -3
  60. package/script/context/ResultsHandler.d.ts.map +1 -1
  61. package/script/dsl/model/types.d.ts +51 -4
  62. package/script/dsl/model/types.d.ts.map +1 -1
  63. package/script/dsl/operation/types.d.ts +61 -3
  64. package/script/dsl/operation/types.d.ts.map +1 -1
  65. package/script/oas/array/array-types.d.ts +23 -0
  66. package/script/oas/array/array-types.d.ts.map +1 -1
  67. package/script/oas/array/array-types.js +7 -0
  68. package/script/oas/boolean/boolean-types.d.ts +25 -1
  69. package/script/oas/boolean/boolean-types.d.ts.map +1 -1
  70. package/script/oas/boolean/boolean-types.js +6 -0
  71. package/script/oas/discriminator/discriminator-types.d.ts +17 -0
  72. package/script/oas/discriminator/discriminator-types.d.ts.map +1 -1
  73. package/script/oas/discriminator/discriminator-types.js +7 -0
  74. package/script/oas/integer/integer-types.d.ts +18 -0
  75. package/script/oas/integer/integer-types.d.ts.map +1 -1
  76. package/script/oas/integer/integer-types.js +18 -0
  77. package/script/oas/mediaType/mediaType-types.d.ts +17 -0
  78. package/script/oas/mediaType/mediaType-types.d.ts.map +1 -1
  79. package/script/oas/mediaType/mediaType-types.js +6 -0
  80. package/script/oas/number/number-types.d.ts +12 -0
  81. package/script/oas/number/number-types.d.ts.map +1 -1
  82. package/script/oas/number/number-types.js +12 -0
  83. package/script/oas/operation/Operation.d.ts +47 -2
  84. package/script/oas/operation/Operation.d.ts.map +1 -1
  85. package/script/oas/operation/Operation.js +43 -0
  86. package/script/oas/ref/Ref.d.ts +49 -2
  87. package/script/oas/ref/Ref.d.ts.map +1 -1
  88. package/script/oas/ref/Ref.js +28 -0
  89. package/script/oas/serverVariable/ServerVariable.d.ts +34 -0
  90. package/script/oas/serverVariable/ServerVariable.d.ts.map +1 -1
  91. package/script/oas/serverVariable/ServerVariable.js +24 -0
  92. package/script/oas/string/string-types.d.ts +38 -1
  93. package/script/oas/string/string-types.d.ts.map +1 -1
  94. package/script/oas/string/string-types.js +12 -0
  95. package/script/oas/union/union-types.d.ts +20 -0
  96. package/script/oas/union/union-types.d.ts.map +1 -1
  97. package/script/oas/union/union-types.js +7 -0
  98. package/script/oas/unknown/unknown-types.d.ts +18 -0
  99. package/script/oas/unknown/unknown-types.d.ts.map +1 -1
  100. package/script/oas/unknown/unknown-types.js +6 -0
  101. package/script/typescript/List.d.ts +64 -3
  102. package/script/typescript/List.d.ts.map +1 -1
  103. package/script/typescript/List.js +43 -0
@@ -10,6 +10,11 @@ import type { OasDocument } from '../document/Document.js';
10
10
  import type { RefName } from '../../types/RefName.js';
11
11
  import type { OpenAPIV3 } from 'openapi-types';
12
12
  import type { OasSecurityScheme } from '../securitySchemes/SecurityScheme.js';
13
+ /**
14
+ * Field data for creating OAS reference objects.
15
+ *
16
+ * @template T - The type of component being referenced (e.g., 'schema', 'response')
17
+ */
13
18
  export type RefFields<T extends OasRefData['refType']> = {
14
19
  refType: T;
15
20
  $ref: string;
@@ -102,11 +107,39 @@ export type RefFields<T extends OasRefData['refType']> = {
102
107
  */
103
108
  export declare class OasRef<T extends OasRefData['refType']> {
104
109
  #private;
110
+ /** OAS type identifier */
105
111
  oasType: 'ref';
112
+ /** Type identifier */
106
113
  type: 'ref';
114
+ /**
115
+ * Creates a new OAS reference instance.
116
+ *
117
+ * @param fields - Reference field data including refType and $ref
118
+ * @param oasDocument - Document containing the referenced component
119
+ */
107
120
  constructor(fields: RefFields<T>, oasDocument: OasDocument);
121
+ /**
122
+ * Type guard to check if this instance is a reference.
123
+ *
124
+ * @returns Always true for OasRef instances
125
+ */
108
126
  isRef(): this is OasRef<T>;
127
+ /**
128
+ * Recursively resolves this reference to its final target component.
129
+ *
130
+ * Follows reference chains until reaching a non-reference component,
131
+ * with protection against infinite loops.
132
+ *
133
+ * @param lookupsPerformed - Internal counter to prevent infinite recursion
134
+ * @returns The resolved component
135
+ * @throws Error if maximum lookup depth is exceeded
136
+ */
109
137
  resolve(lookupsPerformed?: number): ResolvedRef<T>;
138
+ /**
139
+ * Resolves this reference one level, potentially returning another reference.
140
+ *
141
+ * @returns Either the resolved component or another reference in the chain
142
+ */
110
143
  resolveOnce(): OasRef<T> | ResolvedRef<T>;
111
144
  toRefName(): RefName;
112
145
  get $ref(): string;
@@ -115,10 +148,24 @@ export declare class OasRef<T extends OasRefData['refType']> {
115
148
  toJsonSchema({ resolve }: ToJsonSchemaOptions): OpenAPIV3.ReferenceObject | ResolvedRefJsonType<T>;
116
149
  toJSON(): object;
117
150
  }
118
- type ResolvedRefJsonType<T extends OasRefData['refType']> = ReturnType<ResolvedRef<T>['toJsonSchema']>;
151
+ /**
152
+ * Type representing the JSON schema result from resolving a reference.
153
+ *
154
+ * @template T - The type of component being referenced
155
+ */
156
+ export type ResolvedRefJsonType<T extends OasRefData['refType']> = ReturnType<ResolvedRef<T>['toJsonSchema']>;
157
+ /**
158
+ * Union type of all OAS component types that can be referenced.
159
+ *
160
+ * Includes all OpenAPI component types that support $ref resolution.
161
+ */
119
162
  export type OasComponentType = OasSchema | OasResponse | OasParameter | OasExample | OasRequestBody | OasHeader | OasSecurityScheme;
163
+ /**
164
+ * Type representing a resolved reference to a specific component type.
165
+ *
166
+ * @template T - The type of component being referenced (e.g., 'schema', 'response')
167
+ */
120
168
  export type ResolvedRef<T extends OasRefData['refType']> = Extract<OasComponentType, {
121
169
  oasType: T;
122
170
  }>;
123
- export {};
124
171
  //# sourceMappingURL=Ref.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Ref.d.ts","sourceRoot":"","sources":["../../../src/oas/ref/Ref.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAGhD,OAAO,KAAK,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AACnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAA;AAI7E,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,UAAU,CAAC,SAAS,CAAC,IAAI;IACvD,OAAO,EAAE,CAAC,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqFG;AACH,qBAAa,MAAM,CAAC,CAAC,SAAS,UAAU,CAAC,SAAS,CAAC;;IACjD,OAAO,EAAE,KAAK,CAAQ;IACtB,IAAI,EAAE,KAAK,CAAQ;gBAIP,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,WAAW;IAK1D,KAAK,IAAI,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC;IAI1B,OAAO,CAAC,gBAAgB,GAAE,MAAU,GAAG,WAAW,CAAC,CAAC,CAAC;IAUrD,WAAW,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC;IAsCzC,SAAS,IAAI,OAAO;IAIpB,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,OAAO,IAAI,UAAU,CAAC,SAAS,CAAC,CAEnC;IAED,IAAI,WAAW,IAAI,WAAW,CAE7B;IAED,YAAY,CAAC,EACX,OAAO,EACR,EAAE,mBAAmB,GAAG,SAAS,CAAC,eAAe,GAAG,mBAAmB,CAAC,CAAC,CAAC;IAsB3E,MAAM,IAAI,MAAM;CAajB;AAED,KAAK,mBAAmB,CAAC,CAAC,SAAS,UAAU,CAAC,SAAS,CAAC,IAAI,UAAU,CACpE,WAAW,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAC/B,CAAA;AAED,MAAM,MAAM,gBAAgB,GACxB,SAAS,GACT,WAAW,GACX,YAAY,GACZ,UAAU,GACV,cAAc,GACd,SAAS,GACT,iBAAiB,CAAA;AAErB,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,UAAU,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,gBAAgB,EAAE;IAAE,OAAO,EAAE,CAAC,CAAA;CAAE,CAAC,CAAA"}
1
+ {"version":3,"file":"Ref.d.ts","sourceRoot":"","sources":["../../../src/oas/ref/Ref.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAGhD,OAAO,KAAK,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AACnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAA;AAI7E;;;;GAIG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,UAAU,CAAC,SAAS,CAAC,IAAI;IACvD,OAAO,EAAE,CAAC,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqFG;AACH,qBAAa,MAAM,CAAC,CAAC,SAAS,UAAU,CAAC,SAAS,CAAC;;IACjD,0BAA0B;IAC1B,OAAO,EAAE,KAAK,CAAQ;IACtB,sBAAsB;IACtB,IAAI,EAAE,KAAK,CAAQ;IAInB;;;;;OAKG;gBACS,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,WAAW;IAK1D;;;;OAIG;IACH,KAAK,IAAI,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC;IAI1B;;;;;;;;;OASG;IACH,OAAO,CAAC,gBAAgB,GAAE,MAAU,GAAG,WAAW,CAAC,CAAC,CAAC;IAUrD;;;;OAIG;IACH,WAAW,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC;IAsCzC,SAAS,IAAI,OAAO;IAIpB,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,OAAO,IAAI,UAAU,CAAC,SAAS,CAAC,CAEnC;IAED,IAAI,WAAW,IAAI,WAAW,CAE7B;IAED,YAAY,CAAC,EACX,OAAO,EACR,EAAE,mBAAmB,GAAG,SAAS,CAAC,eAAe,GAAG,mBAAmB,CAAC,CAAC,CAAC;IAsB3E,MAAM,IAAI,MAAM;CAajB;AAED;;;;GAIG;AACH,MAAM,MAAM,mBAAmB,CAAC,CAAC,SAAS,UAAU,CAAC,SAAS,CAAC,IAAI,UAAU,CAC3E,WAAW,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAC/B,CAAA;AAED;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GACxB,SAAS,GACT,WAAW,GACX,YAAY,GACZ,UAAU,GACV,cAAc,GACd,SAAS,GACT,iBAAiB,CAAA;AAErB;;;;GAIG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,UAAU,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,gBAAgB,EAAE;IAAE,OAAO,EAAE,CAAC,CAAA;CAAE,CAAC,CAAA"}
@@ -101,13 +101,21 @@ const MAX_LOOKUPS = 10;
101
101
  * ```
102
102
  */
103
103
  export class OasRef {
104
+ /**
105
+ * Creates a new OAS reference instance.
106
+ *
107
+ * @param fields - Reference field data including refType and $ref
108
+ * @param oasDocument - Document containing the referenced component
109
+ */
104
110
  constructor(fields, oasDocument) {
111
+ /** OAS type identifier */
105
112
  Object.defineProperty(this, "oasType", {
106
113
  enumerable: true,
107
114
  configurable: true,
108
115
  writable: true,
109
116
  value: 'ref'
110
117
  });
118
+ /** Type identifier */
111
119
  Object.defineProperty(this, "type", {
112
120
  enumerable: true,
113
121
  configurable: true,
@@ -119,9 +127,24 @@ export class OasRef {
119
127
  __classPrivateFieldSet(this, _OasRef_fields, fields, "f");
120
128
  __classPrivateFieldSet(this, _OasRef_oasDocument, oasDocument, "f");
121
129
  }
130
+ /**
131
+ * Type guard to check if this instance is a reference.
132
+ *
133
+ * @returns Always true for OasRef instances
134
+ */
122
135
  isRef() {
123
136
  return true;
124
137
  }
138
+ /**
139
+ * Recursively resolves this reference to its final target component.
140
+ *
141
+ * Follows reference chains until reaching a non-reference component,
142
+ * with protection against infinite loops.
143
+ *
144
+ * @param lookupsPerformed - Internal counter to prevent infinite recursion
145
+ * @returns The resolved component
146
+ * @throws Error if maximum lookup depth is exceeded
147
+ */
125
148
  resolve(lookupsPerformed = 0) {
126
149
  if (lookupsPerformed >= MAX_LOOKUPS) {
127
150
  throw new Error('Max lookups reached');
@@ -129,6 +152,11 @@ export class OasRef {
129
152
  const resolved = this.resolveOnce();
130
153
  return resolved.isRef() ? resolved.resolve(lookupsPerformed + 1) : resolved;
131
154
  }
155
+ /**
156
+ * Resolves this reference one level, potentially returning another reference.
157
+ *
158
+ * @returns Either the resolved component or another reference in the chain
159
+ */
132
160
  resolveOnce() {
133
161
  const c = this.oasDocument.components;
134
162
  const refName = toRefName(this.$ref);
@@ -1,16 +1,50 @@
1
1
  import type { ToJsonSchemaOptions } from '../schema/Schema.js';
2
2
  import type { OpenAPIV3 } from 'openapi-types';
3
+ /**
4
+ * Fields for configuring an OpenAPI server variable object.
5
+ *
6
+ * Represents the configuration data needed to create a server variable,
7
+ * including default values, enumeration constraints, and extensions.
8
+ */
3
9
  export type ServerVariableFields = {
10
+ /** Human-readable description of the server variable */
4
11
  description?: string | undefined;
12
+ /** Default value for the server variable */
5
13
  default: string;
14
+ /** Array of allowed values for the server variable */
6
15
  enums?: string[] | undefined;
16
+ /** OpenAPI specification extensions */
7
17
  extensionFields?: Record<string, unknown>;
8
18
  };
19
+ /**
20
+ * Represents an OpenAPI server variable object.
21
+ *
22
+ * Server variables provide parameterization for server URLs,
23
+ * allowing dynamic server configuration with default values
24
+ * and enumeration constraints.
25
+ *
26
+ * @example Basic server variable
27
+ * ```typescript
28
+ * const serverVar = new OasServerVariable({
29
+ * default: 'api',
30
+ * description: 'API version subdomain',
31
+ * enums: ['api', 'api-staging', 'api-dev']
32
+ * });
33
+ *
34
+ * console.log(serverVar.default); // 'api'
35
+ * console.log(serverVar.enums); // ['api', 'api-staging', 'api-dev']
36
+ * ```
37
+ */
9
38
  export declare class OasServerVariable {
39
+ /** Type identifier for OAS server variable objects */
10
40
  oasType: 'serverVariable';
41
+ /** Human-readable description of the server variable */
11
42
  description: string | undefined;
43
+ /** Default value for the server variable */
12
44
  default: string;
45
+ /** Array of allowed values for the server variable */
13
46
  enums?: string[] | undefined;
47
+ /** OpenAPI specification extensions */
14
48
  extensionFields: Record<string, unknown> | undefined;
15
49
  constructor(fields: ServerVariableFields);
16
50
  isRef(): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"ServerVariable.d.ts","sourceRoot":"","sources":["../../../src/oas/serverVariable/ServerVariable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAE9C,MAAM,MAAM,oBAAoB,GAAG;IACjC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAChC,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAA;IAC5B,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC1C,CAAA;AAED,qBAAa,iBAAiB;IAC5B,OAAO,EAAE,gBAAgB,CAAmB;IAC5C,WAAW,EAAE,MAAM,GAAG,SAAS,CAAA;IAC/B,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAA;IAC5B,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAA;gBACxC,MAAM,EAAE,oBAAoB;IAOxC,KAAK,IAAI,OAAO;IAIhB,OAAO,IAAI,iBAAiB;IAI5B,WAAW,IAAI,iBAAiB;IAIhC,YAAY,CAAC,QAAQ,EAAE,mBAAmB,GAAG,SAAS,CAAC,oBAAoB;CAO5E"}
1
+ {"version":3,"file":"ServerVariable.d.ts","sourceRoot":"","sources":["../../../src/oas/serverVariable/ServerVariable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAE9C;;;;;GAKG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,wDAAwD;IACxD,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAChC,4CAA4C;IAC5C,OAAO,EAAE,MAAM,CAAA;IACf,sDAAsD;IACtD,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAA;IAC5B,uCAAuC;IACvC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC1C,CAAA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,iBAAiB;IAC5B,sDAAsD;IACtD,OAAO,EAAE,gBAAgB,CAAmB;IAC5C,wDAAwD;IACxD,WAAW,EAAE,MAAM,GAAG,SAAS,CAAA;IAC/B,4CAA4C;IAC5C,OAAO,EAAE,MAAM,CAAA;IACf,sDAAsD;IACtD,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAA;IAC5B,uCAAuC;IACvC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAA;gBACxC,MAAM,EAAE,oBAAoB;IAOxC,KAAK,IAAI,OAAO;IAIhB,OAAO,IAAI,iBAAiB;IAI5B,WAAW,IAAI,iBAAiB;IAIhC,YAAY,CAAC,QAAQ,EAAE,mBAAmB,GAAG,SAAS,CAAC,oBAAoB;CAO5E"}
@@ -1,29 +1,53 @@
1
+ /**
2
+ * Represents an OpenAPI server variable object.
3
+ *
4
+ * Server variables provide parameterization for server URLs,
5
+ * allowing dynamic server configuration with default values
6
+ * and enumeration constraints.
7
+ *
8
+ * @example Basic server variable
9
+ * ```typescript
10
+ * const serverVar = new OasServerVariable({
11
+ * default: 'api',
12
+ * description: 'API version subdomain',
13
+ * enums: ['api', 'api-staging', 'api-dev']
14
+ * });
15
+ *
16
+ * console.log(serverVar.default); // 'api'
17
+ * console.log(serverVar.enums); // ['api', 'api-staging', 'api-dev']
18
+ * ```
19
+ */
1
20
  export class OasServerVariable {
2
21
  constructor(fields) {
22
+ /** Type identifier for OAS server variable objects */
3
23
  Object.defineProperty(this, "oasType", {
4
24
  enumerable: true,
5
25
  configurable: true,
6
26
  writable: true,
7
27
  value: 'serverVariable'
8
28
  });
29
+ /** Human-readable description of the server variable */
9
30
  Object.defineProperty(this, "description", {
10
31
  enumerable: true,
11
32
  configurable: true,
12
33
  writable: true,
13
34
  value: void 0
14
35
  });
36
+ /** Default value for the server variable */
15
37
  Object.defineProperty(this, "default", {
16
38
  enumerable: true,
17
39
  configurable: true,
18
40
  writable: true,
19
41
  value: void 0
20
42
  });
43
+ /** Array of allowed values for the server variable */
21
44
  Object.defineProperty(this, "enums", {
22
45
  enumerable: true,
23
46
  configurable: true,
24
47
  writable: true,
25
48
  value: void 0
26
49
  });
50
+ /** OpenAPI specification extensions */
27
51
  Object.defineProperty(this, "extensionFields", {
28
52
  enumerable: true,
29
53
  configurable: true,
@@ -1,4 +1,18 @@
1
1
  import * as v from 'valibot';
2
+ /**
3
+ * Union type for OpenAPI string format specifiers.
4
+ *
5
+ * Represents the standard string formats defined in OpenAPI v3,
6
+ * providing semantic meaning for string validation and processing.
7
+ * Used for generating appropriate validation rules in target languages.
8
+ */
9
+ export type StringFormat = 'date-time' | 'time' | 'date' | 'duration' | 'email' | 'hostname' | 'ipv4' | 'ipv6' | 'uuid' | 'uri' | 'regex' | 'password' | 'byte' | 'binary';
10
+ /**
11
+ * Valibot enum schema for valid OpenAPI string format values.
12
+ *
13
+ * Defines the standard string formats supported by OpenAPI v3,
14
+ * including date/time formats, network formats, and encoding formats.
15
+ */
2
16
  export declare const stringFormat: v.EnumSchema<{
3
17
  readonly 'date-time': "date-time";
4
18
  readonly time: "time";
@@ -15,6 +29,12 @@ export declare const stringFormat: v.EnumSchema<{
15
29
  readonly byte: "byte";
16
30
  readonly binary: "binary";
17
31
  }, undefined>;
32
+ /**
33
+ * Valibot schema for validating OpenAPI string data objects.
34
+ *
35
+ * Validates string schema objects including length constraints,
36
+ * pattern validation, format specifiers, and enumeration values.
37
+ */
18
38
  export declare const oasStringData: v.ObjectSchema<{
19
39
  readonly type: v.LiteralSchema<"string", undefined>;
20
40
  readonly title: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
@@ -28,18 +48,35 @@ export declare const oasStringData: v.ObjectSchema<{
28
48
  readonly nullable: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
29
49
  readonly example: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
30
50
  }, undefined>;
31
- export type StringFormat = 'date-time' | 'time' | 'date' | 'duration' | 'email' | 'hostname' | 'ipv4' | 'ipv6' | 'uuid' | 'uri' | 'regex' | 'password' | 'byte' | 'binary';
51
+ /**
52
+ * Data type for OpenAPI string schema objects.
53
+ *
54
+ * Represents string schemas with validation constraints,
55
+ * format specifiers, and metadata. Used throughout the
56
+ * SKMTC pipeline for string type processing and code generation.
57
+ */
32
58
  export type OasStringData = {
59
+ /** Human-readable title for the string */
33
60
  title?: string;
61
+ /** Detailed description of the string's purpose */
34
62
  description?: string;
63
+ /** Default value for the string */
35
64
  default?: string;
65
+ /** Type identifier (always 'string') */
36
66
  type: 'string';
67
+ /** Maximum allowed length */
37
68
  maxLength?: number;
69
+ /** Minimum required length */
38
70
  minLength?: number;
71
+ /** Regular expression pattern for validation */
39
72
  pattern?: string;
73
+ /** Array of valid enumeration values */
40
74
  enum?: string[];
75
+ /** Format specifier (date-time, email, etc.) */
41
76
  format?: string;
77
+ /** Whether null values are allowed */
42
78
  nullable?: boolean;
79
+ /** Example value for documentation */
43
80
  example?: string;
44
81
  };
45
82
  //# sourceMappingURL=string-types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"string-types.d.ts","sourceRoot":"","sources":["../../../src/oas/string/string-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAE5B,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;aAevB,CAAA;AAEF,eAAO,MAAM,aAAa;;;;;;;;;;;;aAYxB,CAAA;AAEF,MAAM,MAAM,YAAY,GACpB,WAAW,GACX,MAAM,GACN,MAAM,GACN,UAAU,GACV,OAAO,GACP,UAAU,GACV,MAAM,GACN,MAAM,GACN,MAAM,GACN,KAAK,GACL,OAAO,GACP,UAAU,GACV,MAAM,GACN,QAAQ,CAAA;AAEZ,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,QAAQ,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,CAAA"}
1
+ {"version":3,"file":"string-types.d.ts","sourceRoot":"","sources":["../../../src/oas/string/string-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAE5B;;;;;;GAMG;AACH,MAAM,MAAM,YAAY,GACpB,WAAW,GACX,MAAM,GACN,MAAM,GACN,UAAU,GACV,OAAO,GACP,UAAU,GACV,MAAM,GACN,MAAM,GACN,MAAM,GACN,KAAK,GACL,OAAO,GACP,UAAU,GACV,MAAM,GACN,QAAQ,CAAA;AAEZ;;;;;GAKG;AACH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;aAevB,CAAA;AAEF;;;;;GAKG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;aAYxB,CAAA;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,0CAA0C;IAC1C,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,mDAAmD;IACnD,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,mCAAmC;IACnC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,wCAAwC;IACxC,IAAI,EAAE,QAAQ,CAAA;IACd,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,8BAA8B;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,gDAAgD;IAChD,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,wCAAwC;IACxC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;IACf,gDAAgD;IAChD,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,sCAAsC;IACtC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,sCAAsC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,CAAA"}
@@ -1,4 +1,10 @@
1
1
  import * as v from 'valibot';
2
+ /**
3
+ * Valibot enum schema for valid OpenAPI string format values.
4
+ *
5
+ * Defines the standard string formats supported by OpenAPI v3,
6
+ * including date/time formats, network formats, and encoding formats.
7
+ */
2
8
  export const stringFormat = v.enum({
3
9
  'date-time': 'date-time',
4
10
  time: 'time',
@@ -15,6 +21,12 @@ export const stringFormat = v.enum({
15
21
  byte: 'byte',
16
22
  binary: 'binary'
17
23
  });
24
+ /**
25
+ * Valibot schema for validating OpenAPI string data objects.
26
+ *
27
+ * Validates string schema objects including length constraints,
28
+ * pattern validation, format specifiers, and enumeration values.
29
+ */
18
30
  export const oasStringData = v.object({
19
31
  type: v.literal('string'),
20
32
  title: v.optional(v.string()),
@@ -2,14 +2,34 @@ import * as v from 'valibot';
2
2
  import { type OasSchemaData } from '../schema/schema-types.js';
3
3
  import { type OasSchemaRefData } from '../ref/ref-types.js';
4
4
  import { type OasDiscriminatorData } from '../discriminator/discriminator-types.js';
5
+ /**
6
+ * Data type for OpenAPI union schema objects.
7
+ *
8
+ * Represents union types (oneOf/anyOf) that allow values to match
9
+ * one or more of several possible schemas. Includes support for
10
+ * discriminator properties for efficient type resolution.
11
+ */
5
12
  export type OasUnionData = {
13
+ /** Type category identifier for schema objects */
6
14
  oasType: 'schema';
15
+ /** Type identifier (always 'union') */
7
16
  type: 'union';
17
+ /** Human-readable title for the union */
8
18
  title?: string;
19
+ /** Detailed description of the union's purpose */
9
20
  description?: string;
21
+ /** Array of schemas that comprise the union */
10
22
  members: (OasSchemaData | OasSchemaRefData)[];
23
+ /** Optional discriminator for efficient type resolution */
11
24
  discriminator?: OasDiscriminatorData;
12
25
  };
26
+ /**
27
+ * Valibot schema for validating OpenAPI union data objects.
28
+ *
29
+ * Validates union schemas including member schema arrays and optional
30
+ * discriminator properties. Uses lazy evaluation to handle recursive
31
+ * schema references in union members.
32
+ */
13
33
  export declare const oasUnionData: v.ObjectSchema<{
14
34
  readonly oasType: v.LiteralSchema<"schema", undefined>;
15
35
  readonly type: v.LiteralSchema<"union", undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"union-types.d.ts","sourceRoot":"","sources":["../../../src/oas/union/union-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,KAAK,aAAa,EAAiB,MAAM,2BAA2B,CAAA;AAC7E,OAAO,EAAE,KAAK,gBAAgB,EAAoB,MAAM,qBAAqB,CAAA;AAC7E,OAAO,EACL,KAAK,oBAAoB,EAE1B,MAAM,yCAAyC,CAAA;AAEhD,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,QAAQ,CAAA;IACjB,IAAI,EAAE,OAAO,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,CAAC,aAAa,GAAG,gBAAgB,CAAC,EAAE,CAAA;IAC7C,aAAa,CAAC,EAAE,oBAAoB,CAAA;CACrC,CAAA;AAED,eAAO,MAAM,YAAY;;;;;;;;;;;aAOvB,CAAA"}
1
+ {"version":3,"file":"union-types.d.ts","sourceRoot":"","sources":["../../../src/oas/union/union-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,KAAK,aAAa,EAAiB,MAAM,2BAA2B,CAAA;AAC7E,OAAO,EAAE,KAAK,gBAAgB,EAAoB,MAAM,qBAAqB,CAAA;AAC7E,OAAO,EACL,KAAK,oBAAoB,EAE1B,MAAM,yCAAyC,CAAA;AAEhD;;;;;;GAMG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,kDAAkD;IAClD,OAAO,EAAE,QAAQ,CAAA;IACjB,uCAAuC;IACvC,IAAI,EAAE,OAAO,CAAA;IACb,yCAAyC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,kDAAkD;IAClD,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,+CAA+C;IAC/C,OAAO,EAAE,CAAC,aAAa,GAAG,gBAAgB,CAAC,EAAE,CAAA;IAC7C,2DAA2D;IAC3D,aAAa,CAAC,EAAE,oBAAoB,CAAA;CACrC,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,YAAY;;;;;;;;;;;aAOvB,CAAA"}
@@ -2,6 +2,13 @@ import * as v from 'valibot';
2
2
  import { oasSchemaData } from '../schema/schema-types.js';
3
3
  import { oasSchemaRefData } from '../ref/ref-types.js';
4
4
  import { oasDiscriminatorData } from '../discriminator/discriminator-types.js';
5
+ /**
6
+ * Valibot schema for validating OpenAPI union data objects.
7
+ *
8
+ * Validates union schemas including member schema arrays and optional
9
+ * discriminator properties. Uses lazy evaluation to handle recursive
10
+ * schema references in union members.
11
+ */
5
12
  export const oasUnionData = v.object({
6
13
  oasType: v.literal('schema'),
7
14
  type: v.literal('union'),
@@ -1,4 +1,10 @@
1
1
  import * as v from 'valibot';
2
+ /**
3
+ * Valibot schema for validating OpenAPI unknown data objects.
4
+ *
5
+ * Validates unknown/unspecified schemas used as fallbacks when
6
+ * schema types cannot be determined or for flexible data handling.
7
+ */
2
8
  export declare const oasUnknownData: v.ObjectSchema<{
3
9
  readonly oasType: v.LiteralSchema<"schema", undefined>;
4
10
  readonly title: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
@@ -6,11 +12,23 @@ export declare const oasUnknownData: v.ObjectSchema<{
6
12
  readonly default: v.OptionalSchema<v.UnknownSchema, undefined>;
7
13
  readonly type: v.LiteralSchema<"unknown", undefined>;
8
14
  }, undefined>;
15
+ /**
16
+ * Data type for OpenAPI unknown schema objects.
17
+ *
18
+ * Represents schemas with unspecified or flexible types, used as
19
+ * fallbacks when schema types cannot be determined or when maximum
20
+ * flexibility is required in the API specification.
21
+ */
9
22
  export type OasUnknownData = {
23
+ /** Type category identifier for schema objects */
10
24
  oasType: 'schema';
25
+ /** Human-readable title for the unknown schema */
11
26
  title?: string;
27
+ /** Detailed description of the schema's purpose */
12
28
  description?: string;
29
+ /** Default value of any type */
13
30
  default?: unknown;
31
+ /** Type identifier (always 'unknown') */
14
32
  type: 'unknown';
15
33
  };
16
34
  //# sourceMappingURL=unknown-types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"unknown-types.d.ts","sourceRoot":"","sources":["../../../src/oas/unknown/unknown-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAE5B,eAAO,MAAM,cAAc;;;;;;aAMzB,CAAA;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,QAAQ,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,IAAI,EAAE,SAAS,CAAA;CAChB,CAAA"}
1
+ {"version":3,"file":"unknown-types.d.ts","sourceRoot":"","sources":["../../../src/oas/unknown/unknown-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAE5B;;;;;GAKG;AACH,eAAO,MAAM,cAAc;;;;;;aAMzB,CAAA;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,kDAAkD;IAClD,OAAO,EAAE,QAAQ,CAAA;IACjB,kDAAkD;IAClD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,mDAAmD;IACnD,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,gCAAgC;IAChC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,yCAAyC;IACzC,IAAI,EAAE,SAAS,CAAA;CAChB,CAAA"}
@@ -1,4 +1,10 @@
1
1
  import * as v from 'valibot';
2
+ /**
3
+ * Valibot schema for validating OpenAPI unknown data objects.
4
+ *
5
+ * Validates unknown/unspecified schemas used as fallbacks when
6
+ * schema types cannot be determined or for flexible data handling.
7
+ */
2
8
  export const oasUnknownData = v.object({
3
9
  oasType: v.literal('schema'),
4
10
  title: v.optional(v.string()),
@@ -11,17 +11,32 @@ export type ListParams<V extends Stringable> = List<V[], ', ', '()'>;
11
11
  export type SkipEmptyOption = {
12
12
  skipEmpty?: boolean;
13
13
  };
14
+ /**
15
+ * Type alias for creating key-value pair lists.
16
+ *
17
+ * Creates a List specialized for key-value pairs with colon separator
18
+ * and no bookends (e.g., "key1: value1, key2: value2").
19
+ *
20
+ * @template Key - Type of the keys (must be stringable)
21
+ * @template Value - Type of the values (must be stringable)
22
+ */
14
23
  export type ListKeyValue<Key extends Stringable, Value extends Stringable> = List<[
15
24
  Key,
16
25
  Value
17
26
  ], ': ', 'none'>;
18
- type BookendsType = '[]' | '{}' | '()' | '<>' | 'none';
27
+ /**
28
+ * Type representing the different bookend styles for lists.
29
+ */
30
+ export type BookendsType = '[]' | '{}' | '()' | '<>' | 'none';
19
31
  type ConstructorOptions<Separator extends string = ', ', Bookends extends BookendsType = 'none'> = {
20
32
  separator?: Separator;
21
33
  bookends?: Bookends;
22
34
  skipEmpty?: boolean;
23
35
  };
24
- type ExtractArrayItem<ArrayOf> = ArrayOf extends Array<infer Item> ? Item : never;
36
+ /**
37
+ * Utility type to extract the item type from an array type.
38
+ */
39
+ export type ExtractArrayItem<ArrayOf> = ArrayOf extends Array<infer Item> ? Item : never;
25
40
  type ToFilteredKeyValueReturn<Value extends undefined | Stringable | Stringable[] | List> = Value extends undefined ? undefined : List<[string, Stringable | Stringable[] | List], ': ', 'none'>;
26
41
  type ToConditionalReturn<Value extends Stringable, Condition extends boolean> = Condition extends true ? List<[Value], ', ', 'none'> : List<never[], ', ', 'none'>;
27
42
  /**
@@ -136,6 +151,14 @@ export declare class List<Values extends Stringable[] = Stringable[], Separator
136
151
  * ```
137
152
  */
138
153
  constructor(values: (ExtractArrayItem<Values> | undefined)[], { separator, bookends, skipEmpty }?: ConstructorOptions<Separator, Bookends>);
154
+ /**
155
+ * Converts the list to its string representation.
156
+ *
157
+ * Joins all values with the configured separator and wraps with bookends.
158
+ * Returns empty string if skipEmpty is enabled and list is empty.
159
+ *
160
+ * @returns Formatted string representation of the list
161
+ */
139
162
  toString(): string;
140
163
  /**
141
164
  * Create an empty List that will render as an empty string ''
@@ -241,13 +264,51 @@ export declare class List<Values extends Stringable[] = Stringable[], Separator
241
264
  */
242
265
  static hasValue: (value: undefined | Stringable | Stringable[] | List) => value is Stringable | Stringable[] | List;
243
266
  }
244
- type KeyMapFn<V extends Stringable> = (key: string, index: number) => V;
267
+ /**
268
+ * Mapping function type for transforming keys into values.
269
+ */
270
+ export type KeyMapFn<V extends Stringable> = (key: string, index: number) => V;
271
+ /**
272
+ * Utility class for working with arrays of string keys.
273
+ *
274
+ * Provides methods for transforming key arrays into objects and lists
275
+ * with custom mapping functions.
276
+ */
245
277
  export declare class KeyList {
278
+ /** Array of string keys */
246
279
  keys: string[];
280
+ /**
281
+ * Creates a new KeyList instance.
282
+ *
283
+ * @param keys - Array of string keys to work with
284
+ */
247
285
  constructor(keys: string[]);
286
+ /**
287
+ * Transforms keys into an object using a mapping function.
288
+ *
289
+ * @param mapFn - Function to transform each key into a value
290
+ * @param options - Options for handling empty values
291
+ * @returns Object with keys mapped to transformed values
292
+ */
248
293
  toObject<V extends Stringable>(mapFn: KeyMapFn<V>, { skipEmpty }?: SkipEmptyOption): ListObject<V>;
294
+ /**
295
+ * Creates a plain object with keys as both keys and values.
296
+ *
297
+ * @returns Object where each key maps to itself
298
+ */
249
299
  toObjectPlain(): ListObject<string>;
300
+ /**
301
+ * Transforms keys into a List using a mapping function.
302
+ *
303
+ * @param mapFn - Function to transform each key into a value
304
+ * @returns List containing the transformed values
305
+ */
250
306
  toLines<V extends Stringable>(mapFn: KeyMapFn<V>): ListLines<V>;
307
+ /**
308
+ * Creates a List with keys as the values.
309
+ *
310
+ * @returns List containing the original keys
311
+ */
251
312
  toLinesPlain(): ListLines<string>;
252
313
  }
253
314
  type Entry<T extends Stringable> = [key: string, value: T];
@@ -1 +1 @@
1
- {"version":3,"file":"List.d.ts","sourceRoot":"","sources":["../../src/typescript/List.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"List.d.ts","sourceRoot":"","sources":["../../src/typescript/List.ts"],"names":[],"mappings":"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"}