schemantic 0.1.0

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 (131) hide show
  1. package/CHANGELOG.md +92 -0
  2. package/LICENSE +21 -0
  3. package/README.md +827 -0
  4. package/dist/__tests__/setup.d.ts +6 -0
  5. package/dist/__tests__/setup.d.ts.map +1 -0
  6. package/dist/__tests__/setup.js +30 -0
  7. package/dist/__tests__/setup.js.map +1 -0
  8. package/dist/__tests__/test-config.d.ts +36 -0
  9. package/dist/__tests__/test-config.d.ts.map +1 -0
  10. package/dist/__tests__/test-config.js +563 -0
  11. package/dist/__tests__/test-config.js.map +1 -0
  12. package/dist/cli/index.d.ts +118 -0
  13. package/dist/cli/index.d.ts.map +1 -0
  14. package/dist/cli/index.js +657 -0
  15. package/dist/cli/index.js.map +1 -0
  16. package/dist/core/index.d.ts +5 -0
  17. package/dist/core/index.d.ts.map +1 -0
  18. package/dist/core/index.js +21 -0
  19. package/dist/core/index.js.map +1 -0
  20. package/dist/core/schemantic.d.ts +95 -0
  21. package/dist/core/schemantic.d.ts.map +1 -0
  22. package/dist/core/schemantic.js +543 -0
  23. package/dist/core/schemantic.js.map +1 -0
  24. package/dist/generators/api-client-generator.d.ts +145 -0
  25. package/dist/generators/api-client-generator.d.ts.map +1 -0
  26. package/dist/generators/api-client-generator.js +856 -0
  27. package/dist/generators/api-client-generator.js.map +1 -0
  28. package/dist/generators/base.d.ts +117 -0
  29. package/dist/generators/base.d.ts.map +1 -0
  30. package/dist/generators/base.js +232 -0
  31. package/dist/generators/base.js.map +1 -0
  32. package/dist/generators/enum-generator.d.ts +52 -0
  33. package/dist/generators/enum-generator.d.ts.map +1 -0
  34. package/dist/generators/enum-generator.js +178 -0
  35. package/dist/generators/enum-generator.js.map +1 -0
  36. package/dist/generators/factory.d.ts +59 -0
  37. package/dist/generators/factory.d.ts.map +1 -0
  38. package/dist/generators/factory.js +127 -0
  39. package/dist/generators/factory.js.map +1 -0
  40. package/dist/generators/hook-generator.d.ts +36 -0
  41. package/dist/generators/hook-generator.d.ts.map +1 -0
  42. package/dist/generators/hook-generator.js +495 -0
  43. package/dist/generators/hook-generator.js.map +1 -0
  44. package/dist/generators/index.d.ts +10 -0
  45. package/dist/generators/index.d.ts.map +1 -0
  46. package/dist/generators/index.js +26 -0
  47. package/dist/generators/index.js.map +1 -0
  48. package/dist/generators/object-generator.d.ts +48 -0
  49. package/dist/generators/object-generator.d.ts.map +1 -0
  50. package/dist/generators/object-generator.js +280 -0
  51. package/dist/generators/object-generator.js.map +1 -0
  52. package/dist/generators/primitive-generator.d.ts +40 -0
  53. package/dist/generators/primitive-generator.d.ts.map +1 -0
  54. package/dist/generators/primitive-generator.js +150 -0
  55. package/dist/generators/primitive-generator.js.map +1 -0
  56. package/dist/index.d.ts +17 -0
  57. package/dist/index.d.ts.map +1 -0
  58. package/dist/index.js +42 -0
  59. package/dist/index.js.map +1 -0
  60. package/dist/parsers/base.d.ts +101 -0
  61. package/dist/parsers/base.d.ts.map +1 -0
  62. package/dist/parsers/base.js +77 -0
  63. package/dist/parsers/base.js.map +1 -0
  64. package/dist/parsers/factory.d.ts +64 -0
  65. package/dist/parsers/factory.d.ts.map +1 -0
  66. package/dist/parsers/factory.js +116 -0
  67. package/dist/parsers/factory.js.map +1 -0
  68. package/dist/parsers/index.d.ts +7 -0
  69. package/dist/parsers/index.d.ts.map +1 -0
  70. package/dist/parsers/index.js +23 -0
  71. package/dist/parsers/index.js.map +1 -0
  72. package/dist/parsers/openapi.d.ts +52 -0
  73. package/dist/parsers/openapi.d.ts.map +1 -0
  74. package/dist/parsers/openapi.js +396 -0
  75. package/dist/parsers/openapi.js.map +1 -0
  76. package/dist/plugins/branded-types.d.ts +28 -0
  77. package/dist/plugins/branded-types.d.ts.map +1 -0
  78. package/dist/plugins/branded-types.js +568 -0
  79. package/dist/plugins/branded-types.js.map +1 -0
  80. package/dist/plugins/builtin.d.ts +38 -0
  81. package/dist/plugins/builtin.d.ts.map +1 -0
  82. package/dist/plugins/builtin.js +283 -0
  83. package/dist/plugins/builtin.js.map +1 -0
  84. package/dist/plugins/index.d.ts +7 -0
  85. package/dist/plugins/index.d.ts.map +1 -0
  86. package/dist/plugins/index.js +23 -0
  87. package/dist/plugins/index.js.map +1 -0
  88. package/dist/plugins/loader.d.ts +92 -0
  89. package/dist/plugins/loader.d.ts.map +1 -0
  90. package/dist/plugins/loader.js +245 -0
  91. package/dist/plugins/loader.js.map +1 -0
  92. package/dist/plugins/manager.d.ts +99 -0
  93. package/dist/plugins/manager.d.ts.map +1 -0
  94. package/dist/plugins/manager.js +233 -0
  95. package/dist/plugins/manager.js.map +1 -0
  96. package/dist/plugins/performance-monitoring.d.ts +98 -0
  97. package/dist/plugins/performance-monitoring.d.ts.map +1 -0
  98. package/dist/plugins/performance-monitoring.js +596 -0
  99. package/dist/plugins/performance-monitoring.js.map +1 -0
  100. package/dist/plugins/request-deduplication.d.ts +27 -0
  101. package/dist/plugins/request-deduplication.d.ts.map +1 -0
  102. package/dist/plugins/request-deduplication.js +650 -0
  103. package/dist/plugins/request-deduplication.js.map +1 -0
  104. package/dist/plugins/zod-validation.d.ts +63 -0
  105. package/dist/plugins/zod-validation.d.ts.map +1 -0
  106. package/dist/plugins/zod-validation.js +743 -0
  107. package/dist/plugins/zod-validation.js.map +1 -0
  108. package/dist/types/core.d.ts +203 -0
  109. package/dist/types/core.d.ts.map +1 -0
  110. package/dist/types/core.js +24 -0
  111. package/dist/types/core.js.map +1 -0
  112. package/dist/types/index.d.ts +7 -0
  113. package/dist/types/index.d.ts.map +1 -0
  114. package/dist/types/index.js +23 -0
  115. package/dist/types/index.js.map +1 -0
  116. package/dist/types/openapi.d.ts +250 -0
  117. package/dist/types/openapi.d.ts.map +1 -0
  118. package/dist/types/openapi.js +8 -0
  119. package/dist/types/openapi.js.map +1 -0
  120. package/dist/types/schema.d.ts +68 -0
  121. package/dist/types/schema.d.ts.map +1 -0
  122. package/dist/types/schema.js +22 -0
  123. package/dist/types/schema.js.map +1 -0
  124. package/docs/ADVANCED_PLUGINS_IMPLEMENTATION.md +355 -0
  125. package/docs/ADVANCED_PLUGIN_DEVELOPMENT.md +309 -0
  126. package/docs/API.md +600 -0
  127. package/docs/CONFIGURATION.md +722 -0
  128. package/docs/FASTAPI_TUTORIAL.md +1497 -0
  129. package/docs/PLUGINS.md +683 -0
  130. package/docs/PLUGIN_DEVELOPMENT.md +720 -0
  131. package/package.json +90 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zod-validation.js","sourceRoot":"","sources":["../../src/plugins/zod-validation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,203 @@
