zod-openapi 5.0.0-beta.4 → 5.0.0-beta.5

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 (51) hide show
  1. package/README.md +208 -71
  2. package/api/index.d.ts +1 -0
  3. package/api/package.json +5 -0
  4. package/dist/api.cjs +8 -0
  5. package/dist/api.d.mts +3 -22
  6. package/dist/api.d.ts +3 -22
  7. package/dist/api.mjs +8 -4
  8. package/dist/components.chunk.cjs +2463 -0
  9. package/dist/components.chunk.mjs +2464 -0
  10. package/dist/create/components.d.ts +125 -0
  11. package/dist/create/content.d.ts +8 -0
  12. package/dist/create/document.d.ts +91 -0
  13. package/dist/create/parameters.d.ts +9 -0
  14. package/dist/create/schema/single.d.ts +33 -0
  15. package/dist/extend.cjs +4 -0
  16. package/dist/extend.d.mts +1 -0
  17. package/dist/extend.d.ts +1 -0
  18. package/dist/extend.mjs +3 -0
  19. package/dist/extendZod.chunk.cjs +95 -0
  20. package/dist/extendZod.chunk.mjs +96 -0
  21. package/dist/extendZod.d.ts +6 -0
  22. package/dist/extendZodSymbols.chunk.cjs +5 -0
  23. package/dist/extendZodSymbols.chunk.mjs +6 -0
  24. package/dist/extendZodSymbols.d.ts +4 -0
  25. package/dist/extendZodTypes.d.ts +91 -0
  26. package/dist/index.cjs +60 -0
  27. package/dist/index.d.mts +7 -23
  28. package/dist/index.d.ts +7 -23
  29. package/dist/index.mjs +59 -18
  30. package/dist/openapi.d.ts +5 -0
  31. package/dist/openapi3-ts/dist/model/oas-common.d.ts +16 -0
  32. package/dist/openapi3-ts/dist/model/openapi30.d.ts +291 -0
  33. package/dist/openapi3-ts/dist/model/openapi31.d.ts +298 -0
  34. package/dist/openapi3-ts/dist/model/specification-extension.d.ts +7 -0
  35. package/dist/openapi3-ts/dist/oas30.d.ts +3 -0
  36. package/dist/openapi3-ts/dist/oas31.d.ts +3 -0
  37. package/extend/index.d.ts +1 -0
  38. package/extend/package.json +5 -0
  39. package/package.json +30 -13
  40. package/dist/api.js +0 -8
  41. package/dist/components-5_CJdR73.d.ts +0 -543
  42. package/dist/components-CXjVnBr-.js +0 -782
  43. package/dist/components-CvutxtFV.mjs +0 -741
  44. package/dist/components-DAYTA1Um.d.mts +0 -543
  45. package/dist/create/componentsSideEffects.d.mts +0 -6
  46. package/dist/create/componentsSideEffects.d.ts +0 -6
  47. package/dist/create/componentsSideEffects.js +0 -48
  48. package/dist/create/componentsSideEffects.mjs +0 -48
  49. package/dist/index.js +0 -20
  50. package/dist/zod-BvA30wad.mjs +0 -5
  51. package/dist/zod-i2t01GF0.js +0 -40
