import type { Schema } from '@overture-stack/lectern-client';
import type { SubmissionErrors } from '@overture-stack/lyric-data-model/models';
import { BaseDependencies } from '../../config/config.js';
import { CommitSubmissionParams, type EntityData, type FileSchemaMap, type ResultOnCommit, type SchemasDictionary, type ValidateFilesParams } from '../../utils/types.js';
declare const _default: {
    create: (dependencies: BaseDependencies) => {
        performCommitSubmissionAsync: (params: CommitSubmissionParams) => Promise<ResultOnCommit>;
        performDataValidation: (submissionId: number) => Promise<number>;
        processEditRecordsAsync: (records: Record<string, unknown>[], { schema, submissionId, username, }: {
            schema: Schema;
            submissionId: number;
            username: string;
        }) => Promise<void>;
        processInsertRecordsAsync: ({ records, schemasDictionary, submissionId, username, }: {
            records: EntityData;
            schemasDictionary: SchemasDictionary;
            submissionId: number;
            username: string;
        }) => Promise<void>;
        updateActiveSubmission: (input: {
            dictionaryId: number;
            idActiveSubmission: number;
            schemaErrors: SubmissionErrors;
        }) => Promise<number>;
        addFilesToSubmissionAsync: (fileSchemaMap: FileSchemaMap, params: ValidateFilesParams) => Promise<void>;
    };
};
export default _default;
