import type { DataFormat } from '@generaltranslation/format/types'; import { FileFormat, FileReference, type FormatMetadata } from './file'; /** * Metadata stored alongside GTJSON file entries. * Keys correspond to the entry id/hash in the GTJSON body. */ export type GTJsonFormatMetadata = Record; export type FileUpload = { branchId?: string; incomingBranchId?: string; checkedOutBranchId?: string; content: string; fileName: string; fileFormat: FileFormat; transformFormat?: FileFormat; dataFormat?: DataFormat; locale: string; formatMetadata?: GTJsonFormatMetadata | FormatMetadata; versionId?: string; fileId?: string; }; export type UploadFilesOptions = { sourceLocale: string; modelProvider?: string; timeout?: number; }; export type UploadFilesResponse = { uploadedFiles: FileReference[]; count: number; message: string; }; export type RequiredUploadFilesOptions = UploadFilesOptions & Required>;