import { Location } from './Location.js';
import { Severity } from './Severity.js';
import type { Fix } from './AutoFix.js';
export declare class Violation {
    readonly ruleId: string;
    readonly message: string;
    readonly severity: Severity;
    readonly location: Location;
    /**
     * An optional, structured auto-fix for this violation.
     *
     * @remarks
     * The rule that detects a problem is best placed to describe how to fix it,
     * so it may attach the exact edit here. When present, tooling applies this
     * edit directly instead of re-deriving one by pattern-matching the message
     * (which is brittle and couples the fixer to human-readable wording).
     */
    readonly fix?: Fix;
    constructor(ruleId: string, message: string, severity: Severity, location: Location, fix?: Fix);
    toString(): string;
    equals(other: Violation): boolean;
}
//# sourceMappingURL=Violation.d.ts.map