import { FileLoaderOption } from "../swagger/fileLoader"; import { JsonLoaderOption, JsonLoader } from "../swagger/jsonLoader"; import { SwaggerLoader, SwaggerLoaderOption } from "../swagger/swaggerLoader"; import { BodyTransformer } from "../apiScenario/bodyTransformer"; import { SeverityString } from "../util/severity"; import { SwaggerExample } from "./../swagger/swaggerTypes"; export interface ExampleQualityValidatorOption extends FileLoaderOption, JsonLoaderOption, SwaggerLoaderOption { swaggerFilePaths?: string[]; exampleMapping?: Map; } interface ExampleValidationRule { id: string; severity: SeverityString; code: string; jsonPath: string; message: string; exampleName: string; exampleFilePath: string; detail?: any; } export declare class ExampleQualityValidator { private opts; jsonLoader: JsonLoader; private swaggerLoader; private bodyTransformer; private swaggerSpecs; private initialized; private transformContext; private schemaValidator; private validationFuncs; private operationMapping; constructor(opts: ExampleQualityValidatorOption, jsonLoader: JsonLoader, swaggerLoader: SwaggerLoader, bodyTransformer: BodyTransformer); static create(opts: ExampleQualityValidatorOption): ExampleQualityValidator; initialize(): Promise; validateExternalExamples(examples: Array<{ exampleFilePath: string; example: SwaggerExample | undefined; operationId: string; }>): Promise; /** * Validate swagger example quality. * @param filteredOperationIds If filtered is undefined, validate the whole x-ms-examples in swagger. * @returns */ validateSwaggerExamples(filteredOperationIds?: string[] | undefined): Promise; } export {}; //# sourceMappingURL=exampleQualityValidator.d.ts.map