import { FormTranslationService } from '../services';
import { UpdateFormTranslationDto, BatchImportTranslationsDto } from '../dto';
export declare class FormTranslationsController {
    private readonly formTranslationService;
    constructor(formTranslationService: FormTranslationService);
    findAll(formIdentifier: string, version: number): Promise<{
        items: {
            id: string;
            createdAt: Date;
            updatedAt: Date;
            locale: string;
            versionId: string;
            translations: import("@prisma/client/runtime/library").JsonValue;
        }[];
    }>;
    findOne(formIdentifier: string, version: number, locale: string): Promise<{
        id: string;
        createdAt: Date;
        updatedAt: Date;
        locale: string;
        versionId: string;
        translations: import("@prisma/client/runtime/library").JsonValue;
    }>;
    upsert(formIdentifier: string, version: number, locale: string, dto: UpdateFormTranslationDto): Promise<{
        id: string;
        createdAt: Date;
        updatedAt: Date;
        locale: string;
        versionId: string;
        translations: import("@prisma/client/runtime/library").JsonValue;
    }>;
    remove(formIdentifier: string, version: number, locale: string): Promise<{
        id: string;
        locale: string;
        deleted: boolean;
    }>;
    checkCompleteness(formIdentifier: string, version: number, locale: string): Promise<{
        locale: string;
        isComplete: boolean;
        coverage: number;
        totalRequired: number;
        translated: number;
        missingKeys: string[];
    }>;
    batchImport(formIdentifier: string, version: number, dto: BatchImportTranslationsDto): Promise<{
        imported: number;
        created: number;
        updated: number;
        failed: number;
        errors: {
            locale: string;
            error: string;
        }[];
    }>;
}
