export type BackupSettings = {
    mysql: {
        host: string;
        port: string;
        database: string;
        username: string;
        password: string;
    };
    customPaths: string[];
    backupDirectory: string;
};

export type Backup = {
    id: number;
    type: string;
    filename: string;
    source_path: string | null;
    size: string;
    size_bytes: number;
    created_at: string;
};

export type DiskUsage = {
    total_size: string;
    total_size_bytes: number;
    total_files: number;
    directory: string;
};

export type BackupProgress = {
    status: 'idle' | 'running' | 'completed' | 'failed';
    percentage: number;
    message: string;
    current_file: string;
    total_files: number;
    processed_files: number;
};

export interface BackupPageProps {
    settings: BackupSettings;
    backups: Backup[];
    diskUsage: DiskUsage;
}