1
+ /**
2
+ * Core types for the schemantic package
3
+ * These types define the internal structure and interfaces used throughout the system
4
+ */
5
+ import { OpenAPISchema } from "./openapi";
6
+ import { ResolvedSchema, SchemaResolver } from "./schema";
7
+ /**
8
+ * Configuration for the type generation process
9
+ */
10
+ export interface SchemanticConfig {
11
+ schemaUrl?: string;
12
+ schemaFile?: string;
13
+ schemaData?: OpenAPISchema;
14
+ outputDir: string;
15
+ outputFileName?: string;
16
+ generateTypes: boolean;
17
+ generateApiClient: boolean;
18
+ generateHooks?: boolean;
19
+ generateQueries?: boolean;
20
+ useStrictTypes: boolean;
21
+ useOptionalChaining: boolean;
22
+ useNullishCoalescing: boolean;
23
+ namingConvention: "camelCase" | "snake_case" | "PascalCase";
24
+ typePrefix?: string;
25
+ typeSuffix?: string;
26
+ customTypeMappings?: Record<string, string>;
27
+ excludePaths?: string[];
28
+ includePaths?: string[];
29
+ excludeSchemas?: string[];
30
+ includeSchemas?: string[];
31
+ plugins?: PluginConfig[];
32
+ preserveComments: boolean;
33
+ generateIndexFile: boolean;
34
+ generateBarrelExports: boolean;
35
+ }
36
+ /**
37
+ * Plugin configuration interface
38
+ */
39
+ export interface PluginConfig {
40
+ name: string;
41
+ enabled: boolean;
42
+ options?: Record<string, unknown>;
43
+ }
44
+ /**
45
+ * Generated type information
46
+ */
47
+ export interface GeneratedType {
48
+ name: string;
49
+ content: string;
50
+ dependencies: string[];
51
+ exports: string[];
52
+ isInterface: boolean;
53
+ isEnum: boolean;
54
+ isUnion: boolean;
55
+ sourceSchema: ResolvedSchema;
56
+ }
57
+ /**
58
+ * Generated API client information
59
+ */
60
+ export interface GeneratedApiClient {
61
+ name: string;
62
+ content: string;
63
+ dependencies: string[];
64
+ exports: string[];
65
+ endpoints: GeneratedEndpoint[];
66
+ }
67
+ /**
68
+ * Generated endpoint information
69
+ */
70
+ export interface GeneratedEndpoint {
71
+ operationId: string;
72
+ method: string;
73
+ path: string;
74
+ parameters: GeneratedParameter[];
75
+ requestBody?: GeneratedRequestBody;
76
+ responses: GeneratedResponse[];
77
+ returnType: string;
78
+ functionName: string;
79
+ }
80
+ /**
81
+ * Generated parameter information
82
+ */
83
+ export interface GeneratedParameter {
84
+ name: string;
85
+ type: string;
86
+ isOptional: boolean;
87
+ isRequired: boolean;
88
+ location: "query" | "header" | "path" | "cookie";
89
+ description?: string;
90
+ }
91
+ /**
92
+ * Generated request body information
93
+ */
94
+ export interface GeneratedRequestBody {
95
+ type: string;
96
+ isOptional: boolean;
97
+ contentType?: string;
98
+ description?: string;
99
+ }
100
+ /**
101
+ * Generated response information
102
+ */
103
+ export interface GeneratedResponse {
104
+ statusCode: string;
105
+ type: string;
106
+ isOptional: boolean;
107
+ description?: string;
108
+ }
109
+ /**
110
+ * Generation context passed to plugins and generators
111
+ */
112
+ export interface GenerationContext {
113
+ config: SchemanticConfig;
114
+ schema: OpenAPISchema;
115
+ resolvedSchemas: Map<string, ResolvedSchema>;
116
+ generatedTypes: Map<string, GeneratedType>;
117
+ generatedClients: Map<string, GeneratedApiClient>;
118
+ typeRegistry: TypeRegistry;
119
+ schemaResolver: SchemaResolver;
120
+ }
121
+ /**
122
+ * Type registry for managing type dependencies and relationships
123
+ */
124
+ export interface TypeRegistry {
125
+ registerType(name: string, type: GeneratedType): void;
126
+ getType(name: string): GeneratedType | undefined;
127
+ getAllTypes(): GeneratedType[];
128
+ getDependencies(name: string): string[];
129
+ resolveDependencies(): string[];
130
+ }
131
+ /**
132
+ * Generation result
133
+ */
134
+ export interface GenerationResult {
135
+ success: boolean;
136
+ generatedFiles: GeneratedFile[];
137
+ errors: GenerationError[];
138
+ warnings: GenerationWarning[];
139
+ statistics: GenerationStatistics;
140
+ }
141
+ /**
142
+ * Generated file information
143
+ */
144
+ export interface GeneratedFile {
145
+ path: string;
146
+ content: string;
147
+ type: "type" | "client" | "hook" | "query" | "index" | "barrel";
148
+ dependencies: string[];
149
+ size: number;
150
+ }
151
+ /**
152
+ * Generation error
153
+ */
154
+ export interface GenerationError {
155
+ code: string;
156
+ message: string;
157
+ source?: string;
158
+ line?: number;
159
+ column?: number;
160
+ severity: "error" | "warning";
161
+ }
162
+ /**
163
+ * Generation warning
164
+ */
165
+ export interface GenerationWarning {
166
+ code: string;
167
+ message: string;
168
+ source?: string;
169
+ suggestion?: string;
170
+ }
171
+ /**
172
+ * Generation statistics
173
+ */
174
+ export interface GenerationStatistics {
175
+ totalTypes: number;
176
+ totalEndpoints: number;
177
+ totalFiles: number;
178
+ totalSize: number;
179
+ generationTime: number;
180
+ schemaSize: number;
181
+ }
182
+ /**
183
+ * Plugin interface
184
+ */
185
+ export interface SchemanticPlugin {
186
+ name: string;
187
+ version: string;
188
+ description: string;
189
+ beforeGeneration?(context: GenerationContext): Promise<void> | void;
190
+ afterGeneration?(context: GenerationContext, result: GenerationResult): Promise<void> | void;
191
+ beforeTypeGeneration?(typeName: string, schema: ResolvedSchema, context: GenerationContext): Promise<void> | void;
192
+ afterTypeGeneration?(typeName: string, generatedType: GeneratedType, context: GenerationContext): Promise<void> | void;
193
+ beforeClientGeneration?(context: GenerationContext): Promise<void> | void;
194
+ afterClientGeneration?(generatedClient: GeneratedApiClient, context: GenerationContext): Promise<void> | void;
195
+ transformSchema?(schema: ResolvedSchema, context: GenerationContext): ResolvedSchema;
196
+ customTypeGenerators?: Record<string, (schema: ResolvedSchema, context: GenerationContext) => GeneratedType>;
197
+ customClientGenerators?: Record<string, (context: GenerationContext) => GeneratedApiClient>;
198
+ }
199
+ /**
200
+ * Default configuration
201
+ */
202
+ export declare const DEFAULT_CONFIG: Partial<SchemanticConfig>;
203
+ //# sourceMappingURL=core.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../src/types/core.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ /**
3
+ * Core types for the schemantic package
4
+ * These types define the internal structure and interfaces used throughout the system
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.DEFAULT_CONFIG = void 0;
8
+ /**
9
+ * Default configuration
10
+ */
11
+ exports.DEFAULT_CONFIG = {
12
+ generateTypes: true,
13
+ generateApiClient: true,
14
+ generateHooks: false,
15
+ generateQueries: false,
16
+ useStrictTypes: true,
17
+ useOptionalChaining: true,
18
+ useNullishCoalescing: true,
19
+ namingConvention: "camelCase",
20
+ preserveComments: true,
21
+ generateIndexFile: true,
22
+ generateBarrelExports: true,
23
+ };
24
+ //# sourceMappingURL=core.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core.js","sourceRoot":"","sources":["../../src/types/core.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAuQH;;GAEG;AACU,QAAA,cAAc,GAA8B;IACvD,aAAa,EAAE,IAAI;IACnB,iBAAiB,EAAE,IAAI;IACvB,aAAa,EAAE,KAAK;IACpB,eAAe,EAAE,KAAK;IACtB,cAAc,EAAE,IAAI;IACpB,mBAAmB,EAAE,IAAI;IACzB,oBAAoB,EAAE,IAAI;IAC1B,gBAAgB,EAAE,WAAW;IAC7B,gBAAgB,EAAE,IAAI;IACtB,iBAAiB,EAAE,IAAI;IACvB,qBAAqB,EAAE,IAAI;CAC5B,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Type exports for the schemantic package
3
+ */
4
+ export * from "./openapi";
5
+ export * from "./schema";
6
+ export * from "./core";
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC"}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ /**
3
+ * Type exports for the schemantic package
4
+ */
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
17
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
18
+ };
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ __exportStar(require("./openapi"), exports);
21
+ __exportStar(require("./schema"), exports);
22
+ __exportStar(require("./core"), exports);
23
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;AAEH,4CAA0B;AAC1B,2CAAyB;AACzB,yCAAuB"}
@@ -0,0 +1,250 @@
1
+ /**
2
+ * Core OpenAPI 3.0+ schema type definitions
3
+ * These types represent the structure of OpenAPI schemas as they would be
4
+ * received from FastAPI applications
5
+ */
6
+ export interface OpenAPISchema {
7
+ openapi: string;
8
+ info: OpenAPIInfo;
9
+ servers?: OpenAPIServer[];
10
+ paths: OpenAPIPaths;
11
+ components?: OpenAPIComponents;
12
+ security?: OpenAPISecurityRequirement[];
13
+ tags?: OpenAPITag[];
14
+ externalDocs?: OpenAPIExternalDocumentation;
15
+ }
16
+ export interface OpenAPIInfo {
17
+ title: string;
18
+ version: string;
19
+ description?: string;
20
+ termsOfService?: string;
21
+ contact?: OpenAPIContact;
22
+ license?: OpenAPILicense;
23
+ }
24
+ export interface OpenAPIContact {
25
+ name?: string;
26
+ url?: string;
27
+ email?: string;
28
+ }
29
+ export interface OpenAPILicense {
30
+ name: string;
31
+ url?: string;
32
+ }
33
+ export interface OpenAPIServer {
34
+ url: string;
35
+ description?: string;
36
+ variables?: Record<string, OpenAPIServerVariable>;
37
+ }
38
+ export interface OpenAPIServerVariable {
39
+ enum?: string[];
40
+ default: string;
41
+ description?: string;
42
+ }
43
+ export interface OpenAPIPaths {
44
+ [path: string]: OpenAPIPathItem;
45
+ }
46
+ export interface OpenAPIPathItem {
47
+ $ref?: string;
48
+ summary?: string;
49
+ description?: string;
50
+ get?: OpenAPIOperation;
51
+ put?: OpenAPIOperation;
52
+ post?: OpenAPIOperation;
53
+ delete?: OpenAPIOperation;
54
+ options?: OpenAPIOperation;
55
+ head?: OpenAPIOperation;
56
+ patch?: OpenAPIOperation;
57
+ trace?: OpenAPIOperation;
58
+ servers?: OpenAPIServer[];
59
+ parameters?: (OpenAPIParameter | OpenAPIRef)[];
60
+ }
61
+ export interface OpenAPIOperation {
62
+ tags?: string[];
63
+ summary?: string;
64
+ description?: string;
65
+ externalDocs?: OpenAPIExternalDocumentation;
66
+ operationId?: string;
67
+ parameters?: (OpenAPIParameter | OpenAPIRef)[];
68
+ requestBody?: OpenAPIRequestBody | OpenAPIRef;
69
+ responses: OpenAPIResponses;
70
+ callbacks?: Record<string, OpenAPICallback | OpenAPIRef>;
71
+ deprecated?: boolean;
72
+ security?: OpenAPISecurityRequirement[];
73
+ servers?: OpenAPIServer[];
74
+ }
75
+ export interface OpenAPIParameter {
76
+ name: string;
77
+ in: 'query' | 'header' | 'path' | 'cookie';
78
+ description?: string;
79
+ required?: boolean;
80
+ deprecated?: boolean;
81
+ allowEmptyValue?: boolean;
82
+ style?: string;
83
+ explode?: boolean;
84
+ allowReserved?: boolean;
85
+ schema?: OpenAPISchemaObject | OpenAPIRef;
86
+ example?: unknown;
87
+ examples?: Record<string, OpenAPIExample | OpenAPIRef>;
88
+ content?: Record<string, OpenAPIMediaType>;
89
+ }
90
+ export interface OpenAPIRequestBody {
91
+ description?: string;
92
+ content: Record<string, OpenAPIMediaType>;
93
+ required?: boolean;
94
+ }
95
+ export interface OpenAPIResponses {
96
+ [statusCode: string]: OpenAPIResponse | OpenAPIRef;
97
+ }
98
+ export interface OpenAPIResponse {
99
+ description: string;
100
+ headers?: Record<string, OpenAPIHeader | OpenAPIRef>;
101
+ content?: Record<string, OpenAPIMediaType>;
102
+ links?: Record<string, OpenAPILink | OpenAPIRef>;
103
+ }
104
+ export interface OpenAPIHeader {
105
+ description?: string;
106
+ required?: boolean;
107
+ deprecated?: boolean;
108
+ allowEmptyValue?: boolean;
109
+ style?: string;
110
+ explode?: boolean;
111
+ allowReserved?: boolean;
112
+ schema?: OpenAPISchemaObject | OpenAPIRef;
113
+ example?: unknown;
114
+ examples?: Record<string, OpenAPIExample | OpenAPIRef>;
115
+ content?: Record<string, OpenAPIMediaType>;
116
+ }
117
+ export interface OpenAPIMediaType {
118
+ schema?: OpenAPISchemaObject | OpenAPIRef;
119
+ example?: unknown;
120
+ examples?: Record<string, OpenAPIExample | OpenAPIRef>;
121
+ encoding?: Record<string, OpenAPIEncoding>;
122
+ }
123
+ export interface OpenAPIExample {
124
+ summary?: string;
125
+ description?: string;
126
+ value?: unknown;
127
+ externalValue?: string;
128
+ }
129
+ export interface OpenAPIEncoding {
130
+ contentType?: string;
131
+ headers?: Record<string, OpenAPIHeader | OpenAPIRef>;
132
+ style?: string;
133
+ explode?: boolean;
134
+ allowReserved?: boolean;
135
+ }
136
+ export interface OpenAPILink {
137
+ operationRef?: string;
138
+ operationId?: string;
139
+ parameters?: Record<string, unknown>;
140
+ requestBody?: unknown;
141
+ description?: string;
142
+ server?: OpenAPIServer;
143
+ }
144
+ export interface OpenAPICallback {
145
+ [expression: string]: OpenAPIPathItem;
146
+ }
147
+ export interface OpenAPIRef {
148
+ $ref: string;
149
+ }
150
+ /**
151
+ * OpenAPI Schema Object - represents a JSON Schema
152
+ */
153
+ export interface OpenAPISchemaObject {
154
+ type?: string | string[];
155
+ properties?: Record<string, OpenAPISchemaObject | OpenAPIRef>;
156
+ items?: OpenAPISchemaObject | OpenAPIRef;
157
+ required?: string[];
158
+ additionalProperties?: boolean | OpenAPISchemaObject | OpenAPIRef;
159
+ enum?: unknown[];
160
+ const?: unknown;
161
+ format?: string;
162
+ minimum?: number;
163
+ maximum?: number;
164
+ exclusiveMinimum?: boolean | number;
165
+ exclusiveMaximum?: boolean | number;
166
+ minLength?: number;
167
+ maxLength?: number;
168
+ pattern?: string;
169
+ minItems?: number;
170
+ maxItems?: number;
171
+ uniqueItems?: boolean;
172
+ multipleOf?: number;
173
+ minProperties?: number;
174
+ maxProperties?: number;
175
+ allOf?: (OpenAPISchemaObject | OpenAPIRef)[];
176
+ anyOf?: (OpenAPISchemaObject | OpenAPIRef)[];
177
+ oneOf?: (OpenAPISchemaObject | OpenAPIRef)[];
178
+ not?: OpenAPISchemaObject | OpenAPIRef;
179
+ if?: OpenAPISchemaObject | OpenAPIRef;
180
+ then?: OpenAPISchemaObject | OpenAPIRef;
181
+ else?: OpenAPISchemaObject | OpenAPIRef;
182
+ description?: string;
183
+ title?: string;
184
+ default?: unknown;
185
+ example?: unknown;
186
+ examples?: unknown[];
187
+ nullable?: boolean;
188
+ discriminator?: {
189
+ propertyName: string;
190
+ mapping?: Record<string, string>;
191
+ };
192
+ xml?: {
193
+ name?: string;
194
+ namespace?: string;
195
+ prefix?: string;
196
+ attribute?: boolean;
197
+ wrapped?: boolean;
198
+ };
199
+ externalDocs?: OpenAPIExternalDocumentation;
200
+ deprecated?: boolean;
201
+ readOnly?: boolean;
202
+ writeOnly?: boolean;
203
+ [key: string]: unknown;
204
+ }
205
+ export interface OpenAPIComponents {
206
+ schemas?: Record<string, OpenAPISchemaObject | OpenAPIRef>;
207
+ responses?: Record<string, OpenAPIResponse | OpenAPIRef>;
208
+ parameters?: Record<string, OpenAPIParameter | OpenAPIRef>;
209
+ examples?: Record<string, OpenAPIExample | OpenAPIRef>;
210
+ requestBodies?: Record<string, OpenAPIRequestBody | OpenAPIRef>;
211
+ headers?: Record<string, OpenAPIHeader | OpenAPIRef>;
212
+ securitySchemes?: Record<string, OpenAPISecurityScheme | OpenAPIRef>;
213
+ links?: Record<string, OpenAPILink | OpenAPIRef>;
214
+ callbacks?: Record<string, OpenAPICallback | OpenAPIRef>;
215
+ }
216
+ export interface OpenAPISecurityRequirement {
217
+ [name: string]: string[];
218
+ }
219
+ export interface OpenAPISecurityScheme {
220
+ type: 'apiKey' | 'http' | 'oauth2' | 'openIdConnect';
221
+ description?: string;
222
+ name?: string;
223
+ in?: 'query' | 'header' | 'cookie';
224
+ scheme?: string;
225
+ bearerFormat?: string;
226
+ flows?: OpenAPIOAuthFlows;
227
+ openIdConnectUrl?: string;
228
+ }
229
+ export interface OpenAPIOAuthFlows {
230
+ implicit?: OpenAPIOAuthFlow;
231
+ password?: OpenAPIOAuthFlow;
232
+ clientCredentials?: OpenAPIOAuthFlow;
233
+ authorizationCode?: OpenAPIOAuthFlow;
234
+ }
235
+ export interface OpenAPIOAuthFlow {
236
+ authorizationUrl?: string;
237
+ tokenUrl?: string;
238
+ refreshUrl?: string;
239
+ scopes: Record<string, string>;
240
+ }
241
+ export interface OpenAPITag {
242
+ name: string;
243
+ description?: string;
244
+ externalDocs?: OpenAPIExternalDocumentation;
245
+ }
246
+ export interface OpenAPIExternalDocumentation {
247
+ description?: string;
248
+ url: string;
249
+ }
250
+ //# sourceMappingURL=openapi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openapi.d.ts","sourceRoot":"","sources":["../../src/types/openapi.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ /**
3
+ * Core OpenAPI 3.0+ schema type definitions
4
+ * These types represent the structure of OpenAPI schemas as they would be
5
+ * received from FastAPI applications
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ //# sourceMappingURL=openapi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openapi.js","sourceRoot":"","sources":["../../src/types/openapi.ts"],"names":[],"mappings":";AAAA;;;;GAIG"}
@@ -0,0 +1,68 @@
1
+ /**
2
+ * OpenAPI Schema Object definitions
3
+ * These types represent the JSON Schema structure used within OpenAPI specifications
4
+ */
5
+ import { OpenAPISchemaObject, OpenAPIRef } from './openapi';
6
+ export type OpenAPISchemaType = 'string' | 'number' | 'integer' | 'boolean' | 'array' | 'object' | 'null';
7
+ export interface OpenAPIDiscriminator {
8
+ propertyName: string;
9
+ mapping?: Record<string, string>;
10
+ }
11
+ export interface OpenAPIXML {
12
+ name?: string;
13
+ namespace?: string;
14
+ prefix?: string;
15
+ attribute?: boolean;
16
+ wrapped?: boolean;
17
+ }
18
+ /**
19
+ * Extended schema types for type generation
20
+ */
21
+ export interface ExtendedSchemaObject extends OpenAPISchemaObject {
22
+ _generatedTypeName?: string;
23
+ _isGenerated?: boolean;
24
+ _isArray?: boolean;
25
+ _isOptional?: boolean;
26
+ _isNullable?: boolean;
27
+ _isUnion?: boolean;
28
+ _isIntersection?: boolean;
29
+ _isStrictType?: boolean;
30
+ _baseType?: string;
31
+ _genericTypes?: string[];
32
+ _validationMetadata?: {
33
+ required?: boolean;
34
+ minLength?: number;
35
+ maxLength?: number;
36
+ minimum?: number;
37
+ maximum?: number;
38
+ pattern?: string;
39
+ format?: string;
40
+ };
41
+ }
42
+ /**
43
+ * Schema reference resolution utilities
44
+ */
45
+ export type SchemaReference = string;
46
+ export type ResolvedSchema = OpenAPISchemaObject | OpenAPIRef | ExtendedSchemaObject;
47
+ export type SchemaResolver = (ref: SchemaReference) => ResolvedSchema | undefined;
48
+ /**
49
+ * Type guards for schema objects
50
+ */
51
+ export declare function isOpenAPIRef(schema: ResolvedSchema): schema is OpenAPIRef;
52
+ export declare function isExtendedSchemaObject(schema: ResolvedSchema): schema is ExtendedSchemaObject;
53
+ export declare function isOpenAPISchemaObject(schema: ResolvedSchema): schema is OpenAPISchemaObject;
54
+ /**
55
+ * Common schema patterns for FastAPI
56
+ */
57
+ export interface FastAPISchemaPatterns {
58
+ datetime: string;
59
+ uuid: string;
60
+ email: string;
61
+ url: string;
62
+ date: string;
63
+ time: string;
64
+ password: string;
65
+ binary: string;
66
+ file: string;
67
+ }
68
+ //# sourceMappingURL=schema.d.ts.map