import { AgentInsightEdits, AttachmentFilePayload, CompanyMonthEndReportSelectorView, ID } from '@zeniai/client-epic-state'; import { ThreadMetadata } from '../../commentsAndNotes/utils/CollaborationTypes'; import { MonthEndReportSectionData } from './MonthEndReportSection'; /** * Form Data Type */ export declare const monthEndReportFormSectionId = "monthEndReportFormSection"; export interface FormData { [monthEndReportFormSectionId]: MonthEndReportSectionData; } export interface MonthEndReportPageProps { allThreadsSectionOpen: boolean; companyId: ID; customerRequestData: string[]; enableSendingMonthEndEmail: boolean; enableZeniGPTFeature: boolean; filterMetaData: Partial; isAuditScoreLoadingCompleted: boolean; monthEndReportView: CompanyMonthEndReportSelectorView; newThreadMetadata: ThreadMetadata; previewMode: boolean; /** * Bumped by the page each time an AI regeneration is started. Session edits * are discarded on change — a regeneration replaces the content they were * edits to. */ regenerationCount: number; improveUsingZeniGPTClick: (htmlString: string) => void; /** * Reports the state of this session's AI insight edits. `isPending` gates the * page's regeneration, which must wait for a save already on the wire — one * landing afterwards would write the discarded edits back into the draft the * controller chose to replace. `hasUnpersistedEdits` also covers a failed * save, which the regenerate confirmation warns about but must not wait for. */ onAgentInsightSaveStateChange: (state: { hasUnpersistedEdits: boolean; isPending: boolean; }) => void; onClickAuditScore: () => void; onClickCustomerRequest: () => void; onCloseAllThreadsSection: () => void; onCloseFileAttachmentSnackBar: () => void; onNavigateBack: () => void; onOpenFileAttachmentSnackBar: () => void; onRefresh: () => void; onRemoveFileAttachment: (fileIds: ID[]) => void; onUpdateFileAttachment: (file: AttachmentFilePayload[]) => void; previewMonthEndReport: (recipientEmailList: string[], subject: string, fileId?: ID, zeniRequestsHtml?: string, agentInsightEdits?: AgentInsightEdits) => void; saveMonthEndReport: (recipientEmailList: string[], subject: string, fileId?: ID, zeniRequestsHtml?: string, agentInsightEdits?: AgentInsightEdits) => void; onEditClick?: () => void; sendMonthEndReport?: (fileId?: ID) => void; } export default function MonthEndReportPageForm({ companyId, enableZeniGPTFeature, enableSendingMonthEndEmail, monthEndReportView, previewMode, customerRequestData, allThreadsSectionOpen, filterMetaData, newThreadMetadata, isAuditScoreLoadingCompleted, regenerationCount, onAgentInsightSaveStateChange, improveUsingZeniGPTClick, onRemoveFileAttachment, onUpdateFileAttachment, onCloseAllThreadsSection, previewMonthEndReport, saveMonthEndReport, onEditClick, onOpenFileAttachmentSnackBar, onClickAuditScore, onClickCustomerRequest, sendMonthEndReport, }: Readonly): import("react/jsx-runtime").JSX.Element;