import { UmbControllerBase } from '../../../../libs/class-api/index.js'; import type { UmbContentRollbackRepository, UmbContentRollbackVersionDetailModel, UmbContentRollbackVersionItemModel } from '../../../content/content/index.js'; import type { UmbControllerHost } from '../../../../libs/controller-api/index.js'; /** * Repository for the element rollback feature. * @class UmbElementRollbackRepository * @augments {UmbControllerBase} * @implements {UmbContentRollbackRepository} */ export declare class UmbElementRollbackRepository extends UmbControllerBase implements UmbContentRollbackRepository { #private; /** * Creates an instance of UmbElementRollbackRepository. * @param {UmbControllerHost} host - The controller host for this controller to be appended to * @memberof UmbElementRollbackRepository */ constructor(host: UmbControllerHost); /** * Request the available versions for an element entity. * @param {string} id - The unique ID of the element * @param {string} [culture] - Optional culture to filter versions by * @returns {Promise<{ data?: { items: Array; total: number }; error?: unknown }>} The list of versions, or an error * @memberof UmbElementRollbackRepository */ requestVersionsByEntityId(id: string, culture?: string): Promise<{ data?: { items: Array; total: number; }; error?: unknown; }>; /** * Request the details of a specific version. * @param {string} id - The unique ID of the version * @returns {Promise<{ data?: UmbContentRollbackVersionDetailModel; error?: unknown }>} The version details, or an error * @memberof UmbElementRollbackRepository */ requestVersionById(id: string): Promise<{ data?: UmbContentRollbackVersionDetailModel; error?: unknown; }>; /** * Toggle whether a specific version is excluded from automatic content version cleanup. * @param {string} versionId - The unique ID of the version * @param {boolean} preventCleanup - `true` to prevent cleanup, `false` to allow it * @returns {*} The result of the operation * @memberof UmbElementRollbackRepository */ setPreventCleanup(versionId: string, preventCleanup: boolean): Promise>; /** * Roll the element back to a specific version. * @param {string} versionId - The unique ID of the version to roll back to * @param {string} [culture] - Optional culture to roll back * @returns {*} The result of the operation * @memberof UmbElementRollbackRepository */ rollback(versionId: string, culture?: string): Promise>; } export default UmbElementRollbackRepository;