zod-openapi 1.0.2 → 2.0.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 (163) hide show
  1. package/README.md +0 -34
  2. package/lib-commonjs/create/components.js.map +1 -1
  3. package/lib-commonjs/create/content.js.map +1 -1
  4. package/lib-commonjs/create/document.js +9 -17
  5. package/lib-commonjs/create/document.js.map +1 -1
  6. package/lib-commonjs/create/parameters.js.map +1 -1
  7. package/lib-commonjs/create/responses.js.map +1 -1
  8. package/lib-commonjs/create/schema/array.js.map +1 -1
  9. package/lib-commonjs/create/schema/boolean.js.map +1 -1
  10. package/lib-commonjs/create/schema/catch.js.map +1 -1
  11. package/lib-commonjs/create/schema/date.js.map +1 -1
  12. package/lib-commonjs/create/schema/default.js.map +1 -1
  13. package/lib-commonjs/create/schema/discriminatedUnion.js.map +1 -1
  14. package/lib-commonjs/create/schema/enum.js.map +1 -1
  15. package/lib-commonjs/create/schema/index.js.map +1 -1
  16. package/lib-commonjs/create/schema/intersection.js.map +1 -1
  17. package/lib-commonjs/create/schema/literal.js.map +1 -1
  18. package/lib-commonjs/create/schema/manual.js.map +1 -1
  19. package/lib-commonjs/create/schema/metadata.js.map +1 -1
  20. package/lib-commonjs/create/schema/nativeEnum.js.map +1 -1
  21. package/lib-commonjs/create/schema/null.js.map +1 -1
  22. package/lib-commonjs/create/schema/nullable.js.map +1 -1
  23. package/lib-commonjs/create/schema/number.js.map +1 -1
  24. package/lib-commonjs/create/schema/optional.js.map +1 -1
  25. package/lib-commonjs/create/schema/pipeline.js.map +1 -1
  26. package/lib-commonjs/create/schema/preprocess.js.map +1 -1
  27. package/lib-commonjs/create/schema/record.js.map +1 -1
  28. package/lib-commonjs/create/schema/refine.js.map +1 -1
  29. package/lib-commonjs/create/schema/string.js.map +1 -1
  30. package/lib-commonjs/create/schema/tuple.js.map +1 -1
  31. package/lib-commonjs/create/schema/union.js.map +1 -1
  32. package/lib-commonjs/create/schema/unknown.js.map +1 -1
  33. package/lib-commonjs/index.js +1 -0
  34. package/lib-commonjs/index.js.map +1 -1
  35. package/lib-commonjs/openapi3-ts/dist/dsl/openapi-builder30.js +3 -0
  36. package/lib-commonjs/openapi3-ts/dist/dsl/openapi-builder30.js.map +1 -0
  37. package/lib-commonjs/openapi3-ts/dist/dsl/openapi-builder31.js +3 -0
  38. package/lib-commonjs/openapi3-ts/dist/dsl/openapi-builder31.js.map +1 -0
  39. package/lib-commonjs/openapi3-ts/dist/index.js +32 -0
  40. package/lib-commonjs/openapi3-ts/dist/index.js.map +1 -0
  41. package/lib-commonjs/openapi3-ts/dist/model/oas-common.js +3 -0
  42. package/lib-commonjs/openapi3-ts/dist/model/oas-common.js.map +1 -0
  43. package/lib-commonjs/openapi3-ts/dist/model/openapi30.js +18 -0
  44. package/lib-commonjs/openapi3-ts/dist/model/openapi30.js.map +1 -0
  45. package/lib-commonjs/openapi3-ts/dist/model/openapi31.js +18 -0
  46. package/lib-commonjs/openapi3-ts/dist/model/openapi31.js.map +1 -0
  47. package/lib-commonjs/openapi3-ts/dist/model/server.js +3 -0
  48. package/lib-commonjs/openapi3-ts/dist/model/server.js.map +1 -0
  49. package/lib-commonjs/openapi3-ts/dist/model/specification-extension.js +3 -0
  50. package/lib-commonjs/openapi3-ts/dist/model/specification-extension.js.map +1 -0
  51. package/lib-commonjs/openapi3-ts/dist/oas30.js +23 -0
  52. package/lib-commonjs/openapi3-ts/dist/oas30.js.map +1 -0
  53. package/lib-commonjs/openapi3-ts/dist/oas31.js +23 -0
  54. package/lib-commonjs/openapi3-ts/dist/oas31.js.map +1 -0
  55. package/lib-commonjs/openapi3-ts/oas30.js +19 -0
  56. package/lib-commonjs/openapi3-ts/oas30.js.map +1 -0
  57. package/lib-commonjs/openapi3-ts/oas31.js +19 -0
  58. package/lib-commonjs/openapi3-ts/oas31.js.map +1 -0
  59. package/lib-es2015/create/components.js.map +1 -1
  60. package/lib-es2015/create/content.js.map +1 -1
  61. package/lib-es2015/create/document.js +8 -14
  62. package/lib-es2015/create/document.js.map +1 -1
  63. package/lib-es2015/create/parameters.js.map +1 -1
  64. package/lib-es2015/create/responses.js.map +1 -1
  65. package/lib-es2015/create/schema/array.js.map +1 -1
  66. package/lib-es2015/create/schema/boolean.js.map +1 -1
  67. package/lib-es2015/create/schema/catch.js.map +1 -1
  68. package/lib-es2015/create/schema/date.js.map +1 -1
  69. package/lib-es2015/create/schema/default.js.map +1 -1
  70. package/lib-es2015/create/schema/discriminatedUnion.js.map +1 -1
  71. package/lib-es2015/create/schema/enum.js.map +1 -1
  72. package/lib-es2015/create/schema/index.js.map +1 -1
  73. package/lib-es2015/create/schema/intersection.js.map +1 -1
  74. package/lib-es2015/create/schema/literal.js.map +1 -1
  75. package/lib-es2015/create/schema/manual.js.map +1 -1
  76. package/lib-es2015/create/schema/metadata.js.map +1 -1
  77. package/lib-es2015/create/schema/nativeEnum.js.map +1 -1
  78. package/lib-es2015/create/schema/null.js.map +1 -1
  79. package/lib-es2015/create/schema/nullable.js.map +1 -1
  80. package/lib-es2015/create/schema/number.js.map +1 -1
  81. package/lib-es2015/create/schema/optional.js.map +1 -1
  82. package/lib-es2015/create/schema/pipeline.js.map +1 -1
  83. package/lib-es2015/create/schema/preprocess.js.map +1 -1
  84. package/lib-es2015/create/schema/record.js.map +1 -1
  85. package/lib-es2015/create/schema/refine.js.map +1 -1
  86. package/lib-es2015/create/schema/string.js.map +1 -1
  87. package/lib-es2015/create/schema/tuple.js.map +1 -1
  88. package/lib-es2015/create/schema/union.js.map +1 -1
  89. package/lib-es2015/create/schema/unknown.js.map +1 -1
  90. package/lib-es2015/index.js +1 -0
  91. package/lib-es2015/index.js.map +1 -1
  92. package/lib-es2015/openapi3-ts/dist/dsl/openapi-builder30.js +2 -0
  93. package/lib-es2015/openapi3-ts/dist/dsl/openapi-builder30.js.map +1 -0
  94. package/lib-es2015/openapi3-ts/dist/dsl/openapi-builder31.js +2 -0
  95. package/lib-es2015/openapi3-ts/dist/dsl/openapi-builder31.js.map +1 -0
  96. package/lib-es2015/openapi3-ts/dist/index.js +6 -0
  97. package/lib-es2015/openapi3-ts/dist/index.js.map +1 -0
  98. package/lib-es2015/openapi3-ts/dist/model/oas-common.js +2 -0
  99. package/lib-es2015/openapi3-ts/dist/model/oas-common.js.map +1 -0
  100. package/lib-es2015/openapi3-ts/dist/model/openapi30.js +2 -0
  101. package/lib-es2015/openapi3-ts/dist/model/openapi30.js.map +1 -0
  102. package/lib-es2015/openapi3-ts/dist/model/openapi31.js +2 -0
  103. package/lib-es2015/openapi3-ts/dist/model/openapi31.js.map +1 -0
  104. package/lib-es2015/openapi3-ts/dist/model/server.js +2 -0
  105. package/lib-es2015/openapi3-ts/dist/model/server.js.map +1 -0
  106. package/lib-es2015/openapi3-ts/dist/model/specification-extension.js +2 -0
  107. package/lib-es2015/openapi3-ts/dist/model/specification-extension.js.map +1 -0
  108. package/lib-es2015/openapi3-ts/dist/oas30.js +4 -0
  109. package/lib-es2015/openapi3-ts/dist/oas30.js.map +1 -0
  110. package/lib-es2015/openapi3-ts/dist/oas31.js +4 -0
  111. package/lib-es2015/openapi3-ts/dist/oas31.js.map +1 -0
  112. package/lib-es2015/openapi3-ts/oas30.js +3 -0
  113. package/lib-es2015/openapi3-ts/oas30.js.map +1 -0
  114. package/lib-es2015/openapi3-ts/oas31.js +3 -0
  115. package/lib-es2015/openapi3-ts/oas31.js.map +1 -0
  116. package/lib-types/create/components.d.ts +1 -1
  117. package/lib-types/create/content.d.ts +1 -1
  118. package/lib-types/create/document.d.ts +1 -10
  119. package/lib-types/create/parameters.d.ts +1 -1
  120. package/lib-types/create/paths.d.ts +1 -1
  121. package/lib-types/create/responses.d.ts +1 -1
  122. package/lib-types/create/schema/array.d.ts +1 -1
  123. package/lib-types/create/schema/boolean.d.ts +1 -1
  124. package/lib-types/create/schema/catch.d.ts +1 -1
  125. package/lib-types/create/schema/date.d.ts +1 -1
  126. package/lib-types/create/schema/default.d.ts +1 -1
  127. package/lib-types/create/schema/discriminatedUnion.d.ts +1 -1
  128. package/lib-types/create/schema/enum.d.ts +1 -1
  129. package/lib-types/create/schema/index.d.ts +1 -1
  130. package/lib-types/create/schema/intersection.d.ts +1 -1
  131. package/lib-types/create/schema/literal.d.ts +1 -1
  132. package/lib-types/create/schema/manual.d.ts +1 -1
  133. package/lib-types/create/schema/metadata.d.ts +1 -1
  134. package/lib-types/create/schema/nativeEnum.d.ts +1 -1
  135. package/lib-types/create/schema/null.d.ts +1 -1
  136. package/lib-types/create/schema/nullable.d.ts +1 -1
  137. package/lib-types/create/schema/number.d.ts +1 -1
  138. package/lib-types/create/schema/object.d.ts +1 -1
  139. package/lib-types/create/schema/optional.d.ts +1 -1
  140. package/lib-types/create/schema/pipeline.d.ts +1 -1
  141. package/lib-types/create/schema/preprocess.d.ts +1 -1
  142. package/lib-types/create/schema/record.d.ts +1 -1
  143. package/lib-types/create/schema/refine.d.ts +1 -1
  144. package/lib-types/create/schema/string.d.ts +1 -1
  145. package/lib-types/create/schema/transform.d.ts +1 -1
  146. package/lib-types/create/schema/tuple.d.ts +1 -1
  147. package/lib-types/create/schema/union.d.ts +1 -1
  148. package/lib-types/create/schema/unknown.d.ts +1 -1
  149. package/lib-types/extendZod.d.ts +1 -1
  150. package/lib-types/index.d.ts +1 -0
  151. package/lib-types/openapi3-ts/dist/dsl/openapi-builder30.d.ts +31 -0
  152. package/lib-types/openapi3-ts/dist/dsl/openapi-builder31.d.ts +32 -0
  153. package/lib-types/openapi3-ts/dist/index.d.ts +3 -0
  154. package/lib-types/openapi3-ts/dist/model/oas-common.d.ts +15 -0
  155. package/lib-types/openapi3-ts/dist/model/openapi30.d.ts +291 -0
  156. package/lib-types/openapi3-ts/dist/model/openapi31.d.ts +293 -0
  157. package/lib-types/openapi3-ts/dist/model/server.d.ts +19 -0
  158. package/lib-types/openapi3-ts/dist/model/specification-extension.d.ts +12 -0
  159. package/lib-types/openapi3-ts/dist/oas30.d.ts +4 -0
  160. package/lib-types/openapi3-ts/dist/oas31.d.ts +4 -0
  161. package/lib-types/openapi3-ts/oas30.d.ts +1 -0
  162. package/lib-types/openapi3-ts/oas31.d.ts +1 -0
  163. package/package.json +6 -6
