import { Column } from '../interfaces';
export interface FormatOptions {
    columns?: Column[];
    dateTimeFormat?: string;
    timezone?: string;
    validateSelections?: boolean;
    resolveUserGroups?: boolean;
}
/**
 * Datenformatierer für Nextcloud Tables Row-Daten
 */
export declare class DataFormatter {
    /**
     * Formatiert Row-Daten basierend auf Spaltentypen
     */
    static formatRowData(data: Record<string, any>, columns?: Column[], options?: FormatOptions): Record<string, any>;
    /**
     * Formatiert einen Wert basierend auf dem Spaltentyp
     */
    private static formatColumnValue;
    /**
     * Formatiert Text-Spalten
     */
    private static formatTextValue;
    /**
     * Formatiert Zahlen-Spalten
     */
    private static formatNumberValue;
    /**
     * Formatiert DateTime-Spalten
     */
    private static formatDateTimeValue;
    /**
     * Formatiert Selection-Spalten
     */
    private static formatSelectionValue;
    /**
     * Formatiert UserGroup-Spalten
     */
    private static formatUserGroupValue;
    /**
     * Formatiert File-Spalten (für zukünftige Implementierung)
     */
    private static formatFileValue;
    /**
     * Generische Wert-Formatierung ohne Spalten-Info
     */
    private static formatGenericValue;
    /**
     * Parst Selection-Optionen aus dem String-Format
     */
    private static parseSelectionOptions;
    /**
     * Validiert Bulk-Row-Daten
     */
    static validateBulkData(rows: Record<string, any>[], columns?: Column[]): string[];
    /**
     * Konvertiert Row-Daten für Export
     */
    static convertForExport(rows: any[], columns?: Column[], format?: 'csv' | 'json'): any;
    /**
     * Konvertiert einen Wert für Export
     */
    private static convertValueForExport;
    /**
     * Konvertiert Daten zu CSV-Format
     */
    private static convertToCsv;
}