package/dist/index.d.mts CHANGED
@@ -1,23 +1,7 @@
1
- import { BaseParameterObject, CallbackObject, CallbacksObject, ComponentRegistry, ComponentsObject, ContactObject, ContentObject, CreateDocumentOptions, DiscriminatorObject, EncodingObject, EncodingPropertyObject, ExampleObject, ExamplesObject, ExternalDocumentationObject, HeaderObject, HeadersObject, IExtensionName, IExtensionType, ISpecificationExtension, InfoObject, LicenseObject, LinkObject, LinkParametersObject, LinksObject, MediaTypeObject, OAuthFlowObject, OAuthFlowsObject, OpenAPIObject, OperationObject, Override, ParameterLocation, ParameterObject, ParameterStyle, PathItemObject, PathObject, PathsObject, ReferenceObject, RequestBodyObject, ResponseObject, ResponsesObject, SchemaObject, SchemaObjectType, SchemasObject, ScopesObject, SecurityRequirementObject, SecuritySchemeObject, SecuritySchemeType, ServerObject, ServerVariableObject, TagObject, XmlObject, ZodObjectInput, ZodObjectInputType, ZodOpenApiCallbackObject, ZodOpenApiCallbacksObject, ZodOpenApiComponentsObject, ZodOpenApiContentObject, ZodOpenApiHeaderObject, ZodOpenApiHeadersObject, ZodOpenApiMediaTypeObject, ZodOpenApiObject, ZodOpenApiOperationObject, ZodOpenApiParameterObject, ZodOpenApiParameters, ZodOpenApiPathItemObject, ZodOpenApiPathsObject, ZodOpenApiRequestBody, ZodOpenApiRequestBodyObject, ZodOpenApiResponseObject, ZodOpenApiResponsesObject, ZodOpenApiSchemaObject, ZodOpenApiVersion, createDocument, isAnyZodType } from "./components-DAYTA1Um.mjs";
2
- import { core } from "zod/v4";
3
-
4
- //#region rolldown:runtime
5
- //#endregion
6
- //#region src/create/schema/schema.d.ts
7
- interface SchemaResult {
8
- schema: SchemaObject | ReferenceObject;
9
- components: Record<string, SchemaObject>;
10
- }
11
- declare const createSchema: (schema: core.$ZodType, ctx?: {
12
- registry?: ComponentRegistry;
13
- io?: "input" | "output";
14
- opts?: CreateDocumentOptions;
15
- }) => {
16
- schema: SchemaObject | ReferenceObject;
17
- components: Record<string, SchemaObject>;
18
- };
19
- declare namespace oas31_d_exports {
20
- export { BaseParameterObject, CallbackObject, CallbacksObject, ComponentsObject, ContactObject, ContentObject, DiscriminatorObject, EncodingObject, EncodingPropertyObject, ExampleObject, ExamplesObject, ExternalDocumentationObject, HeaderObject, HeadersObject, IExtensionName, IExtensionType, ISpecificationExtension, InfoObject, LicenseObject, LinkObject, LinkParametersObject, LinksObject, MediaTypeObject, OAuthFlowObject, OAuthFlowsObject, OpenAPIObject, OperationObject, ParameterLocation, ParameterObject, ParameterStyle, PathItemObject, PathObject, PathsObject, ReferenceObject, RequestBodyObject, ResponseObject, ResponsesObject, SchemaObject, SchemaObjectType, SchemasObject, ScopesObject, SecurityRequirementObject, SecuritySchemeObject, SecuritySchemeType, ServerObject, ServerVariableObject, TagObject, XmlObject };
21
- }
22
- //#endregion
23
- export { CreateDocumentOptions, Override, SchemaResult, ZodObjectInput, ZodObjectInputType, ZodOpenApiCallbackObject, ZodOpenApiCallbacksObject, ZodOpenApiComponentsObject, ZodOpenApiContentObject, ZodOpenApiHeaderObject, ZodOpenApiHeadersObject, ZodOpenApiMediaTypeObject, ZodOpenApiObject, ZodOpenApiOperationObject, ZodOpenApiParameterObject, ZodOpenApiParameters, ZodOpenApiPathItemObject, ZodOpenApiPathsObject, ZodOpenApiRequestBody, ZodOpenApiRequestBodyObject, ZodOpenApiResponseObject, ZodOpenApiResponsesObject, ZodOpenApiSchemaObject, ZodOpenApiVersion, createDocument, createSchema, isAnyZodType, oas31_d_exports as oas31 };
1
+ export { CreateDocumentOptions, ZodObjectInputType, ZodOpenApiCallbackObject, ZodOpenApiCallbacksObject, ZodOpenApiComponentsObject, ZodOpenApiContentObject, ZodOpenApiMediaTypeObject, ZodOpenApiObject, ZodOpenApiOperationObject, ZodOpenApiParameters, ZodOpenApiPathItemObject, ZodOpenApiPathsObject, ZodOpenApiRequestBodyObject, ZodOpenApiResponseObject, ZodOpenApiResponsesObject, ZodOpenApiVersion, createDocument } from './create/document.js';
2
+ export { CreateSchemaOptions, SchemaResult, createSchema } from './create/schema/single.js';
3
+ export { extendZodWithOpenApi } from './extendZod.js';
4
+ import * as oas30 from './openapi3-ts/dist/oas30.js';
5
+ export { oas30 };
6
+ import * as oas31 from './openapi3-ts/dist/oas31.js';
7
+ export { oas31 };
package/dist/index.d.ts CHANGED
@@ -1,23 +1,7 @@
1
- import { BaseParameterObject, CallbackObject, CallbacksObject, ComponentRegistry, ComponentsObject, ContactObject, ContentObject, CreateDocumentOptions, DiscriminatorObject, EncodingObject, EncodingPropertyObject, ExampleObject, ExamplesObject, ExternalDocumentationObject, HeaderObject, HeadersObject, IExtensionName, IExtensionType, ISpecificationExtension, InfoObject, LicenseObject, LinkObject, LinkParametersObject, LinksObject, MediaTypeObject, OAuthFlowObject, OAuthFlowsObject, OpenAPIObject, OperationObject, Override, ParameterLocation, ParameterObject, ParameterStyle, PathItemObject, PathObject, PathsObject, ReferenceObject, RequestBodyObject, ResponseObject, ResponsesObject, SchemaObject, SchemaObjectType, SchemasObject, ScopesObject, SecurityRequirementObject, SecuritySchemeObject, SecuritySchemeType, ServerObject, ServerVariableObject, TagObject, XmlObject, ZodObjectInput, ZodObjectInputType, ZodOpenApiCallbackObject, ZodOpenApiCallbacksObject, ZodOpenApiComponentsObject, ZodOpenApiContentObject, ZodOpenApiHeaderObject, ZodOpenApiHeadersObject, ZodOpenApiMediaTypeObject, ZodOpenApiObject, ZodOpenApiOperationObject, ZodOpenApiParameterObject, ZodOpenApiParameters, ZodOpenApiPathItemObject, ZodOpenApiPathsObject, ZodOpenApiRequestBody, ZodOpenApiRequestBodyObject, ZodOpenApiResponseObject, ZodOpenApiResponsesObject, ZodOpenApiSchemaObject, ZodOpenApiVersion, createDocument, isAnyZodType } from "./components-5_CJdR73.js";
2
- import { core } from "zod/v4";
3
-
4
- //#region rolldown:runtime
5
- //#endregion
6
- //#region src/create/schema/schema.d.ts
7
- interface SchemaResult {
8
- schema: SchemaObject | ReferenceObject;
9
- components: Record<string, SchemaObject>;
10
- }
11
- declare const createSchema: (schema: core.$ZodType, ctx?: {
12
- registry?: ComponentRegistry;
13
- io?: "input" | "output";
14
- opts?: CreateDocumentOptions;
15
- }) => {
16
- schema: SchemaObject | ReferenceObject;
17
- components: Record<string, SchemaObject>;
18
- };
19
- declare namespace oas31_d_exports {
20
- export { BaseParameterObject, CallbackObject, CallbacksObject, ComponentsObject, ContactObject, ContentObject, DiscriminatorObject, EncodingObject, EncodingPropertyObject, ExampleObject, ExamplesObject, ExternalDocumentationObject, HeaderObject, HeadersObject, IExtensionName, IExtensionType, ISpecificationExtension, InfoObject, LicenseObject, LinkObject, LinkParametersObject, LinksObject, MediaTypeObject, OAuthFlowObject, OAuthFlowsObject, OpenAPIObject, OperationObject, ParameterLocation, ParameterObject, ParameterStyle, PathItemObject, PathObject, PathsObject, ReferenceObject, RequestBodyObject, ResponseObject, ResponsesObject, SchemaObject, SchemaObjectType, SchemasObject, ScopesObject, SecurityRequirementObject, SecuritySchemeObject, SecuritySchemeType, ServerObject, ServerVariableObject, TagObject, XmlObject };
21
- }
22
- //#endregion
23
- export { CreateDocumentOptions, Override, SchemaResult, ZodObjectInput, ZodObjectInputType, ZodOpenApiCallbackObject, ZodOpenApiCallbacksObject, ZodOpenApiComponentsObject, ZodOpenApiContentObject, ZodOpenApiHeaderObject, ZodOpenApiHeadersObject, ZodOpenApiMediaTypeObject, ZodOpenApiObject, ZodOpenApiOperationObject, ZodOpenApiParameterObject, ZodOpenApiParameters, ZodOpenApiPathItemObject, ZodOpenApiPathsObject, ZodOpenApiRequestBody, ZodOpenApiRequestBodyObject, ZodOpenApiResponseObject, ZodOpenApiResponsesObject, ZodOpenApiSchemaObject, ZodOpenApiVersion, createDocument, createSchema, isAnyZodType, oas31_d_exports as oas31 };
1
+ export { CreateDocumentOptions, ZodObjectInputType, ZodOpenApiCallbackObject, ZodOpenApiCallbacksObject, ZodOpenApiComponentsObject, ZodOpenApiContentObject, ZodOpenApiMediaTypeObject, ZodOpenApiObject, ZodOpenApiOperationObject, ZodOpenApiParameters, ZodOpenApiPathItemObject, ZodOpenApiPathsObject, ZodOpenApiRequestBodyObject, ZodOpenApiResponseObject, ZodOpenApiResponsesObject, ZodOpenApiVersion, createDocument } from './create/document.js';
2
+ export { CreateSchemaOptions, SchemaResult, createSchema } from './create/schema/single.js';
3
+ export { extendZodWithOpenApi } from './extendZod.js';
4
+ import * as oas30 from './openapi3-ts/dist/oas30.js';
5
+ export { oas30 };
6
+ import * as oas31 from './openapi3-ts/dist/oas31.js';
7
+ export { oas31 };
package/dist/index.mjs CHANGED
@@ -1,19 +1,60 @@
1
- import "./zod-BvA30wad.mjs";
2
- import { createComponents, createPaths, createRegistry, createSchema } from "./components-CvutxtFV.mjs";
3
-
4
- //#region src/create/document.ts
5
- const createDocument = (zodOpenApiObject, opts = {}) => {
6
- const { paths, webhooks, components,...rest } = zodOpenApiObject;
7
- const document = rest;
8
- const registry = createRegistry(components);
9
- const createdPaths = createPaths(paths, registry, ["paths"]);
10
- if (createdPaths) document.paths = createdPaths;
11
- const createdWebhooks = createPaths(webhooks, registry, ["webhooks"]);
12
- if (createdWebhooks) document.webhooks = createdWebhooks;
13
- const createdComponents = createComponents(registry, opts);
14
- if (Object.keys(createdComponents).length > 0) document.components = createdComponents;
15
- return document;
1
+ import { getDefaultComponents, createPaths, createComponents, createSchema as createSchema$1, createSchemaComponents } from "./components.chunk.mjs";
2
+ import { extendZodWithOpenApi } from "./extendZod.chunk.mjs";
3
+ const createDocument = (zodOpenApiObject, documentOptions) => {
4
+ const { paths, webhooks, components = {}, ...rest } = zodOpenApiObject;
5
+ const defaultComponents = getDefaultComponents(
6
+ components,
7
+ zodOpenApiObject.openapi
8
+ );
9
+ const createdPaths = createPaths(paths, defaultComponents, documentOptions);
10
+ const createdWebhooks = createPaths(
11
+ webhooks,
12
+ defaultComponents,
13
+ documentOptions
14
+ );
15
+ const createdComponents = createComponents(
16
+ components,
17
+ defaultComponents,
18
+ documentOptions
19
+ );
20
+ return {
21
+ ...rest,
22
+ ...createdPaths && { paths: createdPaths },
23
+ ...createdWebhooks && { webhooks: createdWebhooks },
24
+ ...createdComponents && { components: createdComponents }
25
+ };
26
+ };
27
+ const createSchema = (zodType, opts) => {
28
+ const components = getDefaultComponents(
29
+ {
30
+ schemas: opts == null ? void 0 : opts.components
31
+ },
32
+ opts == null ? void 0 : opts.openapi
33
+ );
34
+ const state = {
35
+ components,
36
+ type: (opts == null ? void 0 : opts.schemaType) ?? "output",
37
+ path: [],
38
+ visited: /* @__PURE__ */ new Set(),
39
+ documentOptions: opts
40
+ };
41
+ const schema = createSchema$1(zodType, state, ["createSchema"]);
42
+ const schemaComponents = createSchemaComponents({}, components);
43
+ return {
44
+ schema,
45
+ components: schemaComponents
46
+ };
47
+ };
48
+ const oas30 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
49
+ __proto__: null
50
+ }, Symbol.toStringTag, { value: "Module" }));
51
+ const oas31 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
52
+ __proto__: null
53
+ }, Symbol.toStringTag, { value: "Module" }));
54
+ export {
55
+ createDocument,
56
+ createSchema,
57
+ extendZodWithOpenApi,
58
+ oas30,
59
+ oas31
16
60
  };