@@ -1,4 +1,4 @@
1
- import { oas31 } from 'openapi3-ts';
2
1
  import { ZodArray } from 'zod';
2
+ import { oas31 } from '../../openapi3-ts/dist';
3
3
  import { SchemaState } from '.';
4
4
  export declare const createArraySchema: (zodArray: ZodArray<any, any>, state: SchemaState) => oas31.SchemaObject;
@@ -1,3 +1,3 @@
1
- import { oas31 } from 'openapi3-ts';
2
1
  import { ZodBoolean } from 'zod';
2
+ import { oas31 } from '../../openapi3-ts/dist';
3
3
  export declare const createBooleanSchema: (_zodBoolean: ZodBoolean) => oas31.SchemaObject;
@@ -1,4 +1,4 @@
1
- import { oas31 } from 'openapi3-ts';
2
1
  import { ZodCatch } from 'zod';
2
+ import { oas31 } from '../../openapi3-ts/dist';
3
3
  import { SchemaState } from '.';
4
4
  export declare const createCatchSchema: (zodCatch: ZodCatch<any>, state: SchemaState) => oas31.SchemaObject | oas31.ReferenceObject;
@@ -1,3 +1,3 @@
1
- import { oas31 } from 'openapi3-ts';
2
1
  import { ZodDate } from 'zod';
