interface LineAndCharacter {
    line: number;
    character: number;
}
export interface DiagnosticMessage {
    messageText: string;
    category: DiagnosticCategory;
}
export interface Diagnostic {
    messageText: string | DiagnosticMessage[];
    category: DiagnosticCategory;
    target?: DiagnosticTarget;
    file?: {
        path: string;
        position?: {
            start: {
                line: number;
            };
        } | {
            start: LineAndCharacter;
            end?: LineAndCharacter;
        };
    };
}
export declare enum DiagnosticCategory {
    Warning = 0,
    Error = 1,
    Suggestion = 2,
    Message = 3
}
export declare enum DiagnosticTarget {
    App = "app",
    Companion = "companion",
    Settings = "settings"
}
export declare type DiagnosticHandler = (diagnostic: Diagnostic) => void;
export declare const logDiagnosticToConsole: DiagnosticHandler;
export {};
