openapi-metadata
Version:
Auto-Generate OpenAPI specifications from Typescript decorators
16 lines (13 loc) • 578 B
text/typescript
import { type OperationParameterMetadata, OperationParameterMetadataStorage } from "../metadata/operation-parameter.js";
export type ApiQueryOptions = Omit<OperationParameterMetadata, "in">;
/**
* Configures a query parameter.
* Can be applied to Operations and Controllers.
*
* @see https://swagger.io/specification/#parameter-object
*/
export function ApiQuery(options: ApiQueryOptions) {
return function (target: Object, propertyKey?: string | symbol) {
OperationParameterMetadataStorage.mergeMetadata(target, [{ in: "query", ...options }], propertyKey);
};
}