import { AlertMessageType } from "../../Alert"; import { CSVImportUIColumns, CellError, Mode } from "../CSVImportUI"; import { ScreenProps } from "./types"; export interface LoadCSVScreenProps extends ScreenProps { columns: Columns; data: Row[]; headers: string[]; errors: ([string, string][] | undefined)[]; csvParser: (args: { file: File; }) => Promise<{ data?: Record[]; error?: string; }>; csvValidator?: (args: { row: Record; }) => Promise<{ errors?: CellError[]; }>; mode: Mode; /** * アップロード画面に進む前にトリガーされる。 * 行ごとにデータを処理する。 */ onPreUploadDataByRow?: (args: { index: number; /** * 欠損したフィールドがある可能性があるため、型を緩くする。 */ row: Partial; mode: Mode; }) => Promise<{ /** * @deprecated 代わりに `errors` を使用してください。 */ error?: CellError; errors?: CellError[]; data?: Record; }>; /** * アップロード画面に進む前にトリガーされる。 * 一括でデータをアップロードする。 */ onPreUploadData?: (args: { data: Partial[]; mode: Mode; }) => Promise<{ errorMessage?: AlertMessageType; data?: Record[]; }>; onUpdateData: (data: Row[], errors: (CellError[] | undefined)[]) => void; title?: string; } export declare const LoadCSVScreen: >({ data, headers, errors, csvParser, columns, csvValidator, onUpdateData, onPreUploadData, onPreUploadDataByRow, mode, title, }: LoadCSVScreenProps) => import("@emotion/react/jsx-runtime").JSX.Element;