2
+ import { oas31 } from '../../openapi3-ts/dist';
3
3
  export declare const createDateSchema: (_zodDate: ZodDate) => oas31.SchemaObject;
@@ -1,4 +1,4 @@
1
- import { oas31 } from 'openapi3-ts';
2
1
  import { ZodDefault } from 'zod';
2
+ import { oas31 } from '../../openapi3-ts/dist';
3
3
  import { SchemaState } from '.';
4
4
  export declare const createDefaultSchema: (zodDefault: ZodDefault<any>, state: SchemaState) => oas31.SchemaObject | oas31.ReferenceObject;
@@ -1,5 +1,5 @@
1
- import { oas31 } from 'openapi3-ts';
2
1
  import { AnyZodObject, ZodDiscriminatedUnion } from 'zod';
2
+ import { oas31 } from '../../openapi3-ts/dist';
3
3
  import { SchemaState } from '.';
4
4
  export declare const createDiscriminatedUnionSchema: (zodDiscriminatedUnion: ZodDiscriminatedUnion<any, any>, state: SchemaState) => oas31.SchemaObject;
5
5
  export declare const mapDiscriminator: (schemas: (oas31.SchemaObject | oas31.ReferenceObject)[], zodObjects: AnyZodObject[], discriminator: unknown) => oas31.SchemaObject['discriminator'];
@@ -1,3 +1,3 @@
1
- import { oas31 } from 'openapi3-ts';
2
1
  import { ZodEnum } from 'zod';
2
+ import { oas31 } from '../../openapi3-ts/dist';
3
3
  export declare const createEnumSchema: (zodEnum: ZodEnum<any>) => oas31.SchemaObject;
