@opra/common
Version:
Opra common package
38 lines (37 loc) • 1.59 kB
TypeScript
import type { Combine, StrictOmit } from 'ts-gems';
import { OpraSchema } from '../../schema/index.js';
import type { ApiDocument } from '../api-document';
import { HttpMediaType } from './http-media-type.js';
import { HttpOperation } from './http-operation.js';
import type { HttpParameter } from './http-parameter.js';
import { HttpStatusRange } from './http-status-range.js';
/**
* @namespace HttpOperationResponse
*/
export declare namespace HttpOperationResponse {
interface Metadata extends Combine<{
statusCode: number | string | (number | string)[];
parameters?: HttpParameter.Metadata[];
partial?: boolean | 'deep';
}, HttpMediaType.Metadata> {
}
interface Options extends HttpMediaType.Options {
partial?: boolean | 'deep';
}
interface InitArguments extends Combine<{
statusCode: number | string | HttpStatusRange | OpraSchema.HttpStatusRange | (number | string | HttpStatusRange | OpraSchema.HttpStatusRange)[];
}, HttpMediaType.InitArguments, StrictOmit<Metadata, 'multipartFields'>> {
}
}
/**
* @class HttpOperationResponse
*/
export declare class HttpOperationResponse extends HttpMediaType {
readonly owner: HttpOperation;
statusCode: HttpStatusRange[];
parameters: HttpParameter[];
partial?: boolean | 'deep';
constructor(owner: HttpOperation, init: HttpOperationResponse.InitArguments);
findParameter(paramName: string, location?: OpraSchema.HttpParameterLocation): HttpParameter | undefined;
toJSON(options?: ApiDocument.ExportOptions): OpraSchema.HttpOperationResponse;
}