import type { Rule } from '../domain/Rule.js';
import { ContextFile } from '../domain/ContextFile.js';
import { Violation } from '../domain/Violation.js';
export declare class FormatRule implements Rule {
    readonly id = "format";
    readonly description = "Markdown format validation for proper syntax and style";
    private readonly validLanguages;
    appliesTo(file: ContextFile): boolean;
    lint(file: ContextFile): Violation[];
    /**
     * Indices (0-based) of lines that sit INSIDE a fenced code block. The ```
     * delimiter lines themselves are excluded — they are markdown structure.
     */
    private fencedLineIndices;
    private checkHeaders;
    private checkEmptyLines;
    private checkTrailingWhitespace;
    private checkCodeBlocks;
    private checkListConsistency;
    private checkListFormatting;
    private checkEndOfFile;
}
//# sourceMappingURL=FormatRule.d.ts.map