import { SetOptional } from 'type-fest'; import { c as OperationBodyMetadata, f as OperationParameterMetadata, O as OperationMetadata, i as OperationResponseMetadata } from '../shared/openapi-decorators.DnHx5WAl.mjs'; import { b as TypeValue, c as Thunk } from '../shared/openapi-decorators.y9-mt_C9.mjs'; import { P as PropertyMetadata, E as EnumMetadata } from '../shared/openapi-decorators.Dejlanh2.mjs'; import 'openapi-types'; type ApiBodyOptions = SetOptional; /** * Configures the request body. * Can be applied to Controllers and Operations. * * @see https://swagger.io/specification/#request-body-object */ declare function ApiBody(options: ApiBodyOptions): MethodDecorator; type ApiCookieOptions = Omit; /** * Configures a cookie parameter. * Can be applied to Operations and Controllers. * * @see https://swagger.io/specification/#parameter-object */ declare function ApiCookie(options: ApiCookieOptions): (target: Object, propertyKey?: string | symbol) => void; /** * Exclude this Controller from the generated schema. * Useful when working with framework integrations that autoload controllers. */ declare function ApiExcludeController(): ClassDecorator; /** * Exclude this Operation from the generated schema. * Useful when working with framework integrations that autoload controllers. */ declare function ApiExcludeOperation(): MethodDecorator; /** * Adds extra models to the generated schema that are not used anywhere else. * Useful when you want to share models that are not used by your operations. */ declare function ApiExtraModels(...models: (TypeValue | Thunk)[]): (target: Object) => void; type ApiHeaderOptions = Omit; /** * Configures a header parameter. * Can be applied to Operations and Controllers. * * @see https://swagger.io/specification/#parameter-object */ declare function ApiHeader(options: ApiHeaderOptions): (target: Object, propertyKey?: string | symbol) => void; type ApiOperationOptions = OperationMetadata; /** * Configures a new operation. * When multiple methods are defined, multiple operations will be added to the document. * * @see https://swagger.io/specification/#operation-object */ declare function ApiOperation(options: ApiOperationOptions): MethodDecorator; type ApiParamOptions = Omit; /** * Configures a path parameter. * Can be applied to Operations and Controllers. * * @see https://swagger.io/specification/#parameter-object */ declare function ApiParam(options: ApiParamOptions): (target: Object, propertyKey?: string | symbol) => void; type ApiPropertyOptions = Partial; /** * Configures this class member as a property of the schema. * Can be applied to properties, getters and methods. * * @see https://swagger.io/specification/#schema-object */ declare function ApiProperty(options?: ApiPropertyOptions): PropertyDecorator; declare function ApiProperty(options?: ApiPropertyOptions): MethodDecorator; /** * Configures this class member as an optional property of the schema. * Can be applied to properties, getters and methods. * * @see https://swagger.io/specification/#schema-object */ declare function ApiPropertyOptional(options?: Omit): PropertyDecorator; declare function ApiPropertyOptional(options?: Omit): MethodDecorator; type ApiQueryOptions = Omit; /** * Configures a query parameter. * Can be applied to Operations and Controllers. * * @see https://swagger.io/specification/#parameter-object */ declare function ApiQuery(options: ApiQueryOptions): (target: Object, propertyKey?: string | symbol) => void; type ApiResponseOptions = SetOptional; /** * Configures a response. * Can be applied to Controllers and Operations. * * @see https://swagger.io/specification/#response-object */ declare function ApiResponse(options: ApiResponseOptions): (target: Object, propertyKey?: string | symbol) => void; /** * Configures security requirements. * Can be applied to Controllers and Operations. * * @see https://swagger.io/specification/#security-requirement-object */ declare function ApiSecurity(name: string, ...scopes: string[]): (target: Object, propertyKey?: string | symbol) => void; /** * Configures Basic auth security requirement. * Can be applied to Controllers and Operations. * * @see https://swagger.io/specification/#security-requirement-object */ declare function ApiBasicAuth(): (target: Object, propertyKey?: string | symbol) => void; /** * Configures Bearer auth security requirement. * Can be applied to Controllers and Operations. * * @see https://swagger.io/specification/#security-requirement-object */ declare function ApiBearerAuth(): (target: Object, propertyKey?: string | symbol) => void; /** * Configures Cookie auth security requirement. * Can be applied to Controllers and Operations. * * @see https://swagger.io/specification/#security-requirement-object */ declare function ApiCookieAuth(): (target: Object, propertyKey?: string | symbol) => void; /** * Configures OAuth2 auth security requirement. * Can be applied to Controllers and Operations. * * @see https://swagger.io/specification/#security-requirement-object */ declare function ApiOauth2(...scopes: string[]): (target: Object, propertyKey?: string | symbol) => void; /** * Configures tags used to grouping operations. * Can be applied to Controllers and Operations. */ declare function ApiTags(...tags: string[]): (target: Object, propertyKey?: string | symbol) => void; declare function registerEnumType(obj: TEnum, config: Omit): void; export { ApiBasicAuth, ApiBearerAuth, ApiBody, ApiCookie, ApiCookieAuth, ApiExcludeController, ApiExcludeOperation, ApiExtraModels, ApiHeader, ApiOauth2, ApiOperation, ApiParam, ApiProperty, ApiPropertyOptional, ApiQuery, ApiResponse, ApiSecurity, ApiTags, registerEnumType };