export type ExportTask = {
    /**
     * The item class name for which data will be exported in batch.
     */
    className?: string;
    /**
     * The file content type.
     */
    contentType?: string;
    /**
     * The end time of export task operation.
     */
    endTime?: string;
    /**
     * The error message in case of export task's failed execution.
     */
    errorMessage?: string;
    /**
     * The optional external key of this account.
     */
    externalReferenceCode?: string;
    /**
     * The task's ID.
     */
    id?: number;
    /**
     * Number of items processed by export task opeartion.
     */
    processedItemsCount?: number;
    /**
     * The start time of export task operation.
     */
    startTime?: string;
    /**
     * Total number of items that will be processed by export task operation.
     */
    totalItemsCount?: number;
    readonly 'x-class-name'?: string;
    /**
     * The status of export task's execution.
     */
    executeStatus?: 'COMPLETED' | 'FAILED' | 'INITIAL' | 'STARTED';
};
export type FailedItem = {
    /**
     * The item which failed to be imported.
     */
    item?: string;
    /**
     * Position of the item in the import file. For CSV file it will represent a line number, for JSON file it will represent an array index etc.
     */
    itemIndex?: number;
    /**
     * Message describing the reason of import failure.
     */
    message?: string;
    readonly 'x-class-name'?: string;
};
export type ImportTask = {
    /**
     * The item class name for which data will be processed in batch.
     */
    className?: string;
    /**
     * The file content type.
     */
    contentType?: string;
    /**
     * The end time of import task operation.
     */
    endTime?: string;
    /**
     * The error message in case of import task's failed execution.
     */
    errorMessage?: string;
    /**
     * The optional external key of this account.
     */
    externalReferenceCode?: string;
    failedItems?: Array<FailedItem>;
    /**
     * The task's ID.
     */
    id?: number;
    /**
     * Number of items processed by import task opeartion.
     */
    processedItemsCount?: number;
    /**
     * The start time of import task operation.
     */
    startTime?: string;
    /**
     * Total number of items that will be processed by import task operation.
     */
    totalItemsCount?: number;
    readonly 'x-class-name'?: string;
    /**
     * The status of import task's execution.
     */
    executeStatus?: 'COMPLETED' | 'FAILED' | 'INITIAL' | 'STARTED';
    /**
     * Defines if import task will fail when error occurs or continue importing rest of the items.
     */
    importStrategy?: 'ON_ERROR_CONTINUE' | 'ON_ERROR_FAIL';
    /**
     * The operation of import task.
     */
    operation?: 'CREATE' | 'DELETE' | 'UPDATE';
};
export type DeleteImportTaskRequestBody = {
    /**
     * File
     */
    file?: Blob | File;
};
export type MultipartBody = {
    values?: {
        [key: string]: string;
    };
};
export type PostImportTaskRequestBody = {
    /**
     * File
     */
    file?: Blob | File;
};
export type PutImportTaskRequestBody = {
    /**
     * File
     */
    file?: Blob | File;
};
export type GetExportTaskData = {
    body?: never;
    path: {
        exportTaskId: string;
    };
    query?: never;
    url: '/o/headless-batch-engine/v1.0/export-task/{exportTaskId}';
};
export type GetExportTaskResponses = {
    /**
     * default response
     */
    default: ExportTask;
};
export type GetExportTaskResponse = GetExportTaskResponses[keyof GetExportTaskResponses];
export type GetExportTaskByExternalReferenceCodeData = {
    body?: never;
    path: {
        externalReferenceCode: string;
    };
    query?: never;
    url: '/o/headless-batch-engine/v1.0/export-task/by-external-reference-code/{externalReferenceCode}';
};
export type GetExportTaskByExternalReferenceCodeResponses = {
    /**
     * default response
     */
    default: ExportTask;
};
export type GetExportTaskByExternalReferenceCodeResponse = GetExportTaskByExternalReferenceCodeResponses[keyof GetExportTaskByExternalReferenceCodeResponses];
export type GetExportTaskByExternalReferenceCodeContentData = {
    body?: never;
    path: {
        externalReferenceCode: string;
    };
    query?: never;
    url: '/o/headless-batch-engine/v1.0/export-task/by-external-reference-code/{externalReferenceCode}/content';
};
export type GetExportTaskByExternalReferenceCodeContentResponses = {
    /**
     * default response
     */
    default: Blob | File;
};
export type GetExportTaskByExternalReferenceCodeContentResponse = GetExportTaskByExternalReferenceCodeContentResponses[keyof GetExportTaskByExternalReferenceCodeContentResponses];
export type GetExportTaskContentData = {
    body?: never;
    path: {
        exportTaskId: string;
    };
    query?: never;
    url: '/o/headless-batch-engine/v1.0/export-task/{exportTaskId}/content';
};
export type GetExportTaskContentResponses = {
    /**
     * default response
     */
    default: Blob | File;
};
export type GetExportTaskContentResponse = GetExportTaskContentResponses[keyof GetExportTaskContentResponses];
export type PostExportTaskData = {
    body?: never;
    path: {
        className: string;
        contentType: string;
    };
    query?: {
        batchNestedFields?: string;
        callbackURL?: string;
        externalReferenceCode?: string;
        fieldNames?: string;
        taskItemDelegateName?: string;
    };
    url: '/o/headless-batch-engine/v1.0/export-task/{className}/{contentType}';
};
export type PostExportTaskResponses = {
    /**
     * default response
     */
    default: ExportTask;
};
export type PostExportTaskResponse = PostExportTaskResponses[keyof PostExportTaskResponses];
export type DeleteImportTask1Data = {
    body?: ImportTask;
    path: {
        className: string;
    };
    query?: {
        callbackURL?: string;
        externalReferenceCode?: string;
        importStrategy?: string;
        taskItemDelegateName?: string;
    };
    url: '/o/headless-batch-engine/v1.0/import-task/{className}';
};
export type DeleteImportTask1Responses = {
    /**
     * default response
     */
    default: ImportTask;
};
export type DeleteImportTask1Response = DeleteImportTask1Responses[keyof DeleteImportTask1Responses];
export type PostImportTask1Data = {
    body?: ImportTask;
    path: {
        className: string;
    };
    query?: {
        batchExternalReferenceCode?: string;
        batchRestrictFields?: string;
        callbackURL?: string;
        createStrategy?: string;
        externalReferenceCode?: string;
        fieldNameMapping?: string;
        importStrategy?: string;
        taskItemDelegateName?: string;
    };
    url: '/o/headless-batch-engine/v1.0/import-task/{className}';
};
export type PostImportTask1Responses = {
    /**
     * default response
     */
    default: ImportTask;
};
export type PostImportTask1Response = PostImportTask1Responses[keyof PostImportTask1Responses];
export type PutImportTask1Data = {
    body?: ImportTask;
    path: {
        className: string;
    };
    query?: {
        callbackURL?: string;
        externalReferenceCode?: string;
        importStrategy?: string;
        taskItemDelegateName?: string;
        updateStrategy?: string;
    };
    url: '/o/headless-batch-engine/v1.0/import-task/{className}';
};
export type PutImportTask1Responses = {
    /**
     * default response
     */
    default: ImportTask;
};
export type PutImportTask1Response = PutImportTask1Responses[keyof PutImportTask1Responses];
export type GetImportTaskData = {
    body?: never;
    path: {
        importTaskId: string;
    };
    query?: never;
    url: '/o/headless-batch-engine/v1.0/import-task/{importTaskId}';
};
export type GetImportTaskResponses = {
    /**
     * default response
     */
    default: ImportTask;
};
export type GetImportTaskResponse = GetImportTaskResponses[keyof GetImportTaskResponses];
export type GetImportTaskByExternalReferenceCodeData = {
    body?: never;
    path: {
        externalReferenceCode: string;
    };
    query?: never;
    url: '/o/headless-batch-engine/v1.0/import-task/by-external-reference-code/{externalReferenceCode}';
};
export type GetImportTaskByExternalReferenceCodeResponses = {
    /**
     * default response
     */
    default: ImportTask;
};
export type GetImportTaskByExternalReferenceCodeResponse = GetImportTaskByExternalReferenceCodeResponses[keyof GetImportTaskByExternalReferenceCodeResponses];
export type GetImportTaskByExternalReferenceCodeContentData = {
    body?: never;
    path: {
        externalReferenceCode: string;
    };
    query?: never;
    url: '/o/headless-batch-engine/v1.0/import-task/by-external-reference-code/{externalReferenceCode}/content';
};
export type GetImportTaskByExternalReferenceCodeContentResponses = {
    /**
     * default response
     */
    default: Blob | File;
};
export type GetImportTaskByExternalReferenceCodeContentResponse = GetImportTaskByExternalReferenceCodeContentResponses[keyof GetImportTaskByExternalReferenceCodeContentResponses];
export type GetImportTaskByExternalReferenceCodeFailedItemReportData = {
    body?: never;
    path: {
        externalReferenceCode: string;
    };
    query?: never;
    url: '/o/headless-batch-engine/v1.0/import-task/by-external-reference-code/{externalReferenceCode}/failed-items/report';
};
export type GetImportTaskByExternalReferenceCodeFailedItemReportResponses = {
    /**
     * default response
     */
    default: Blob | File;
};
export type GetImportTaskByExternalReferenceCodeFailedItemReportResponse = GetImportTaskByExternalReferenceCodeFailedItemReportResponses[keyof GetImportTaskByExternalReferenceCodeFailedItemReportResponses];
export type GetImportTaskContentData = {
    body?: never;
    path: {
        importTaskId: string;
    };
    query?: never;
    url: '/o/headless-batch-engine/v1.0/import-task/{importTaskId}/content';
};
export type GetImportTaskContentResponses = {
    /**
     * default response
     */
    default: Blob | File;
};
export type GetImportTaskContentResponse = GetImportTaskContentResponses[keyof GetImportTaskContentResponses];
export type GetImportTaskFailedItemReportData = {
    body?: never;
    path: {
        importTaskId: string;
    };
    query?: never;
    url: '/o/headless-batch-engine/v1.0/import-task/{importTaskId}/failed-items/report';
};
export type GetImportTaskFailedItemReportResponses = {
    /**
     * default response
     */
    default: Blob | File;
};
export type GetImportTaskFailedItemReportResponse = GetImportTaskFailedItemReportResponses[keyof GetImportTaskFailedItemReportResponses];
export type ClientOptions = {
    baseUrl: 'http://localhost:8080' | (string & {});
};
