import type { IToolMessageOptions } from "../config/config.js";
import { IssueCode, type IssueSeverity } from "./Issues.js";
export interface IIssueParams {
    fileName?: string;
    line: number;
    column: number;
    error?: Error;
    arg?: unknown;
    arg2?: unknown;
    arg3?: unknown;
}
/** A class that knows how to render an issue to a string. */
export declare class Issue {
    readonly code: IssueCode;
    private formatOptions;
    private params;
    private verbose;
    constructor(code: IssueCode, formatOptions: IToolMessageOptions, params: IIssueParams, verbose?: boolean);
    static fromIssue(issue: Issue): Issue;
    get severity(): IssueSeverity;
    toString(): string;
    /**
     * For testing only.
     *
     * @returns A string representation of the parameters used to create this issue.
     */
    get paramsAsString(): string;
}
