import type { ClassType, ReceiveType, Type } from '../reflection'; export interface OpenApiResponseOptions { status: number; description?: string; } export interface OpenApiResponseMetadata extends OpenApiResponseOptions { type: Type; } type OpenApiDecorator = ClassDecorator & MethodDecorator; declare class OpenApiDecorators { /** Excludes a controller or route from generated OpenAPI documents. */ static ignore(): OpenApiDecorator; /** Documents a typed response without changing the route's runtime response behavior. */ static response(options: OpenApiResponseOptions, type?: ReceiveType): OpenApiDecorator; /** Documents one typed error response for each supplied HTTP status. */ static errors(statuses: number | readonly number[], type?: ReceiveType): OpenApiDecorator; } /** OpenAPI-only controller and route decorators. */ export declare const openapi: typeof OpenApiDecorators; export declare function isOpenApiIgnored(controllerClass: ClassType, propertyKey: string | symbol): boolean; /** * Returns controller responses followed by method responses. A method declaration * deliberately replaces a controller response with the same status. */ export declare function getOpenApiResponses(controllerClass: ClassType, propertyKey: string | symbol): OpenApiResponseMetadata[]; export {}; //# sourceMappingURL=decorators.d.ts.map