@@ -1,5 +1,5 @@
1
- import { oas31 } from 'openapi3-ts';
2
1
  import { ZodType, ZodTypeDef } from 'zod';
2
+ import { oas31 } from '../../openapi3-ts/dist';
3
3
  import { ComponentsObject, CreationType } from '../components';
4
4
  export interface SchemaState {
5
5
  components: ComponentsObject;
@@ -1,4 +1,4 @@
1
- import { oas31 } from 'openapi3-ts';
2
1
  import { ZodIntersection } from 'zod';
2
+ import { oas31 } from '../../openapi3-ts/dist';
3
3
  import { SchemaState } from '.';
4
4
  export declare const createIntersectionSchema: (zodIntersection: ZodIntersection<any, any>, state: SchemaState) => oas31.SchemaObject | oas31.ReferenceObject;
@@ -1,3 +1,3 @@
1
- import { oas31 } from 'openapi3-ts';
2
1
  import { ZodLiteral } from 'zod';
2
+ import { oas31 } from '../../openapi3-ts/dist';
3
3
  export declare const createLiteralSchema: (zodLiteral: ZodLiteral<any>) => oas31.SchemaObject;
@@ -1,3 +1,3 @@
1
- import { oas31 } from 'openapi3-ts';
2
1
  import { ZodType, ZodTypeDef } from 'zod';
2
+ import { oas31 } from '../../openapi3-ts/dist';
3
3
  export declare const createManualTypeSchema: <Output = any, Def extends ZodTypeDef = ZodTypeDef, Input = Output>(zodSchema: ZodType<Output, Def, Input>) => oas31.SchemaObject;
@@ -1,5 +1,5 @@
1
- import { oas31 } from 'openapi3-ts';
2
1
  import { ZodType, ZodTypeDef } from 'zod';
2
+ import { oas31 } from '../../openapi3-ts/dist';
3
3
  import { SchemaState } from '.';
4
4
  export declare const createSchemaWithMetadata: <Output = any, Def extends ZodTypeDef = ZodTypeDef, Input = Output>(zodSchema: ZodType<Output, Def, Input>, state: SchemaState) => oas31.SchemaObject | oas31.ReferenceObject;
5
5
  export declare const enhanceWithMetadata: (schemaOrRef: oas31.SchemaObject | oas31.ReferenceObject, metadata: oas31.SchemaObject | oas31.ReferenceObject) => oas31.SchemaObject | oas31.ReferenceObject;
@@ -1,5 +1,5 @@
1
- import { oas31 } from 'openapi3-ts';
2
1
  import { EnumLike, ZodNativeEnum } from 'zod';
2
+ import { oas31 } from '../../openapi3-ts/dist';
3
3
  import { SchemaState } from '.';
4
4
  export declare const createNativeEnumSchema: <T extends EnumLike>(zodEnum: ZodNativeEnum<T>, state: SchemaState) => oas31.SchemaObject | oas31.ReferenceObject;
5
5
  interface StringsAndNumbers {
@@ -1,3 +1,3 @@
1
- import { oas31 } from 'openapi3-ts';
2
1
  import { ZodNull } from 'zod';
2
+ import { oas31 } from '../../openapi3-ts/dist';
3
3
  export declare const createNullSchema: (_zodNull: ZodNull) => oas31.SchemaObject;
@@ -1,4 +1,4 @@
1
- import { oas31 } from 'openapi3-ts';
2
1
  import { ZodNullable } from 'zod';
2
+ import { oas31 } from '../../openapi3-ts/dist';
3
3
  import { SchemaState } from '.';
4
4
  export declare const createNullableSchema: (zodNullable: ZodNullable<any>, state: SchemaState) => oas31.SchemaObject;
@@ -1,5 +1,5 @@
1
- import { oas30, oas31 } from 'openapi3-ts';
2
1
  import { ZodNumber, ZodNumberCheck } from 'zod';
2
+ import { oas30, oas31 } from '../../openapi3-ts/dist';
3
3
  import { ZodOpenApiVersion } from '../document';
4
4
  import { SchemaState } from '.';
5
5
  export declare const createNumberSchema: (zodNumber: ZodNumber, state: SchemaState) => oas31.SchemaObject;
@@ -1,5 +1,5 @@
1
- import { oas31 } from 'openapi3-ts';
2
1
  import { UnknownKeysParam, ZodObject, ZodRawShape } from 'zod';
2
+ import { oas31 } from '../../openapi3-ts/dist';
3
3
  import { SchemaState } from '.';
4
4
  export declare const createObjectSchema: <T extends ZodRawShape, UnknownKeys extends UnknownKeysParam = UnknownKeysParam>(zodObject: ZodObject<T, UnknownKeys, any, any, any>, state: SchemaState) => oas31.SchemaObject;
5
5
  export declare const createExtendedSchema: (zodObject: ZodObject<any, any, any, any, any>, baseZodObject: ZodObject<any, any, any, any, any>, schemaRef: string, state: SchemaState) => oas31.SchemaObject;
@@ -1,4 +1,4 @@
1
- import { oas31 } from 'openapi3-ts';
2
1
  import { ZodOptional } from 'zod';
2
+ import { oas31 } from '../../openapi3-ts/dist';
3
3
  import { SchemaState } from '.';
4
4
  export declare const createOptionalSchema: (zodOptional: ZodOptional<any>, state: SchemaState) => oas31.SchemaObject | oas31.ReferenceObject;
@@ -1,4 +1,4 @@
1
- import { oas31 } from 'openapi3-ts';
2
1
  import { ZodPipeline } from 'zod';
2
+ import { oas31 } from '../../openapi3-ts/dist';
3
3
  import { SchemaState } from '.';
4
4
  export declare const createPipelineSchema: (zodPipeline: ZodPipeline<any, any>, state: SchemaState) => oas31.SchemaObject | oas31.ReferenceObject;
@@ -1,4 +1,4 @@
1
- import { oas31 } from 'openapi3-ts';
2
1
  import { ZodEffects } from 'zod';
2
+ import { oas31 } from '../../openapi3-ts/dist';
3
3
  import { SchemaState } from '.';
4
4
  export declare const createPreprocessSchema: (zodPreprocess: ZodEffects<any, any, any>, state: SchemaState) => oas31.SchemaObject | oas31.ReferenceObject;
@@ -1,4 +1,4 @@
1
- import { oas31 } from 'openapi3-ts';
2
1
  import { ZodRecord } from 'zod';
2
+ import { oas31 } from '../../openapi3-ts/dist';
3
3
  import { SchemaState } from '.';
4
4
  export declare const createRecordSchema: (zodRecord: ZodRecord<any, any>, state: SchemaState) => oas31.SchemaObject;
@@ -1,4 +1,4 @@
1
- import { oas31 } from 'openapi3-ts';
2
1
  import { ZodEffects } from 'zod';
2
+ import { oas31 } from '../../openapi3-ts/dist';
3
3
  import { SchemaState } from '.';
4
4
  export declare const createRefineSchema: (zodRefine: ZodEffects<any, any, any>, state: SchemaState) => oas31.SchemaObject | oas31.ReferenceObject;
@@ -1,3 +1,3 @@
1
- import { oas31 } from 'openapi3-ts';
2
1
  import { ZodString } from 'zod';
2
+ import { oas31 } from '../../openapi3-ts/dist';
3
3
  export declare const createStringSchema: (zodString: ZodString) => oas31.SchemaObject;
@@ -1,4 +1,4 @@
1
- import { oas31 } from 'openapi3-ts';
2
1
  import { ZodEffects } from 'zod';
2
+ import { oas31 } from '../../openapi3-ts/dist';
3
3
  import { SchemaState } from '.';
4
4
  export declare const createTransformSchema: (zodTransform: ZodEffects<any, any, any>, state: SchemaState) => oas31.SchemaObject | oas31.ReferenceObject;
@@ -1,4 +1,4 @@
1
- import { oas31 } from 'openapi3-ts';
2
1
  import { ZodTuple } from 'zod';
2
+ import { oas31 } from '../../openapi3-ts/dist';
3
3
  import { SchemaState } from '.';
4
4
  export declare const createTupleSchema: (zodTuple: ZodTuple<any, any>, state: SchemaState) => oas31.SchemaObject;
@@ -1,4 +1,4 @@
1
- import { oas31 } from 'openapi3-ts';
2
1
  import { ZodUnion } from 'zod';
2
+ import { oas31 } from '../../openapi3-ts/dist';
3
3
  import { SchemaState } from '.';
4
4
  export declare const createUnionSchema: (zodUnion: ZodUnion<any>, state: SchemaState) => oas31.SchemaObject;
@@ -1,3 +1,3 @@
1
- import { oas31 } from 'openapi3-ts';
2
1
  import { ZodUnknown } from 'zod';
2
+ import { oas31 } from '../../openapi3-ts/dist';
3
3
  export declare const createUnknownSchema: (_zodUnknown: ZodUnknown) => oas31.SchemaObject;
@@ -1,6 +1,6 @@
1
- import { oas30, oas31 } from 'openapi3-ts';
2
1
  import { UnknownKeysParam, ZodDate, ZodObject, ZodRawShape, ZodTypeAny, z } from 'zod';
3
2
  import { CreationType } from './create/components';
3
+ import { oas30, oas31 } from './openapi3-ts/dist';
4
4
  type SchemaObject = oas30.SchemaObject & oas31.SchemaObject;
5
5
  interface ZodOpenApiMetadata<T extends ZodTypeAny, TInferred = z.infer<T>> extends SchemaObject {
6
6
  example?: TInferred;
@@ -1,2 +1,3 @@
1
1
  export * from './create/document';
2
2
  export * from './extendZod';
3
+ export * from './openapi3-ts/dist';
@@ -0,0 +1,31 @@
1
+ import * as oa from '../model/openapi30';
2
+ export declare class OpenApiBuilder {
3
+ rootDoc: oa.OpenAPIObject;
4
+ static create(doc?: oa.OpenAPIObject): OpenApiBuilder;
5
+ constructor(doc?: oa.OpenAPIObject);
6
+ getSpec(): oa.OpenAPIObject;
7
+ getSpecAsJson(replacer?: (key: string, value: unknown) => unknown, space?: string | number): string;
8
+ getSpecAsYaml(): string;
9
+ private static isValidOpenApiVersion;
10
+ addOpenApiVersion(openApiVersion: string): OpenApiBuilder;
11
+ addInfo(info: oa.InfoObject): OpenApiBuilder;
12
+ addContact(contact: oa.ContactObject): OpenApiBuilder;
13
+ addLicense(license: oa.LicenseObject): OpenApiBuilder;
14
+ addTitle(title: string): OpenApiBuilder;
15
+ addDescription(description: string): OpenApiBuilder;
16
+ addTermsOfService(termsOfService: string): OpenApiBuilder;
17
+ addVersion(version: string): OpenApiBuilder;
18
+ addPath(path: string, pathItem: oa.PathItemObject): OpenApiBuilder;
19
+ addSchema(name: string, schema: oa.SchemaObject | oa.ReferenceObject): OpenApiBuilder;
20
+ addResponse(name: string, response: oa.ResponseObject | oa.ReferenceObject): OpenApiBuilder;
21
+ addParameter(name: string, parameter: oa.ParameterObject | oa.ReferenceObject): OpenApiBuilder;
22
+ addExample(name: string, example: oa.ExampleObject | oa.ReferenceObject): OpenApiBuilder;
23
+ addRequestBody(name: string, reqBody: oa.RequestBodyObject | oa.ReferenceObject): OpenApiBuilder;
24
+ addHeader(name: string, header: oa.HeaderObject | oa.ReferenceObject): OpenApiBuilder;
25
+ addSecurityScheme(name: string, secScheme: oa.SecuritySchemeObject | oa.ReferenceObject): OpenApiBuilder;
26
+ addLink(name: string, link: oa.LinkObject | oa.ReferenceObject): OpenApiBuilder;
27
+ addCallback(name: string, callback: oa.CallbackObject | oa.ReferenceObject): OpenApiBuilder;
28
+ addServer(server: oa.ServerObject): OpenApiBuilder;
29
+ addTag(tag: oa.TagObject): OpenApiBuilder;
30
+ addExternalDocs(extDoc: oa.ExternalDocumentationObject): OpenApiBuilder;
31
+ }
@@ -0,0 +1,32 @@
1
+ import * as oa from '../model/openapi31';
2
+ export declare class OpenApiBuilder {
3
+ rootDoc: oa.OpenAPIObject;
4
+ static create(doc?: oa.OpenAPIObject): OpenApiBuilder;
5
+ constructor(doc?: oa.OpenAPIObject);
6
+ getSpec(): oa.OpenAPIObject;
7
+ getSpecAsJson(replacer?: (key: string, value: unknown) => unknown, space?: string | number): string;
8
+ getSpecAsYaml(): string;
9
+ private static isValidOpenApiVersion;
10
+ addOpenApiVersion(openApiVersion: string): OpenApiBuilder;
11
+ addInfo(info: oa.InfoObject): OpenApiBuilder;
12
+ addContact(contact: oa.ContactObject): OpenApiBuilder;
13
+ addLicense(license: oa.LicenseObject): OpenApiBuilder;
14
+ addTitle(title: string): OpenApiBuilder;
15
+ addDescription(description: string): OpenApiBuilder;
16
+ addTermsOfService(termsOfService: string): OpenApiBuilder;
17
+ addVersion(version: string): OpenApiBuilder;
18
+ addPath(path: string, pathItem: oa.PathItemObject): OpenApiBuilder;
19
+ addSchema(name: string, schema: oa.SchemaObject | oa.ReferenceObject): OpenApiBuilder;
20
+ addResponse(name: string, response: oa.ResponseObject | oa.ReferenceObject): OpenApiBuilder;
21
+ addParameter(name: string, parameter: oa.ParameterObject | oa.ReferenceObject): OpenApiBuilder;
22
+ addExample(name: string, example: oa.ExampleObject | oa.ReferenceObject): OpenApiBuilder;
23
+ addRequestBody(name: string, reqBody: oa.RequestBodyObject | oa.ReferenceObject): OpenApiBuilder;
24
+ addHeader(name: string, header: oa.HeaderObject | oa.ReferenceObject): OpenApiBuilder;
25
+ addSecurityScheme(name: string, secScheme: oa.SecuritySchemeObject | oa.ReferenceObject): OpenApiBuilder;
26
+ addLink(name: string, link: oa.LinkObject | oa.ReferenceObject): OpenApiBuilder;
27
+ addCallback(name: string, callback: oa.CallbackObject | oa.ReferenceObject): OpenApiBuilder;
28
+ addServer(server: oa.ServerObject): OpenApiBuilder;
29
+ addTag(tag: oa.TagObject): OpenApiBuilder;
30
+ addExternalDocs(extDoc: oa.ExternalDocumentationObject): OpenApiBuilder;
31
+ addWebhook(webhook: string, webhookItem: oa.PathItemObject): OpenApiBuilder;
32
+ }
@@ -0,0 +1,3 @@
1
+ export * as oas30 from "./oas30";
2
+ export * as oas31 from "./oas31";
3
+ export { Server, ServerVariable } from "./model/server";
@@ -0,0 +1,15 @@
1
+ import { ISpecificationExtension } from './specification-extension';
2
+ export interface ServerObject extends ISpecificationExtension {
3
+ url: string;
4
+ description?: string;
5
+ variables?: {
6
+ [v: string]: ServerVariableObject;
7
+ };
8
+ }
9
+ export interface ServerVariableObject extends ISpecificationExtension {
10
+ enum?: string[] | boolean[] | number[];
11
+ default: string | boolean | number;
12
+ description?: string;
13
+ }
14
+ export declare function getExtension(obj: ISpecificationExtension | undefined, extensionName: string): any;
15
+ export declare function addExtension(obj: ISpecificationExtension | undefined, extensionName: string, extension: any): void;
@@ -0,0 +1,291 @@
1
+ import { ServerObject } from './oas-common';
2
+ import { ISpecificationExtension } from './specification-extension';
3
+ export * from './oas-common';
4
+ export type { ISpecificationExtension, SpecificationExtension } from './specification-extension';
5
+ export 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
+ export interface InfoObject extends ISpecificationExtension {
16
+ title: string;
17
+ description?: string;
18
+ termsOfService?: string;
19
+ contact?: ContactObject;
20
+ license?: LicenseObject;
21
+ version: string;
22
+ }
23
+ export interface ContactObject extends ISpecificationExtension {
24
+ name?: string;
25
+ url?: string;
26
+ email?: string;
27
+ }
28
+ export interface LicenseObject extends ISpecificationExtension {
29
+ name: string;
30
+ url?: string;
31
+ }
32
+ export 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
+ export interface PathsObject extends ISpecificationExtension {
62
+ [path: string]: PathItemObject;
63
+ }
64
+ export type PathObject = PathsObject;
65
+ export declare function getPath(pathsObject: PathsObject, path: string): PathItemObject | undefined;
66
+ export interface PathItemObject extends ISpecificationExtension {
67
+ $ref?: string;
68
+ summary?: string;
69
+ description?: string;
70
+ get?: OperationObject;
71
+ put?: OperationObject;
72
+ post?: OperationObject;
73
+ delete?: OperationObject;
74
+ options?: OperationObject;
75
+ head?: OperationObject;
76
+ patch?: OperationObject;
77
+ trace?: OperationObject;
78
+ servers?: ServerObject[];
79
+ parameters?: (ParameterObject | ReferenceObject)[];
80
+ }
81
+ export interface OperationObject extends ISpecificationExtension {
82
+ tags?: string[];
83
+ summary?: string;
84
+ description?: string;
85
+ externalDocs?: ExternalDocumentationObject;
86
+ operationId?: string;
87
+ parameters?: (ParameterObject | ReferenceObject)[];
88
+ requestBody?: RequestBodyObject | ReferenceObject;
89
+ responses: ResponsesObject;
90
+ callbacks?: CallbacksObject;
91
+ deprecated?: boolean;
92
+ security?: SecurityRequirementObject[];
93
+ servers?: ServerObject[];
94
+ }
95
+ export interface ExternalDocumentationObject extends ISpecificationExtension {
96
+ description?: string;
97
+ url: string;
98
+ }
99
+ export type ParameterLocation = 'query' | 'header' | 'path' | 'cookie';
100
+ export type ParameterStyle = 'matrix' | 'label' | 'form' | 'simple' | 'spaceDelimited' | 'pipeDelimited' | 'deepObject';
101
+ export interface BaseParameterObject extends ISpecificationExtension {
102
+ description?: string;
103
+ required?: boolean;
104
+ deprecated?: boolean;
105
+ allowEmptyValue?: boolean;
106
+ style?: ParameterStyle;
107
+ explode?: boolean;
108
+ allowReserved?: boolean;
109
+ schema?: SchemaObject | ReferenceObject;
110
+ examples?: {
111
+ [param: string]: ExampleObject | ReferenceObject;
112
+ };
113
+ example?: any;
114
+ content?: ContentObject;
115
+ }
116
+ export interface ParameterObject extends BaseParameterObject {
117
+ name: string;
118
+ in: ParameterLocation;
119
+ }
120
+ export interface RequestBodyObject extends ISpecificationExtension {
121
+ description?: string;
122
+ content: ContentObject;
123
+ required?: boolean;
124
+ }
125
+ export interface ContentObject {
126
+ [mediatype: string]: MediaTypeObject;
127
+ }
128
+ export interface MediaTypeObject extends ISpecificationExtension {
129
+ schema?: SchemaObject | ReferenceObject;
130
+ examples?: ExamplesObject;
131
+ example?: any;
132
+ encoding?: EncodingObject;
133
+ }
134
+ export interface EncodingObject extends ISpecificationExtension {
135
+ [property: string]: EncodingPropertyObject | any;
136
+ }
137
+ export interface EncodingPropertyObject {
138
+ contentType?: string;
139
+ headers?: {
140
+ [key: string]: HeaderObject | ReferenceObject;
141
+ };
142
+ style?: string;
143
+ explode?: boolean;
144
+ allowReserved?: boolean;
145
+ [key: string]: any;
146
+ }
147
+ export interface ResponsesObject extends ISpecificationExtension {
148
+ default?: ResponseObject | ReferenceObject;
149
+ [statuscode: string]: ResponseObject | ReferenceObject | any;
150
+ }
151
+ export interface ResponseObject extends ISpecificationExtension {
152
+ description: string;
153
+ headers?: HeadersObject;
154
+ content?: ContentObject;
155
+ links?: LinksObject;
156
+ }
157
+ export interface CallbacksObject extends ISpecificationExtension {
158
+ [name: string]: CallbackObject | ReferenceObject | any;
159
+ }
160
+ export interface CallbackObject extends ISpecificationExtension {
161
+ [name: string]: PathItemObject | any;
162
+ }
163
+ export interface HeadersObject {
164
+ [name: string]: HeaderObject | ReferenceObject;
165
+ }
166
+ export interface ExampleObject {
167
+ summary?: string;
168
+ description?: string;
169
+ value?: any;
170
+ externalValue?: string;
171
+ [property: string]: any;
172
+ }
173
+ export interface LinksObject {
174
+ [name: string]: LinkObject | ReferenceObject;
175
+ }
176
+ export interface LinkObject extends ISpecificationExtension {
177
+ operationRef?: string;
178
+ operationId?: string;
179
+ parameters?: LinkParametersObject;
180
+ requestBody?: any | string;
181
+ description?: string;
182
+ server?: ServerObject;
183
+ [property: string]: any;
184
+ }
185
+ export interface LinkParametersObject {
186
+ [name: string]: any | string;
187
+ }
188
+ export interface HeaderObject extends BaseParameterObject {
189
+ $ref?: string;
190
+ }
191
+ export interface TagObject extends ISpecificationExtension {
192
+ name: string;
193
+ description?: string;
194
+ externalDocs?: ExternalDocumentationObject;
195
+ [extension: string]: any;
196
+ }
197
+ export interface ExamplesObject {
198
+ [name: string]: ExampleObject | ReferenceObject;
199
+ }
200
+ export interface ReferenceObject {
201
+ $ref: string;
202
+ }
203
+ export declare function isReferenceObject(obj: any): obj is ReferenceObject;
204
+ export type SchemaObjectType = 'integer' | 'number' | 'string' | 'boolean' | 'object' | 'null' | 'array';
205
+ export type SchemaObjectFormat = 'int32' | 'int64' | 'float' | 'double' | 'byte' | 'binary' | 'date' | 'date-time' | 'password' | string;
206
+ export interface SchemaObject extends ISpecificationExtension {
207
+ nullable?: boolean;
208
+ discriminator?: DiscriminatorObject;
209
+ readOnly?: boolean;
210
+ writeOnly?: boolean;
211
+ xml?: XmlObject;
212
+ externalDocs?: ExternalDocumentationObject;
213
+ example?: any;
214
+ examples?: any[];
215
+ deprecated?: boolean;
216
+ type?: SchemaObjectType | SchemaObjectType[];
217
+ format?: SchemaObjectFormat;
218
+ allOf?: (SchemaObject | ReferenceObject)[];
219
+ oneOf?: (SchemaObject | ReferenceObject)[];
220
+ anyOf?: (SchemaObject | ReferenceObject)[];
221
+ not?: SchemaObject | ReferenceObject;
222
+ items?: SchemaObject | ReferenceObject;
223
+ properties?: {
224
+ [propertyName: string]: SchemaObject | ReferenceObject;
225
+ };
226
+ additionalProperties?: SchemaObject | ReferenceObject | boolean;
227
+ description?: string;
228
+ default?: any;
229
+ title?: string;
230
+ multipleOf?: number;
231
+ maximum?: number;
232
+ exclusiveMaximum?: boolean;
233
+ minimum?: number;
234
+ exclusiveMinimum?: boolean;
235
+ maxLength?: number;
236
+ minLength?: number;
237
+ pattern?: string;
238
+ maxItems?: number;
239
+ minItems?: number;
240
+ uniqueItems?: boolean;
241
+ maxProperties?: number;
242
+ minProperties?: number;
243
+ required?: string[];
244
+ enum?: any[];
245
+ }
246
+ export declare function isSchemaObject(schema: SchemaObject | ReferenceObject): schema is SchemaObject;
247
+ export interface SchemasObject {
248
+ [schema: string]: SchemaObject;
249
+ }
250
+ export interface DiscriminatorObject {
251
+ propertyName: string;
252
+ mapping?: {
253
+ [key: string]: string;
254
+ };
255
+ }
256
+ export interface XmlObject extends ISpecificationExtension {
257
+ name?: string;
258
+ namespace?: string;
259
+ prefix?: string;
260
+ attribute?: boolean;
261
+ wrapped?: boolean;
262
+ }
263
+ export type SecuritySchemeType = 'apiKey' | 'http' | 'oauth2' | 'openIdConnect';
264
+ export interface SecuritySchemeObject extends ISpecificationExtension {
265
+ type: SecuritySchemeType;
266
+ description?: string;
267
+ name?: string;
268
+ in?: string;
269
+ scheme?: string;
270
+ bearerFormat?: string;
271
+ flows?: OAuthFlowsObject;
272
+ openIdConnectUrl?: string;
273
+ }
274
+ export interface OAuthFlowsObject extends ISpecificationExtension {
275
+ implicit?: OAuthFlowObject;
276
+ password?: OAuthFlowObject;
277
+ clientCredentials?: OAuthFlowObject;
278
+ authorizationCode?: OAuthFlowObject;
279
+ }
280
+ export interface OAuthFlowObject extends ISpecificationExtension {
281
+ authorizationUrl?: string;
282
+ tokenUrl?: string;
283
+ refreshUrl?: string;
284
+ scopes: ScopesObject;
285
+ }
286
+ export interface ScopesObject extends ISpecificationExtension {
287
+ [scope: string]: any;
288
+ }
289
+ export interface SecurityRequirementObject {
290
+ [name: string]: string[];
291
+ }