/** * @description 对 swagger 返回做安全检测 * 前提: * - http method + url 唯一 * - 后端变更 http method、url 必须周知前端 */ import { SwaggerJson, GuardConfig, String2StringMap } from './consts'; declare type API = SwaggerJson['paths']['a']['get']; /** Name_1 格式的 operationId */ export declare const dangerousOperationIdReg: RegExp; export declare const defaultPrefixReg: Required['prefixReg']; export declare const defaultBadParamsReg: Required['badParamsReg']; export interface HttpMethodUrl2APIMap { [url: string]: API; } /** 构建 http method + url : oldOperationId 安全映射,用以校正风险 swagger */ export declare function operationIdGuard(swagger: SwaggerJson, config?: GuardConfig): { errors: any[]; warnings: never[]; suggestions: never[]; } | { errors: string[]; warnings: string[]; suggestions: (string | String2StringMap)[]; } | { errors: string[]; warnings: string[]; suggestions: (string | { guardConfig: { methodUrl2OperationIdMap: String2StringMap; }; })[]; }; export declare const DefaultUnstableTagsReg: Required['unstableTagsReg']; export declare const DefaultValidTagsReg: Required['validTagsReg']; export declare const DefaultValidDefinitionReg: Required['validDefinitionReg']; export declare const DefaultValidUrlReg: Required['validUrlReg']; /** 严格模式特有校验逻辑 */ export declare function strictModeGuard(swagger: SwaggerJson, config: GuardConfig): Promise<{ errors: string[]; warnings: string[]; }>; export {};