import { JavaObject } from '../java/lang/JavaObject';
import { Comparable } from '../java/lang/Comparable';
import { LogLevel } from '../logger/LogLevel';
export declare class LogData extends JavaObject implements Comparable<LogData | null> {
    private readonly time;
    private readonly level;
    private readonly text;
    private readonly newLine;
    private indent;
    /**
     * Erzeugt eine neue Log-Information.
     *
     * @param level     das zugehörige Log-Level
     * @param indent    die Anzahl der Leerzeichen, die bei der Ausgabe zur Einrückung genutzt werden sollen
     * @param newLine   gibt an, ob die Log-Informationen beim Ausgeben mit einer neuen Zeile beendet werden sollen oder nicht
     * @param text      der Text der Log-Information
     */
    constructor(level: LogLevel, indent: number, newLine: boolean, text: String);
    /**
     * Vergleicht zwei Log-Informationen anhand der Zeit.
     *
     * @param other   die zu vergleichenden Log-Informationen
     *
     * @return ein negativer Wert, falls diese Log-Information früher geloggt wurde, 0, falls
     *         sie zur gleichen Zeit geloggt wurden oder ein positiver Wert, falls diese
     *         Log-Information später geloggt wurde
     */
    compareTo(other: LogData): number;
    /**
     * Gibt diese Log-Information als JSON-String mit Zeit und Log-Level zurück.
     *
     * @return die Log-Informationen als JSON-String
     */
    toString(): String;
    /**
     * Erhögt die Einrückung bei der Ausgabe, um den angebenen Wert.
     *
     * @param indent   der Wert, um den die Einrückung erhöht wird.
     */
    addIndent(indent: number): void;
    /**
     * Gibt den Zeitstempel der Log-Information zurück.
     *
     * @return der Zeitstempel der Log-Information
     */
    getTime(): number;
    /**
     * Gibt das Log-Level der Log-Information zurück.
     *
     * @return das Log-Level der Log-Information
     */
    getLevel(): LogLevel;
    /**
     * Gibt an, ob bei der Ausgabe mit einer neue Zeile beendet werden soll oder nicht.
     *
     * @return true, falls die Ausgabe mit einer neuen Zeile beendet werden soll, ansonsten false
     */
    isNewLine(): boolean;
    /**
     * Gibt den Text dieser Log-Information mit Einrückung, aber ohne Zeitangabe und
     * Log-Level als String zurück.
     *
     * @return der Text dieser Log-Information
     */
    getText(): String;
    isTranspiledInstanceOf(name: string): boolean;
}
export declare function cast_de_nrw_schule_svws_logger_LogData(obj: unknown): LogData;
