/**
 * ClarificationCard - Renders a single clarification item.
 *
 * Layout:
 * ┌─────────────────────────────────────────┐
 * │ [Source Label bar]                      │
 * ├─────────────────────────────────────────┤
 * │ [Status Icon] [Badge] [Tags] [Actions] │
 * │               {target_label}           │
 * ├─────────────────────────────────────────┤
 * │ ClarificationItemBody (issue + response)│
 * └─────────────────────────────────────────┘
 */
import React from 'react';
import type { ClarificationItem, ClarificationResponse, ResponseValidationState } from '../../types/clarification.js';
import type { FileManagerCallbacks } from '../../types/file_manager.js';
export interface ClarificationCardProps {
    /** The clarification item to render */
    item: ClarificationItem;
    /** Whether the response form is read-only */
    read_only?: boolean;
    /** Callback when response is submitted */
    on_respond?: (id: string, response: ClarificationResponse) => void;
    /** Callback when resolved */
    on_resolve?: (id: string) => void;
    /** Callback when dismissed */
    on_dismiss?: (id: string) => void;
    /** Callback when re-opened */
    on_reopen?: (id: string) => void;
    /** Callback when a doc reference is clicked */
    on_doc_click?: (file_id: string) => void;
    /** Callback to view a referenced document (opens PDF viewer) */
    on_doc_view?: (file_id: string, file_name: string) => void;
    /** Callback to delete a referenced document (removes it and resolves the clarification) */
    on_doc_delete?: (clarification_id: string, file_id: string) => void;
    /** Callback when the target field label is clicked (scrolls to field) */
    on_field_click?: (field_id: string) => void;
    /** File manager callbacks for file upload in response form */
    file_manager?: FileManagerCallbacks;
    /** Hide per-card submit button (when a global submit exists) */
    hide_submit?: boolean;
    /** Custom label for the submit button (default: "Submit Response") */
    submit_label?: string;
    /** Hide the entire response form (green zone) - used in back office draft view */
    hide_response_form?: boolean;
    /** Callback fired on every response change (choice, comment, files) */
    on_response_change?: (id: string, response: ClarificationResponse) => void;
    /** Label of the original question/field that triggered this clarification (shown above header) */
    source_label?: string;
    /** Classification tag pills to display in the header row */
    file_classification_tags?: Array<{
        tag_id: string;
        tag_label: string;
        color?: string;
    }>;
    /** Per-file validation state to show as badge on doc reference file bars */
    file_validation?: Record<string, {
        state: 'passed' | 'issues' | 'resolved' | 'validating';
        issue_count?: number;
    }>;
    /** Response validation state */
    response_validation?: ResponseValidationState;
    /** Callback when a file validation badge is clicked */
    on_validation_click?: (file_id: string) => void;
    /** Per-file validation details for built-in dialog (keyed by file_id) */
    file_validation_details?: Record<string, import('../../components/shared/file_bar/file_bar_types.js').FileValidationDetails>;
    /** Per-file pipeline status text (keyed by file_id) */
    file_pipeline_status?: Record<string, string>;
    /** Compact mode: hides card header (status badge + target label) and issue label line */
    compact?: boolean;
    /** Enable collapsible accordion (auto-collapse responded/resolved items) */
    collapsible?: boolean;
    /** Label shown above the card (e.g., "Action Required") */
    card_label?: string;
    /** Optional className */
    class_name?: string;
}
export declare const ClarificationCard: React.NamedExoticComponent<ClarificationCardProps>;
//# sourceMappingURL=clarification_card.d.ts.map