@byyuurin/nitro-openapi 0.0.2 → 0.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +7 -0
- package/dist/index.d.ts +1 -94
- package/dist/index.mjs +12 -147
- package/package.json +6 -5
- package/dist/index.d.mts +0 -94
package/dist/index.cjs
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
module.exports = require("C:/Projects/nitro-openapi/node_modules/.pnpm/jiti@1.21.0/node_modules/jiti/lib/index.js")(null, {
|
|
2
|
+
"esmResolve": true,
|
|
3
|
+
"interopDefault": true,
|
|
4
|
+
"alias": {
|
|
5
|
+
"@byyuurin/nitro-openapi": "C:/Projects/nitro-openapi"
|
|
6
|
+
}
|
|
7
|
+
})("C:/Projects/nitro-openapi/src/index.ts")
|
package/dist/index.d.ts
CHANGED
|
@@ -1,94 +1 @@
|
|
|
1
|
-
|
|
2
|
-
import { SchemaObject, ReferenceObject, PathItemObject, OperationObject, ParameterObject, RequestBodyObject, MediaTypeObject, SecurityRequirementObject, OpenAPI3 } from 'openapi-typescript';
|
|
3
|
-
|
|
4
|
-
type ReferenceRef<T extends OpenApiRegisterConfig> = T extends {
|
|
5
|
-
components: infer C;
|
|
6
|
-
} ? {
|
|
7
|
-
[K in keyof C]: C[K] extends object ? `#/components/${K & string}/${keyof C[K] & string}` : never;
|
|
8
|
-
}[keyof C] : string;
|
|
9
|
-
type SchemaExtended<T extends string> = SchemaObject | ({
|
|
10
|
-
type: 'array';
|
|
11
|
-
prefixItems?: MaybeReference<SchemaExtended<T>, T>[];
|
|
12
|
-
items?: MaybeReference<SchemaExtended<T>, T> | MaybeReference<SchemaExtended<T>, T>[];
|
|
13
|
-
enum?: MaybeReference<SchemaExtended<T>, T>[];
|
|
14
|
-
description?: string;
|
|
15
|
-
} | {
|
|
16
|
-
type: 'object' | ['object', 'null'];
|
|
17
|
-
properties?: {
|
|
18
|
-
[name: string]: MaybeReference<SchemaExtended<T>, T>;
|
|
19
|
-
};
|
|
20
|
-
allOf?: MaybeReference<SchemaExtended<T>, T>[];
|
|
21
|
-
anyOf?: MaybeReference<SchemaExtended<T>, T>[];
|
|
22
|
-
enum?: MaybeReference<SchemaExtended<T>, T>[];
|
|
23
|
-
description?: string;
|
|
24
|
-
});
|
|
25
|
-
type ReferenceExtended<T extends string> = Omit<ReferenceObject, '$ref'> & {
|
|
26
|
-
$ref: T;
|
|
27
|
-
};
|
|
28
|
-
type MaybeReference<T, R extends string = string> = T | ReferenceExtended<R>;
|
|
29
|
-
type MaybeValueOrObject<ExampleT, ContentT> = ExampleT extends number | string | boolean ? ContentT : ExampleT extends (infer ArrayT)[] ? ContentT | MaybeValueOrObject<ArrayT, ContentT> : ExampleT extends Record<infer PropertyT, unknown> ? {
|
|
30
|
-
[key in PropertyT]?: ContentT;
|
|
31
|
-
} | ContentT : ContentT;
|
|
32
|
-
type PathOperations = Omit<PathItemObject, 'servers' | 'parameters' | `x-${string}`>;
|
|
33
|
-
type PathOperationMethod = keyof PathOperations;
|
|
34
|
-
type PathOperationItem<T extends OpenApiRegisterConfig> = Omit<OperationObject, 'tags' | 'parameters' | 'requestBody' | 'security'> & {
|
|
35
|
-
tags?: T extends {
|
|
36
|
-
tags: infer Tags;
|
|
37
|
-
} ? Tags extends ({
|
|
38
|
-
name: infer Tag;
|
|
39
|
-
})[] ? Tag[] | string[] : string[] : string[];
|
|
40
|
-
parameters?: MaybeReference<ParameterObject & {
|
|
41
|
-
schema?: SchemaExtended<ReferenceRef<T>>;
|
|
42
|
-
}, ReferenceRef<T>>[];
|
|
43
|
-
requestBody?: MaybeReference<RequestBodyObject & {
|
|
44
|
-
content: {
|
|
45
|
-
[contentType: string]: MaybeReference<MediaTypeObject, ReferenceRef<T>>;
|
|
46
|
-
};
|
|
47
|
-
}, ReferenceRef<T>>;
|
|
48
|
-
security?: T extends {
|
|
49
|
-
components: infer C;
|
|
50
|
-
} ? C extends {
|
|
51
|
-
securitySchemes: infer S;
|
|
52
|
-
} ? {
|
|
53
|
-
[SecurityName in keyof S]?: string[];
|
|
54
|
-
}[] : SecurityRequirementObject[] : SecurityRequirementObject[];
|
|
55
|
-
};
|
|
56
|
-
type OpenApiRegisterConfig = Pick<Partial<OpenAPI3>, 'paths' | 'components' | 'security' | 'servers' | 'info' | 'tags'>;
|
|
57
|
-
|
|
58
|
-
declare function createOpenApiRegister<T extends OpenApiRegisterConfig = OpenApiRegisterConfig>(defaults: T): {
|
|
59
|
-
configExtends: T;
|
|
60
|
-
register: (route: string, routeOperation: MaybeReference<PathOperationItem<T>, ReferenceRef<T>>, method?: keyof PathOperations) => void;
|
|
61
|
-
merge: (config: Partial<OpenAPI3>) => {
|
|
62
|
-
info: openapi_typescript.InfoObject | undefined;
|
|
63
|
-
};
|
|
64
|
-
};
|
|
65
|
-
|
|
66
|
-
type SchemaObjectOptions = SchemaObject & {
|
|
67
|
-
allowExample?: boolean;
|
|
68
|
-
};
|
|
69
|
-
declare function resolveSchemaObject(value: any, options?: SchemaObjectOptions): SchemaObject;
|
|
70
|
-
type ExampleDescription<ExampleT> = MaybeValueOrObject<ExampleT, string>;
|
|
71
|
-
declare function toExampleSchema<T = any>(example: T, description?: ExampleDescription<T>, options?: SchemaObject): {
|
|
72
|
-
[key: `x-${string}`]: any;
|
|
73
|
-
discriminator?: openapi_typescript.DiscriminatorObject | undefined;
|
|
74
|
-
xml?: openapi_typescript.XMLObject | undefined;
|
|
75
|
-
externalDocs?: openapi_typescript.ExternalDocumentationObject | undefined;
|
|
76
|
-
example?: any;
|
|
77
|
-
title?: string | undefined;
|
|
78
|
-
description?: string | undefined;
|
|
79
|
-
$comment?: string | undefined;
|
|
80
|
-
deprecated?: boolean | undefined;
|
|
81
|
-
readOnly?: boolean | undefined;
|
|
82
|
-
writeOnly?: boolean | undefined;
|
|
83
|
-
enum?: unknown[] | undefined;
|
|
84
|
-
const?: unknown;
|
|
85
|
-
default?: unknown;
|
|
86
|
-
format?: string | undefined;
|
|
87
|
-
nullable?: boolean | undefined;
|
|
88
|
-
oneOf?: (SchemaObject | openapi_typescript.ReferenceObject)[] | undefined;
|
|
89
|
-
allOf?: (SchemaObject | openapi_typescript.ReferenceObject)[] | undefined;
|
|
90
|
-
anyOf?: (SchemaObject | openapi_typescript.ReferenceObject)[] | undefined;
|
|
91
|
-
required?: string[] | undefined;
|
|
92
|
-
};
|
|
93
|
-
|
|
94
|
-
export { type MaybeReference, type MaybeValueOrObject, type OpenApiRegisterConfig, type PathOperationItem, type PathOperationMethod, type PathOperations, type ReferenceExtended, type ReferenceRef, type SchemaExtended, createOpenApiRegister, resolveSchemaObject, toExampleSchema };
|
|
1
|
+
export * from "C:/Projects/nitro-openapi/src/index";
|
package/dist/index.mjs
CHANGED
|
@@ -1,149 +1,14 @@
|
|
|
1
|
-
import
|
|
1
|
+
import jiti from "file:///C:/Projects/nitro-openapi/node_modules/.pnpm/jiti@1.21.0/node_modules/jiti/lib/index.js";
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
}
|
|
12
|
-
function merge(config) {
|
|
13
|
-
return mergeConfig(
|
|
14
|
-
config,
|
|
15
|
-
{
|
|
16
|
-
paths,
|
|
17
|
-
components,
|
|
18
|
-
security,
|
|
19
|
-
servers,
|
|
20
|
-
info,
|
|
21
|
-
tags
|
|
22
|
-
}
|
|
23
|
-
);
|
|
24
|
-
}
|
|
25
|
-
return {
|
|
26
|
-
configExtends: {
|
|
27
|
-
paths,
|
|
28
|
-
components,
|
|
29
|
-
security,
|
|
30
|
-
servers,
|
|
31
|
-
info,
|
|
32
|
-
tags
|
|
33
|
-
},
|
|
34
|
-
register,
|
|
35
|
-
merge
|
|
36
|
-
};
|
|
37
|
-
}
|
|
38
|
-
function normalizeRoute(_route) {
|
|
39
|
-
let anonymousCtr = 0;
|
|
40
|
-
const route = _route.replace(/:(\w+)/g, (_, name) => `{${name}}`).replace(/\/(\*)\//g, () => `/{param${++anonymousCtr}}/`).replace(/\*\*{/, "{").replace(/\/(\*\*)$/g, () => `/{*param${++anonymousCtr}}`);
|
|
41
|
-
return route;
|
|
42
|
-
}
|
|
43
|
-
function mergeConfig(defaults, appends) {
|
|
44
|
-
const methods = /* @__PURE__ */ new Set(["delete", "get", "head", "options", "patch", "post", "put", "trace"]);
|
|
45
|
-
const { info } = appends;
|
|
46
|
-
const { paths = {} } = defaults;
|
|
47
|
-
for (const path in paths) {
|
|
48
|
-
const operations = paths[path];
|
|
49
|
-
if ("$ref" in operations)
|
|
50
|
-
continue;
|
|
51
|
-
paths[path] = Object.fromEntries(Object.entries(operations).map(([key, obj]) => {
|
|
52
|
-
if (methods.has(key))
|
|
53
|
-
return [key, normalizeSchema(obj)];
|
|
54
|
-
return [key, obj];
|
|
55
|
-
}));
|
|
56
|
-
}
|
|
57
|
-
return defu({ info }, defaults, appends);
|
|
58
|
-
}
|
|
59
|
-
function normalizeSchema(obj) {
|
|
60
|
-
if ("$ref" in obj)
|
|
61
|
-
return obj;
|
|
62
|
-
const { parameters = [] } = obj;
|
|
63
|
-
obj.parameters = parameters.map((p) => {
|
|
64
|
-
if ("$ref" in p)
|
|
65
|
-
return p;
|
|
66
|
-
return defu(p, {
|
|
67
|
-
schema: { type: "string" }
|
|
68
|
-
});
|
|
69
|
-
});
|
|
70
|
-
return obj;
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
function resolveSchemaObject(value, options = {}) {
|
|
74
|
-
const { allowExample = true, ...defaults } = options || {};
|
|
75
|
-
const resolveResult = (obj, example) => {
|
|
76
|
-
if (allowExample && example != null)
|
|
77
|
-
obj.example = example;
|
|
78
|
-
return { ...defaults, ...obj };
|
|
79
|
-
};
|
|
80
|
-
if (Array.isArray(value)) {
|
|
81
|
-
return resolveResult(
|
|
82
|
-
{
|
|
83
|
-
type: "array",
|
|
84
|
-
items: resolveSchemaObject(value[0], { allowExample: false })
|
|
85
|
-
},
|
|
86
|
-
value
|
|
87
|
-
);
|
|
88
|
-
}
|
|
89
|
-
const _type = typeof value;
|
|
90
|
-
switch (_type) {
|
|
91
|
-
case "function":
|
|
92
|
-
case "symbol":
|
|
93
|
-
case "undefined":
|
|
94
|
-
return { type: "null" };
|
|
95
|
-
case "object":
|
|
96
|
-
return resolveResult(
|
|
97
|
-
{
|
|
98
|
-
type: "object",
|
|
99
|
-
properties: Object.fromEntries(Object.entries(value).map(([k, v]) => [
|
|
100
|
-
k,
|
|
101
|
-
resolveSchemaObject(v, {
|
|
102
|
-
allowExample: false
|
|
103
|
-
})
|
|
104
|
-
]))
|
|
105
|
-
},
|
|
106
|
-
value
|
|
107
|
-
);
|
|
108
|
-
case "bigint":
|
|
109
|
-
return resolveResult(
|
|
110
|
-
{ type: "integer" },
|
|
111
|
-
value
|
|
112
|
-
);
|
|
113
|
-
case "string":
|
|
114
|
-
return resolveResult(
|
|
115
|
-
{ type: "string" },
|
|
116
|
-
value || null
|
|
117
|
-
);
|
|
118
|
-
default:
|
|
119
|
-
return resolveResult(
|
|
120
|
-
{ type: _type },
|
|
121
|
-
value
|
|
122
|
-
);
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
function toExampleSchema(example, description, options) {
|
|
126
|
-
if (typeof example !== "object") {
|
|
127
|
-
return resolveSchemaObject(
|
|
128
|
-
example,
|
|
129
|
-
typeof description === "string" ? { ...options, description } : {}
|
|
130
|
-
);
|
|
131
|
-
}
|
|
132
|
-
if (Array.isArray(example)) {
|
|
133
|
-
if (typeof description === "string")
|
|
134
|
-
return resolveSchemaObject(example, { ...options, description });
|
|
135
|
-
const schema2 = resolveSchemaObject(example, { allowExample: false });
|
|
136
|
-
schema2.items = toExampleSchema(example[0], description, options);
|
|
137
|
-
return schema2;
|
|
138
|
-
}
|
|
139
|
-
if (typeof description === "string")
|
|
140
|
-
return resolveSchemaObject(example, { ...options, description });
|
|
141
|
-
const schema = resolveSchemaObject(example, options);
|
|
142
|
-
schema.properties = Object.fromEntries(Object.entries(schema.properties).map(([p, item]) => [p, {
|
|
143
|
-
...item,
|
|
144
|
-
...typeof description === "object" ? { description: description?.[p] } : {}
|
|
145
|
-
}]));
|
|
146
|
-
return schema;
|
|
147
|
-
}
|
|
3
|
+
/** @type {import("C:/Projects/nitro-openapi/src/index")} */
|
|
4
|
+
const _module = jiti(null, {
|
|
5
|
+
"esmResolve": true,
|
|
6
|
+
"interopDefault": true,
|
|
7
|
+
"alias": {
|
|
8
|
+
"@byyuurin/nitro-openapi": "C:/Projects/nitro-openapi"
|
|
9
|
+
}
|
|
10
|
+
})("C:/Projects/nitro-openapi/src/index.ts");
|
|
148
11
|
|
|
149
|
-
export
|
|
12
|
+
export const createOpenApiRegister = _module.createOpenApiRegister;
|
|
13
|
+
export const resolveSchemaObject = _module.resolveSchemaObject;
|
|
14
|
+
export const toExampleSchema = _module.toExampleSchema;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@byyuurin/nitro-openapi",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.4",
|
|
5
5
|
"private": false,
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"homepage": "https://github.com/byyuurin/nitro-openapi",
|
|
@@ -12,7 +12,8 @@
|
|
|
12
12
|
"exports": {
|
|
13
13
|
".": {
|
|
14
14
|
"types": "./dist/index.d.ts",
|
|
15
|
-
"import": "./dist/index.mjs"
|
|
15
|
+
"import": "./dist/index.mjs",
|
|
16
|
+
"require": "./dist/index.cjs"
|
|
16
17
|
}
|
|
17
18
|
},
|
|
18
19
|
"main": "./dist/index.mjs",
|
|
@@ -26,11 +27,11 @@
|
|
|
26
27
|
"openapi-typescript": "^6.7.4"
|
|
27
28
|
},
|
|
28
29
|
"devDependencies": {
|
|
29
|
-
"@byyuurin/eslint-config": "^1.0.
|
|
30
|
-
"bumpp": "^9.3.
|
|
30
|
+
"@byyuurin/eslint-config": "^1.0.2",
|
|
31
|
+
"bumpp": "^9.3.1",
|
|
31
32
|
"nitropack": "latest",
|
|
32
33
|
"unbuild": "^2.0.0",
|
|
33
|
-
"vitest": "^1.3.
|
|
34
|
+
"vitest": "^1.3.1"
|
|
34
35
|
},
|
|
35
36
|
"resolutions": {
|
|
36
37
|
"@byyuurin/nitro-openapi": "link:."
|
package/dist/index.d.mts
DELETED
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
import * as openapi_typescript from 'openapi-typescript';
|
|
2
|
-
import { SchemaObject, ReferenceObject, PathItemObject, OperationObject, ParameterObject, RequestBodyObject, MediaTypeObject, SecurityRequirementObject, OpenAPI3 } from 'openapi-typescript';
|
|
3
|
-
|
|
4
|
-
type ReferenceRef<T extends OpenApiRegisterConfig> = T extends {
|
|
5
|
-
components: infer C;
|
|
6
|
-
} ? {
|
|
7
|
-
[K in keyof C]: C[K] extends object ? `#/components/${K & string}/${keyof C[K] & string}` : never;
|
|
8
|
-
}[keyof C] : string;
|
|
9
|
-
type SchemaExtended<T extends string> = SchemaObject | ({
|
|
10
|
-
type: 'array';
|
|
11
|
-
prefixItems?: MaybeReference<SchemaExtended<T>, T>[];
|
|
12
|
-
items?: MaybeReference<SchemaExtended<T>, T> | MaybeReference<SchemaExtended<T>, T>[];
|
|
13
|
-
enum?: MaybeReference<SchemaExtended<T>, T>[];
|
|
14
|
-
description?: string;
|
|
15
|
-
} | {
|
|
16
|
-
type: 'object' | ['object', 'null'];
|
|
17
|
-
properties?: {
|
|
18
|
-
[name: string]: MaybeReference<SchemaExtended<T>, T>;
|
|
19
|
-
};
|
|
20
|
-
allOf?: MaybeReference<SchemaExtended<T>, T>[];
|
|
21
|
-
anyOf?: MaybeReference<SchemaExtended<T>, T>[];
|
|
22
|
-
enum?: MaybeReference<SchemaExtended<T>, T>[];
|
|
23
|
-
description?: string;
|
|
24
|
-
});
|
|
25
|
-
type ReferenceExtended<T extends string> = Omit<ReferenceObject, '$ref'> & {
|
|
26
|
-
$ref: T;
|
|
27
|
-
};
|
|
28
|
-
type MaybeReference<T, R extends string = string> = T | ReferenceExtended<R>;
|
|
29
|
-
type MaybeValueOrObject<ExampleT, ContentT> = ExampleT extends number | string | boolean ? ContentT : ExampleT extends (infer ArrayT)[] ? ContentT | MaybeValueOrObject<ArrayT, ContentT> : ExampleT extends Record<infer PropertyT, unknown> ? {
|
|
30
|
-
[key in PropertyT]?: ContentT;
|
|
31
|
-
} | ContentT : ContentT;
|
|
32
|
-
type PathOperations = Omit<PathItemObject, 'servers' | 'parameters' | `x-${string}`>;
|
|
33
|
-
type PathOperationMethod = keyof PathOperations;
|
|
34
|
-
type PathOperationItem<T extends OpenApiRegisterConfig> = Omit<OperationObject, 'tags' | 'parameters' | 'requestBody' | 'security'> & {
|
|
35
|
-
tags?: T extends {
|
|
36
|
-
tags: infer Tags;
|
|
37
|
-
} ? Tags extends ({
|
|
38
|
-
name: infer Tag;
|
|
39
|
-
})[] ? Tag[] | string[] : string[] : string[];
|
|
40
|
-
parameters?: MaybeReference<ParameterObject & {
|
|
41
|
-
schema?: SchemaExtended<ReferenceRef<T>>;
|
|
42
|
-
}, ReferenceRef<T>>[];
|
|
43
|
-
requestBody?: MaybeReference<RequestBodyObject & {
|
|
44
|
-
content: {
|
|
45
|
-
[contentType: string]: MaybeReference<MediaTypeObject, ReferenceRef<T>>;
|
|
46
|
-
};
|
|
47
|
-
}, ReferenceRef<T>>;
|
|
48
|
-
security?: T extends {
|
|
49
|
-
components: infer C;
|
|
50
|
-
} ? C extends {
|
|
51
|
-
securitySchemes: infer S;
|
|
52
|
-
} ? {
|
|
53
|
-
[SecurityName in keyof S]?: string[];
|
|
54
|
-
}[] : SecurityRequirementObject[] : SecurityRequirementObject[];
|
|
55
|
-
};
|
|
56
|
-
type OpenApiRegisterConfig = Pick<Partial<OpenAPI3>, 'paths' | 'components' | 'security' | 'servers' | 'info' | 'tags'>;
|
|
57
|
-
|
|
58
|
-
declare function createOpenApiRegister<T extends OpenApiRegisterConfig = OpenApiRegisterConfig>(defaults: T): {
|
|
59
|
-
configExtends: T;
|
|
60
|
-
register: (route: string, routeOperation: MaybeReference<PathOperationItem<T>, ReferenceRef<T>>, method?: keyof PathOperations) => void;
|
|
61
|
-
merge: (config: Partial<OpenAPI3>) => {
|
|
62
|
-
info: openapi_typescript.InfoObject | undefined;
|
|
63
|
-
};
|
|
64
|
-
};
|
|
65
|
-
|
|
66
|
-
type SchemaObjectOptions = SchemaObject & {
|
|
67
|
-
allowExample?: boolean;
|
|
68
|
-
};
|
|
69
|
-
declare function resolveSchemaObject(value: any, options?: SchemaObjectOptions): SchemaObject;
|
|
70
|
-
type ExampleDescription<ExampleT> = MaybeValueOrObject<ExampleT, string>;
|
|
71
|
-
declare function toExampleSchema<T = any>(example: T, description?: ExampleDescription<T>, options?: SchemaObject): {
|
|
72
|
-
[key: `x-${string}`]: any;
|
|
73
|
-
discriminator?: openapi_typescript.DiscriminatorObject | undefined;
|
|
74
|
-
xml?: openapi_typescript.XMLObject | undefined;
|
|
75
|
-
externalDocs?: openapi_typescript.ExternalDocumentationObject | undefined;
|
|
76
|
-
example?: any;
|
|
77
|
-
title?: string | undefined;
|
|
78
|
-
description?: string | undefined;
|
|
79
|
-
$comment?: string | undefined;
|
|
80
|
-
deprecated?: boolean | undefined;
|
|
81
|
-
readOnly?: boolean | undefined;
|
|
82
|
-
writeOnly?: boolean | undefined;
|
|
83
|
-
enum?: unknown[] | undefined;
|
|
84
|
-
const?: unknown;
|
|
85
|
-
default?: unknown;
|
|
86
|
-
format?: string | undefined;
|
|
87
|
-
nullable?: boolean | undefined;
|
|
88
|
-
oneOf?: (SchemaObject | openapi_typescript.ReferenceObject)[] | undefined;
|
|
89
|
-
allOf?: (SchemaObject | openapi_typescript.ReferenceObject)[] | undefined;
|
|
90
|
-
anyOf?: (SchemaObject | openapi_typescript.ReferenceObject)[] | undefined;
|
|
91
|
-
required?: string[] | undefined;
|
|
92
|
-
};
|
|
93
|
-
|
|
94
|
-
export { type MaybeReference, type MaybeValueOrObject, type OpenApiRegisterConfig, type PathOperationItem, type PathOperationMethod, type PathOperations, type ReferenceExtended, type ReferenceRef, type SchemaExtended, createOpenApiRegister, resolveSchemaObject, toExampleSchema };
|