UNPKG

openapi-metadata

Version:

Auto-Generate OpenAPI specifications from Typescript decorators

72 lines (65 loc) 4.11 kB
import { OpenAPIV3 } from 'openapi-types'; import { c as TypeOptions, H as HttpMethods } from './openapi-metadata.D34x6L94.js'; import { SetOptional } from 'type-fest'; type OperationBodyMetadata = Omit<OpenAPIV3.RequestBodyObject, "content"> & { mediaType: string; } & TypeOptions; declare const OperationBodyMetadataKey: unique symbol; declare const OperationBodyMetadataStorage: { defineMetadata: (object: Object, metadata: OperationBodyMetadata, propertyKey?: string | symbol) => void; getMetadata: (object: Object, propertyKey?: string | symbol, withParent?: boolean) => OperationBodyMetadata; mergeMetadata: (object: Object, metadata: OperationBodyMetadata, propertyKey?: string | symbol) => OperationBodyMetadata; }; type OperationParameterMetadata = Omit<OpenAPIV3.ParameterObject, "in" | "schema"> & { name: string; in: "path" | "query" | "header" | "cookie"; } & Partial<TypeOptions>; declare const OperationParameterMetadataKey: unique symbol; declare const OperationParameterMetadataStorage: { defineMetadata: (object: Object, metadata: OperationParameterMetadata[], propertyKey?: string | symbol) => void; getMetadata: (object: Object, propertyKey?: string | symbol, withParent?: boolean) => OperationParameterMetadata[]; mergeMetadata: (object: Object, metadata: OperationParameterMetadata[], propertyKey?: string | symbol) => OperationParameterMetadata[]; }; type OperationResponseMetadata = Omit<SetOptional<OpenAPIV3.ResponseObject, "description">, "content"> & { status: number | "default"; mediaType: string; } & TypeOptions; declare const OperationResponseMetadataKey: unique symbol; declare const OperationResponseMetadataStorage: { defineMetadata: (object: Object, metadata: Record<string, OperationResponseMetadata>, propertyKey?: string | symbol) => void; getMetadata: (object: Object, propertyKey?: string | symbol, withParent?: boolean) => Record<string, OperationResponseMetadata>; mergeMetadata: (object: Object, metadata: Record<string, OperationResponseMetadata>, propertyKey?: string | symbol) => Record<string, OperationResponseMetadata>; }; type OperationMetadata = Omit<OpenAPIV3.OperationObject, "responses" | "parameters"> & { /** * Operation path. * Can include parameters. */ path?: string; /** * Available methods for this operation. */ methods?: HttpMethods[]; /** * Represents metadata about an operation parameter. */ parameters?: OperationParameterMetadata[]; }; declare const OperationMetadataKey: unique symbol; declare const OperationMetadataStorage: { defineMetadata: (object: Object, metadata: OperationMetadata, propertyKey?: string | symbol) => void; getMetadata: (object: Object, propertyKey?: string | symbol, withParent?: boolean) => OperationMetadata; mergeMetadata: (object: Object, metadata: OperationMetadata, propertyKey?: string | symbol) => OperationMetadata; }; type PropertyMetadata = Omit<OpenAPIV3.NonArraySchemaObject, "type" | "enum" | "properties" | "required"> & { name: string; required: boolean; } & TypeOptions; declare const PropertyMetadataKey: unique symbol; declare const PropertyMetadataStorage: { defineMetadata: (object: Object, metadata: Record<string, PropertyMetadata>, propertyKey?: string | symbol) => void; getMetadata: (object: Object, propertyKey?: string | symbol, withParent?: boolean) => Record<string, PropertyMetadata>; mergeMetadata: (object: Object, metadata: Record<string, PropertyMetadata>, propertyKey?: string | symbol) => Record<string, PropertyMetadata>; }; export { OperationBodyMetadataKey as d, OperationBodyMetadataStorage as e, OperationParameterMetadataKey as f, OperationParameterMetadataStorage as g, OperationResponseMetadataKey as h, OperationResponseMetadataStorage as i, OperationMetadataKey as j, OperationMetadataStorage as k, PropertyMetadataKey as l, PropertyMetadataStorage as m }; export type { OperationBodyMetadata as O, PropertyMetadata as P, OperationParameterMetadata as a, OperationMetadata as b, OperationResponseMetadata as c };