import type { ValidatorContextOptions, ValidatorMeta, ValidatorReport } from "./validator-types.cjs";
import type { UnvalidatedSnapFiles, ExtendableSnapFiles } from "../types.cjs";
export type ValidatorResults = {
    files?: ExtendableSnapFiles;
    reports: ValidatorReport[];
};
/**
 * Verify that snap files are completely valid.
 * First it runs validators on unparsed files to check structure.
 * Secondly it runs validators on parsed files to check semantics.
 *
 * @param files - All files required to run a snap.
 * @param rules - Validators to run.
 * @param options - Options for the validation.
 * @param options.exports - Exports detected by evaluating the bundle.
 * @returns The validation results.
 */
export declare function runValidators(files: UnvalidatedSnapFiles, rules?: ValidatorMeta[], options?: ValidatorContextOptions): Promise<ValidatorResults>;
/**
 * Check whether a report is fixable.
 *
 * @param report - The report to check.
 * @param errorsOnly - Whether to only consider errors for fixability.
 * @returns Whether the report is fixable.
 */
export declare function isReportFixable(report: ValidatorReport, errorsOnly?: boolean): boolean;
/**
 * Get whether any reports have pending fixes.
 *
 * @param results - Results of the validation run.
 * @param errorsOnly - Whether to only consider errors for pending fixes.
 * @returns Whether there are fixes pending.
 */
export declare function hasFixes(results: ValidatorResults, errorsOnly?: boolean): boolean;
//# sourceMappingURL=validator.d.cts.map