import { SQON } from '@overture-stack/sqon-builder';
import { BaseDependencies } from '../../config/config.js';
import { type CreateSubmissionStatus, PaginationOptions, SubmittedDataResponse, type ViewType } from '../../utils/types.js';
declare const submittedData: (dependencies: BaseDependencies) => {
    deleteSubmittedDataBySystemId: (categoryId: number, systemId: string, username: string) => Promise<{
        description: string;
        inProcessEntities: string[];
        status: CreateSubmissionStatus;
        submissionId?: string;
    }>;
    editSubmittedData: ({ categoryId, entityName, organization, records, username, }: {
        categoryId: number;
        entityName: string;
        organization: string;
        records: Record<string, unknown>[];
        username: string;
    }) => Promise<{
        description?: string;
        submissionId?: number;
        status: string;
    }>;
    getSubmittedDataByCategory: (categoryId: number, paginationOptions: PaginationOptions, filterOptions: {
        entityName?: string[];
        view: ViewType;
    }) => Promise<{
        result: SubmittedDataResponse[];
        metadata: {
            totalRecords: number;
            errorMessage?: string;
        };
    }>;
    getSubmittedDataByOrganization: (categoryId: number, organization: string, paginationOptions: PaginationOptions, filterOptions: {
        sqon?: SQON;
        entityName?: string[];
        view: ViewType;
    }) => Promise<{
        result: SubmittedDataResponse[];
        metadata: {
            totalRecords: number;
            errorMessage?: string;
        };
    }>;
    getSubmittedDataBySystemId: (categoryId: number, systemId: string, filterOptions: {
        view: ViewType;
    }) => Promise<{
        result: SubmittedDataResponse | undefined;
        metadata: {
            errorMessage?: string;
        };
    }>;
};
export default submittedData;
