import { Settings } from '../types/index.js'; import { EnqueueFilesResult } from 'generaltranslation/types'; import { BranchData } from '../types/branch.js'; export type FileTranslationData = { [fileId: string]: { versionId: string; fileName: string; }; }; /** * Checks the status of translations and downloads them using a workflow pattern * @param fileVersionData - Mapping of file IDs to their version and name information * @param jobData - Optional job data from enqueue operation * @param locales - The locales to wait for * @param timeoutDuration - The timeout duration for the wait in seconds * @param resolveOutputPath - Function to resolve the output path for a given source path and locale * @param options - Settings configuration * @param forceRetranslation - Whether to force retranslation * @param forceDownload - Whether to force download even if file exists * @returns True if all translations are downloaded successfully, false otherwise */ export declare function runDownloadWorkflow({ fileVersionData, jobData, branchData, locales, timeoutDuration, resolveOutputPath, options, forceRetranslation, forceDownload, }: { fileVersionData: FileTranslationData; jobData: EnqueueFilesResult | undefined; branchData: BranchData | undefined; locales: string[]; timeoutDuration: number; resolveOutputPath: (sourcePath: string, locale: string) => string | null; options: Settings; forceRetranslation?: boolean; forceDownload?: boolean; }): Promise;