import { UseCase } from '../../../core/domain/useCases/UseCase'; import { IDatasetsRepository } from '../repositories/IDatasetsRepository'; import { DatasetDeaccessionDTO } from '../dtos/DatasetDeaccessionDTO'; import { DatasetNotNumberedVersion } from '../models/DatasetNotNumberedVersion'; export declare class DeaccessionDataset implements UseCase { private datasetsRepository; constructor(datasetsRepository: IDatasetsRepository); /** * Deaccession a dataset, given a dataset id, a dataset version id, and a DatasetDeaccessionDTO object. * @param {number | string} [datasetId] - The dataset identifier, which can be a string (for persistent identifiers), or a number (for numeric identifiers). * @param {string | DatasetNotNumberedVersion} [datasetVersionId] - The dataset version identifier, which can be a version-specific numeric string (for example, 1.0) or a DatasetNotNumberedVersion enum value. * @returns A promise that resolves when the dataset is deaccessioned * @throws An error if the dataset could not be deaccessioned */ execute(datasetId: number | string, datasetVersionId: string | DatasetNotNumberedVersion, DatasetDeaccessionDTO: DatasetDeaccessionDTO): Promise; }