diff --git a/plugins/openapi-router/src/types/immutable.ts b/plugins/openapi-router/src/types/immutable.ts index 880a081ba0..5056512054 100644 --- a/plugins/openapi-router/src/types/immutable.ts +++ b/plugins/openapi-router/src/types/immutable.ts @@ -20,6 +20,7 @@ import type { RequestBodyObject, ParameterObject, SchemaObject, + ResponseObject, } from 'openapi3-ts'; /** @@ -71,6 +72,11 @@ export type ImmutableContentObject = ImmutableObject; */ export type ImmutableRequestBodyObject = ImmutableObject; +/** + * @public + */ +export type ImmutableResponseObject = ImmutableObject; + /** * @public */ diff --git a/plugins/openapi-router/src/types/responses.ts b/plugins/openapi-router/src/types/responses.ts index 50a8289dd6..c623b44333 100644 --- a/plugins/openapi-router/src/types/responses.ts +++ b/plugins/openapi-router/src/types/responses.ts @@ -18,7 +18,6 @@ * Pulled from https://github.com/varanauskas/oatx. */ -import type { ReferenceObject, ResponseObject } from 'openapi3-ts'; import type { ComponentRef, ComponentTypes, @@ -32,6 +31,7 @@ import type { ToTypeSafe, ValueOf, } from './common'; +import { ImmutableReferenceObject, ImmutableResponseObject } from './immutable'; /** * @public @@ -45,7 +45,7 @@ export type Response< Doc, Path, Method ->['responses'][StatusCode] extends ReferenceObject +>['responses'][StatusCode] extends ImmutableReferenceObject ? 'responses' extends ComponentTypes ? ComponentRef< Doc, @@ -76,7 +76,7 @@ export type Responses< */ export type ResponseSchema< Doc extends RequiredDoc, - Object extends ResponseObject, + Object extends ImmutableResponseObject, > = ObjectWithContentSchema; /** @@ -91,7 +91,7 @@ export type ResponseSchemas< Doc, DocPath, Method - >[StatusCode] extends ResponseObject + >[StatusCode] extends ImmutableResponseObject ? ResponseSchema< Doc, Responses, Method>[StatusCode]