import { ApiTag } from './declare';
import { ApiPaths } from './declare';
import RuntimeAnnotation from '../../servlets/annotations/annotation/RuntimeAnnotation';
import Controller from '../../servlets/annotations/Controller';
export default class OpenApiModel {
    /**
     * 驼峰命名转换成 - 符号链接
     */
    clampToJoinName(name: string): string;
    /**
     * 将 -转换成小驼峰命名
     */
    toClamp(name: string): string;
    createTags(annotation: RuntimeAnnotation<typeof Controller>): ApiTag[];
    readPkg(id: string): any;
    /**
     * 获取完整的swaager openapi.json
     */
    build(contextPath: string): {
        info: {
            contact: {
                email: any;
            };
            license: any;
            title: any;
            version: any;
            description: any;
        };
        tags: ApiTag[];
        paths: ApiPaths;
        servers: {
            url: string;
        }[];
        components: {
            schemas: Record<string, import("./declare").ApiModelInfo>;
        };
        openapi: string;
    };
    /**
     * 创建api操作的所有paths
     */
    private buildOperation;
    private isNotBodyParameter;
    /**
     * 构建api接口操作参数
     * @param operation
     */
    private buildOperationParameters;
    private isMultipartFile;
    private buildOperationConsumes;
    private buildOperationProduces;
}
