import { GmlToken } from './parser/GmlToken.js';
import type { StitchProject } from './StitchProject.js';
export type LinterReportFormat = 'object' | 'console';
/** @note Could compute type off of a *default* options object. */
export interface LinterOptions {
    /**
     * If provided, will find fuzzy-matching function references that
     * match because they *both* match this suffix pattern. Any mismatch
     * will be reported as an "outdated function referenced".
     */
    versionSuffix?: string;
}
export declare class Linter {
    private project;
    private _report;
    constructor(project: StitchProject, options?: LinterOptions);
    /** Shallow clone of the raw report. */
    getReport(): {
        outdatedFunctionReferences?: GmlToken[] | undefined;
        nonreferencedFunctions?: GmlToken[] | undefined;
    };
    /** Console-friendly report */
    getReportString(): string;
    /** Lint this project, resulting in a report of potential issues. */
    private lint;
}
//# sourceMappingURL=Linter.d.ts.map