@trapi/swagger
Version:
Generate Swagger files from a decorator APIs.
30 lines • 1.8 kB
TypeScript
import type { EnumType, IntersectionType, Method, Parameter, RefAliasType, RefEnumType, RefObjectType, ReferenceType, ResolverProperty, Response, UnionType } from '@trapi/metadata';
import { ParameterSource } from '@trapi/metadata';
import type { OperationV3, ParameterV3, ResponseV3, SchemaV3, SpecV3 } from '../../schema';
import { ParameterSourceV3 } from '../../schema';
import { AbstractSpecGenerator } from '../abstract';
export declare class V3Generator extends AbstractSpecGenerator<SpecV3, SchemaV3> {
build(): Promise<SpecV3>;
private buildComponents;
private static translateSecurityDefinitions;
private buildPaths;
private buildMethod;
private buildRequestBodyWithFormData;
private buildRequestBody;
private buildMediaType;
protected buildResponses(input: Response[]): Record<string, ResponseV3>;
protected buildOperation(controllerName: string, method: Method): OperationV3;
protected transformParameterSource(source: `${ParameterSource}`): `${ParameterSourceV3}` | undefined;
protected buildParameter(input: Parameter): ParameterV3;
private transformParameterExamples;
private buildServers;
protected buildSchemaForRefObject(input: RefObjectType): SchemaV3;
protected buildSchemaForRefEnum(referenceType: RefEnumType): SchemaV3;
protected buildSchemaForRefAlias(referenceType: RefAliasType): SchemaV3;
protected buildProperties<T>(properties: ResolverProperty[]): Record<string, SchemaV3>;
protected getSchemaForIntersectionType(type: IntersectionType): SchemaV3;
protected getSchemaForEnumType(enumType: EnumType): SchemaV3;
protected getSchemaForReferenceType(referenceType: ReferenceType): SchemaV3;
protected getSchemaForUnionType(type: UnionType): SchemaV3;
}
//# sourceMappingURL=module.d.ts.map