import type { Message } from 'esbuild';
import type { Diagnostic as TSDiagnostic } from 'typescript';
export declare const enum DiagnosticCategory {
    warning = "Warning",
    error = "Error"
}
export interface Diagnostic {
    category: DiagnosticCategory;
    /** Implementation-specific error code */
    code?: string;
    /** Error message text */
    text: string;
    /** Absolute file path or undefined if the error is not from a specific file */
    filePath: string | undefined;
    /** 1-based line number */
    line: number;
    /** 1-based column in line */
    column: number;
}
export interface PrettyErrorMessage extends Diagnostic {
    id?: string;
    prettyError: string;
}
/** Convert an esbuild diagnostic */
export declare function fromEsbuildMessage(message: Message, category: DiagnosticCategory): Diagnostic;
/** Convert a TypeScript diagnostic */
export declare function fromTypeScriptDiagnostic(tsDiagnostic: TSDiagnostic, root: string): Diagnostic;
