UNPKG

typescript-swagger

Version:

Generate Swagger files from a decorator library like typescript-rest or a @decorators/express.

41 lines (40 loc) 1.87 kB
import { CompilerOptions } from "typescript"; import { SwaggerConfig } from '../config'; import { Metadata } from '../metadata/metadataGenerator'; import { Resolver } from "../metadata/resolver/type"; import { Swagger } from './index'; export declare function generateDocumentation(swaggerConfig: SwaggerConfig, tsConfig: CompilerOptions): Promise<string>; export declare class SpecGenerator { private readonly metadata; private readonly config; private debugger; constructor(metadata: Metadata, config: SwaggerConfig); generate(): Promise<void>; getMetaData(): Metadata; getSwaggerSpec(): Swagger.Spec; getOpenApiSpec(): Promise<any>; private convertToOpenApiSpec; private buildDefinitions; private buildPaths; private buildPathMethod; private handleMethodConsumes; private hasFormParams; private supportsBodyParameters; private buildParameter; private buildProperties; private decideEnumType; private buildOperation; private getMimeType; private handleMethodProduces; private getOperationId; private getSwaggerType; protected isNull(type: Resolver.Type): boolean; protected getSwaggerTypeForUnionType(type: Resolver.UnionType): Swagger.BaseSchema; private getSwaggerTypeForPrimitiveType; private getSwaggerTypeForArrayType; protected getSwaggerTypeForIntersectionType(type: Resolver.IntersectionType): Swagger.Schema; protected getSwaggerTypeForEnumType(enumType: Resolver.EnumType): Swagger.Schema2 | Swagger.Schema3; getSwaggerTypeForObjectLiteral(objectLiteral: Resolver.NestedObjectLiteralType): Swagger.Schema; private getSwaggerTypeForReferenceType; protected determineTypesUsedInEnum(anEnum: Array<string | number | boolean | null>): Set<"string" | "number" | "bigint" | "boolean" | "symbol" | "undefined" | "object" | "function">; }