import type { UmbRecycleBinRepository } from './recycle-bin-repository.interface.js'; import type { UmbRecycleBinDataSourceConstructor } from './recycle-bin-data-source.interface.js'; import type { UmbRecycleBinOriginalParentRequestArgs, UmbRecycleBinRestoreRequestArgs, UmbRecycleBinTrashRequestArgs } from './types.js'; import type { UmbControllerHost } from '../../../libs/controller-api/index.js'; import { UmbRepositoryBase } from '../repository/index.js'; import type { UmbRepositoryErrorResponse, UmbRepositoryResponse } from '../repository/index.js'; /** * Base class for recycle bin repositories. * @abstract * @class UmbRecycleBinRepositoryBase * @augments {UmbRepositoryBase} * @implements {UmbRecycleBinRepository} */ export declare abstract class UmbRecycleBinRepositoryBase extends UmbRepositoryBase implements UmbRecycleBinRepository { #private; /** * Creates an instance of UmbRecycleBinRepositoryBase. * @param {UmbControllerHost} host - The controller host for this controller to be appended to * @param {UmbRecycleBinDataSourceConstructor} recycleBinSource - The data source constructor for the recycle bin * @memberof UmbRecycleBinRepositoryBase */ constructor(host: UmbControllerHost, recycleBinSource: UmbRecycleBinDataSourceConstructor); /** * Requests to trash an item. * @param {UmbRecycleBinTrashRequestArgs} args - The item to trash * @returns {Promise} The result of the trash request * @memberof UmbRecycleBinRepositoryBase */ requestTrash(args: UmbRecycleBinTrashRequestArgs): Promise; /** * Requests to restore an item. * @param {UmbRecycleBinRestoreRequestArgs} args - The item to restore * @returns {Promise} The result of the restore request * @memberof UmbRecycleBinRepositoryBase */ requestRestore(args: UmbRecycleBinRestoreRequestArgs): Promise; /** * Requests to empty the recycle bin. * @returns {Promise} The result of the empty request * @memberof UmbRecycleBinRepositoryBase */ requestEmpty(): Promise; /** * Requests the original parent of an item. * @param {UmbRecycleBinOriginalParentRequestArgs} args - The item to find the original parent for * @returns {Promise>} The original parent of the item * @memberof UmbRecycleBinRepositoryBase */ requestOriginalParent(args: UmbRecycleBinOriginalParentRequestArgs): Promise>; }