import { type StudentActivityCorrectionData, type SaveQuestionCorrectionPayload } from '../../utils/studentActivityCorrection';
/**
 * Props for the CorrectActivityModal component
 */
export interface CorrectActivityModalProps {
    /** Whether the modal is open */
    isOpen: boolean;
    /** Function to close the modal */
    onClose: () => void;
    /** Student activity correction data */
    data: StudentActivityCorrectionData | null;
    /** Whether the modal is in view-only mode */
    isViewOnly?: boolean;
    /** Callback when observation is submitted with optional files */
    onObservationSubmit?: (studentId: string, observation: string, files: File[], existingAttachment: string | null) => void;
    /** Callback when question correction is saved (for essay questions) */
    onQuestionCorrectionSubmit?: (studentId: string, payload: SaveQuestionCorrectionPayload) => Promise<void>;
    /** URL of the scanned answer sheet image (for exam mode) */
    answerSheetImageUrl?: string | null;
    /** Callback when "Ver gabarito escaneado" button is clicked */
    onViewScannedAnswerSheet?: () => void;
}
/**
 * Modal component for correcting or viewing student activity details
 *
 * Displays student information, statistics cards, observation section,
 * and a list of questions with their status.
 *
 * @param props - Component props
 * @returns JSX element
 *
 * @example
 * ```tsx
 * <CorrectActivityModal
 *   isOpen={isOpen}
 *   onClose={() => setIsOpen(false)}
 *   data={studentData}
 *   isViewOnly={false}
 *   onObservationSubmit={(obs, files) => console.log(obs, files)}
 * />
 * ```
 */
declare const CorrectActivityModal: ({ isOpen, onClose, data, isViewOnly, onObservationSubmit, onQuestionCorrectionSubmit, answerSheetImageUrl, onViewScannedAnswerSheet, }: CorrectActivityModalProps) => import("react/jsx-runtime").JSX.Element | null;
export default CorrectActivityModal;
//# sourceMappingURL=CorrectActivityModal.d.ts.map