/**
 * SummaryFiles component
 * Renders a list of files using FileBar for consistent styling across the app.
 * Supports both FormFileAttachment (new) and FileData (legacy) shapes.
 */
import React from 'react';
import type { FormFileAttachment } from '../../../types/file_attachment.js';
/**
 * Props for SummaryFiles component
 */
export interface SummaryFilesProps {
    files: FormFileAttachment[];
    private_files?: FormFileAttachment[];
    field_id: string;
    class_name?: string;
    /** Optional callback to get download URL (from file_manager). Falls back to file_path. */
    get_download_url?: (file_id: string, visibility?: 'public' | 'private') => string;
    /** Whether to show status badges for non-active files */
    show_file_status?: boolean;
    /** Set of file_ids that have validation errors (shows red badge) */
    error_file_ids?: Set<string>;
    /** Set of file_ids that passed validation (shows green checkmark badge) */
    passed_file_ids?: Set<string>;
    /** Callback when clicking the issue badge on a file. Receives the file_id. */
    on_file_issue_click?: (file_id: string) => void;
    /** Callback when clicking a file row. When provided, clicking opens preview instead of download. */
    on_file_click?: (attachment: FormFileAttachment) => void;
}
/**
 * SummaryFiles component
 * Renders public and private files in separate sections using FileBar
 */
export declare function SummaryFiles({ files, private_files, field_id, class_name, get_download_url, show_file_status, error_file_ids, passed_file_ids, on_file_issue_click, on_file_click, }: SummaryFilesProps): React.ReactElement | null;
export default SummaryFiles;
//# sourceMappingURL=summary_files.d.ts.map