17
-
18
- //#endregion
19
- export { createDocument, createSchema };
@@ -0,0 +1,5 @@
1
+ declare const openApiVersions: readonly ["3.0.0", "3.0.1", "3.0.2", "3.0.3", "3.1.0", "3.1.1"];
2
+ type OpenApiVersion = (typeof openApiVersions)[number];
3
+
4
+ export { openApiVersions };
5
+ export type { OpenApiVersion };
@@ -0,0 +1,16 @@
1
+ import { ISpecificationExtension } from './specification-extension.js';
2
+
3
+ interface ServerObject extends ISpecificationExtension {
4
+ url: string;
5
+ description?: string;
6
+ variables?: {
7
+ [v: string]: ServerVariableObject;
8
+ };
9
+ }
10
+ interface ServerVariableObject extends ISpecificationExtension {
11
+ enum?: string[] | boolean[] | number[];
12
+ default: string | boolean | number;
13
+ description?: string;
14
+ }
15
+
16
+ export type { ServerObject, ServerVariableObject };
@@ -0,0 +1,291 @@
1
+ import { ServerObject } from './oas-common.js';
2
+ export { ServerVariableObject } from './oas-common.js';
3
+ import { ISpecificationExtension } from './specification-extension.js';
4
+
5
+ interface OpenAPIObject extends ISpecificationExtension {
6
+ openapi: string;
7
+ info: InfoObject;
8
+ servers?: ServerObject[];
9
+ paths: PathsObject;
10
+ components?: ComponentsObject;
11
+ security?: SecurityRequirementObject[];
12
+ tags?: TagObject[];
13
+ externalDocs?: ExternalDocumentationObject;
14
+ }
15
+ interface InfoObject extends ISpecificationExtension {
16
+ title: string;
17
+ description?: string;
18
+ termsOfService?: string;
19
+ contact?: ContactObject;
20
+ license?: LicenseObject;
21
+ version: string;
22
+ }
23
+ interface ContactObject extends ISpecificationExtension {
24
+ name?: string;
25
+ url?: string;
26
+ email?: string;
27
+ }
28
+ interface LicenseObject extends ISpecificationExtension {
29
+ name: string;
30
+ url?: string;
31
+ }
32
+ interface ComponentsObject extends ISpecificationExtension {
33
+ schemas?: {
34
+ [schema: string]: SchemaObject | ReferenceObject;
35
+ };
36
+ responses?: {
37
+ [response: string]: ResponseObject | ReferenceObject;
38
+ };
39
+ parameters?: {
40
+ [parameter: string]: ParameterObject | ReferenceObject;
41
+ };
42
+ examples?: {
43
+ [example: string]: ExampleObject | ReferenceObject;
44
+ };
45
+ requestBodies?: {
46
+ [request: string]: RequestBodyObject | ReferenceObject;
47
+ };
48
+ headers?: {
49
+ [header: string]: HeaderObject | ReferenceObject;
50
+ };
51
+ securitySchemes?: {
52
+ [securityScheme: string]: SecuritySchemeObject | ReferenceObject;
53
+ };
54
+ links?: {
55
+ [link: string]: LinkObject | ReferenceObject;
56
+ };
57
+ callbacks?: {
58
+ [callback: string]: CallbackObject | ReferenceObject;
59
+ };
60
+ }
61
+ interface PathsObject extends ISpecificationExtension {
62
+ [path: string]: PathItemObject;
63
+ }
64
+ type PathObject = PathsObject;
65
+ interface PathItemObject extends ISpecificationExtension {
66
+ $ref?: string;
67
+ summary?: string;
68
+ description?: string;
69
+ get?: OperationObject;
70
+ put?: OperationObject;
71
+ post?: OperationObject;
72
+ delete?: OperationObject;
73
+ options?: OperationObject;
74
+ head?: OperationObject;
75
+ patch?: OperationObject;
76
+ trace?: OperationObject;
77
+ servers?: ServerObject[];
78
+ parameters?: (ParameterObject | ReferenceObject)[];
79
+ }
80
+ interface OperationObject extends ISpecificationExtension {
81
+ tags?: string[];
82
+ summary?: string;
83
+ description?: string;
84
+ externalDocs?: ExternalDocumentationObject;
85
+ operationId?: string;
86
+ parameters?: (ParameterObject | ReferenceObject)[];
87
+ requestBody?: RequestBodyObject | ReferenceObject;
88
+ responses: ResponsesObject;
89
+ callbacks?: CallbacksObject;
90
+ deprecated?: boolean;
91
+ security?: SecurityRequirementObject[];
92
+ servers?: ServerObject[];
93
+ }
94
+ interface ExternalDocumentationObject extends ISpecificationExtension {
95
+ description?: string;
96
+ url: string;
97
+ }
98
+ type ParameterLocation = 'query' | 'header' | 'path' | 'cookie';
99
+ type ParameterStyle = 'matrix' | 'label' | 'form' | 'simple' | 'spaceDelimited' | 'pipeDelimited' | 'deepObject';
100
+ interface BaseParameterObject extends ISpecificationExtension {
101
+ description?: string;
102
+ required?: boolean;
103
+ deprecated?: boolean;
104
+ allowEmptyValue?: boolean;
105
+ style?: ParameterStyle;
106
+ explode?: boolean;
107
+ allowReserved?: boolean;
108
+ schema?: SchemaObject | ReferenceObject;
109
+ examples?: {
110
+ [param: string]: ExampleObject | ReferenceObject;
111
+ };
112
+ example?: any;
113
+ content?: ContentObject;
114
+ }
115
+ interface ParameterObject extends BaseParameterObject {
116
+ name: string;
117
+ in: ParameterLocation;
118
+ }
119
+ interface RequestBodyObject extends ISpecificationExtension {
120
+ description?: string;
121
+ content: ContentObject;
122
+ required?: boolean;
123
+ }
124
+ interface ContentObject {
125
+ [mediatype: string]: MediaTypeObject;
126
+ }
127
+ interface MediaTypeObject extends ISpecificationExtension {
128
+ schema?: SchemaObject | ReferenceObject;
129
+ examples?: ExamplesObject;
130
+ example?: any;
131
+ encoding?: EncodingObject;
132
+ }
133
+ interface EncodingObject extends ISpecificationExtension {
134
+ [property: string]: EncodingPropertyObject | any;
135
+ }
136
+ interface EncodingPropertyObject {
137
+ contentType?: string;
138
+ headers?: {
139
+ [key: string]: HeaderObject | ReferenceObject;
140
+ };
141
+ style?: string;
142
+ explode?: boolean;
143
+ allowReserved?: boolean;
144
+ [key: string]: any;
145
+ }
146
+ interface ResponsesObject extends ISpecificationExtension {
147
+ default?: ResponseObject | ReferenceObject;
148
+ [statuscode: string]: ResponseObject | ReferenceObject | any;
149
+ }
150
+ interface ResponseObject extends ISpecificationExtension {
151
+ description: string;
152
+ headers?: HeadersObject;
153
+ content?: ContentObject;
154
+ links?: LinksObject;
155
+ }
156
+ interface CallbacksObject extends ISpecificationExtension {
157
+ [name: string]: CallbackObject | ReferenceObject | any;
158
+ }
159
+ interface CallbackObject extends ISpecificationExtension {
160
+ [name: string]: PathItemObject | any;
161
+ }
162
+ interface HeadersObject {
163
+ [name: string]: HeaderObject | ReferenceObject;
164
+ }
165
+ interface ExampleObject {
166
+ summary?: string;
167
+ description?: string;
168
+ value?: any;
169
+ externalValue?: string;
170
+ [property: string]: any;
171
+ }
172
+ interface LinksObject {
173
+ [name: string]: LinkObject | ReferenceObject;
174
+ }
175
+ interface LinkObject extends ISpecificationExtension {
176
+ operationRef?: string;
177
+ operationId?: string;
178
+ parameters?: LinkParametersObject;
179
+ requestBody?: any | string;
180
+ description?: string;
181
+ server?: ServerObject;
182
+ [property: string]: any;
183
+ }
184
+ interface LinkParametersObject {
185
+ [name: string]: any | string;
186
+ }
187
+ interface HeaderObject extends BaseParameterObject {
188
+ $ref?: string;
189
+ }
190
+ interface TagObject extends ISpecificationExtension {
191
+ name: string;
192
+ description?: string;
193
+ externalDocs?: ExternalDocumentationObject;
194
+ [extension: string]: any;
195
+ }
196
+ interface ExamplesObject {
197
+ [name: string]: ExampleObject | ReferenceObject;
198
+ }
199
+ interface ReferenceObject {
200
+ $ref: string;
201
+ }
202
+ type SchemaObjectType = 'integer' | 'number' | 'string' | 'boolean' | 'object' | 'null' | 'array';
203
+ type SchemaObjectFormat = 'int32' | 'int64' | 'float' | 'double' | 'byte' | 'binary' | 'date' | 'date-time' | 'password' | string;
204
+ interface SchemaObject extends ISpecificationExtension {
205
+ nullable?: boolean;
206
+ discriminator?: DiscriminatorObject;
207
+ readOnly?: boolean;
208
+ writeOnly?: boolean;
209
+ xml?: XmlObject;
210
+ externalDocs?: ExternalDocumentationObject;
211
+ example?: any;
212
+ examples?: any[];
213
+ deprecated?: boolean;
214
+ type?: SchemaObjectType | SchemaObjectType[];
215
+ format?: SchemaObjectFormat;
216
+ allOf?: (SchemaObject | ReferenceObject)[];
217
+ oneOf?: (SchemaObject | ReferenceObject)[];
218
+ anyOf?: (SchemaObject | ReferenceObject)[];
219
+ not?: SchemaObject | ReferenceObject;
220
+ items?: SchemaObject | ReferenceObject;
221
+ properties?: {
222
+ [propertyName: string]: SchemaObject | ReferenceObject;
223
+ };
224
+ additionalProperties?: SchemaObject | ReferenceObject | boolean;
225
+ description?: string;
226
+ default?: any;
227
+ title?: string;
228
+ multipleOf?: number;
229
+ maximum?: number;
230
+ exclusiveMaximum?: boolean;
231
+ minimum?: number;
232
+ exclusiveMinimum?: boolean;
233
+ maxLength?: number;
234
+ minLength?: number;
235
+ pattern?: string;
236
+ maxItems?: number;
237
+ minItems?: number;
238
+ uniqueItems?: boolean;
239
+ maxProperties?: number;
240
+ minProperties?: number;
241
+ required?: string[];
242
+ enum?: any[];
243
+ }
244
+ interface SchemasObject {
245
+ [schema: string]: SchemaObject;
246
+ }
247
+ interface DiscriminatorObject {
248
+ propertyName: string;
249
+ mapping?: {
250
+ [key: string]: string;
251
+ };
252
+ }
253
+ interface XmlObject extends ISpecificationExtension {
254
+ name?: string;
255
+ namespace?: string;
256
+ prefix?: string;
257
+ attribute?: boolean;
258
+ wrapped?: boolean;
259
+ }
260
+ type SecuritySchemeType = 'apiKey' | 'http' | 'oauth2' | 'openIdConnect';
261
+ interface SecuritySchemeObject extends ISpecificationExtension {
262
+ type: SecuritySchemeType;
263
+ description?: string;
264
+ name?: string;
265
+ in?: string;
266
+ scheme?: string;
267
+ bearerFormat?: string;
268
+ flows?: OAuthFlowsObject;
269
+ openIdConnectUrl?: string;
270
+ }
271
+ interface OAuthFlowsObject extends ISpecificationExtension {
272
+ implicit?: OAuthFlowObject;
273
+ password?: OAuthFlowObject;
274
+ clientCredentials?: OAuthFlowObject;
275
+ authorizationCode?: OAuthFlowObject;
276
+ }
277
+ interface OAuthFlowObject extends ISpecificationExtension {
278
+ authorizationUrl?: string;
279
+ tokenUrl?: string;
280
+ refreshUrl?: string;
281
+ scopes: ScopesObject;
282
+ }
283
+ interface ScopesObject extends ISpecificationExtension {
284
+ [scope: string]: any;
285
+ }
286
+ interface SecurityRequirementObject {
287
+ [name: string]: string[];
288
+ }
289
+
290
+ export { ISpecificationExtension, ServerObject };
291
+ export type { BaseParameterObject, CallbackObject, CallbacksObject, ComponentsObject, ContactObject, ContentObject, DiscriminatorObject, EncodingObject, EncodingPropertyObject, ExampleObject, ExamplesObject, ExternalDocumentationObject, HeaderObject, HeadersObject, InfoObject, LicenseObject, LinkObject, LinkParametersObject, LinksObject, MediaTypeObject, OAuthFlowObject, OAuthFlowsObject, OpenAPIObject, OperationObject, ParameterLocation, ParameterObject, ParameterStyle, PathItemObject, PathObject, PathsObject, ReferenceObject, RequestBodyObject, ResponseObject, ResponsesObject, SchemaObject, SchemaObjectFormat, SchemaObjectType, SchemasObject, ScopesObject, SecurityRequirementObject, SecuritySchemeObject, SecuritySchemeType, TagObject, XmlObject };