/**
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
*/
/**
* @module revision-history/ui/revision/revisionview
*/
import type { BaseEvent, Locale } from "@ckeditor/ckeditor5-utils";
import { View, type DropdownView } from "@ckeditor/ckeditor5-ui";
import { type ConfirmMixinConstructor } from "@ckeditor/ckeditor5-collaboration-core";
import { RevisionNameView } from "./revisionnameview.js";
import "../../../theme/revision/revision.css";
import type { Revision } from "../../revision.js";
import type { RevisionAction } from "../revisionssidebar/revisionssidebar.js";
declare const RevisionViewBase: ConfirmMixinConstructor<typeof View>;
/**
* TODO
*/
export declare class RevisionView extends RevisionViewBase {
	id: string;
	revisionNameView: RevisionNameView;
	/**
	* It holds the revision actions drop-down view if actions are provided,
	* or just empty text otherwise.
	*/
	revisionActionsView: DropdownView | "";
	/**
	* @observable
	*/
	name: string;
	/**
	* @observable
	*/
	createdAt: Date;
	/**
	* @observable
	*/
	isSelected: boolean;
	/**
	* @observable
	*/
	isHighlighted: boolean;
	/**
	* @observable
	*/
	isActionsDropdownOpen: boolean;
	/**
	* @observable
	*/
	isReady: boolean;
	/**
	* @observable
	*/
	isEnabled: boolean;
	constructor(locale: Locale, revision: Revision, revisionActions: Array<RevisionAction>, requireRevisionName: boolean);
	/**
	* @inheritDoc
	*/
	override render(): void;
	/**
	* TODO
	*/
	select(): void;
	/**
	* TODO
	*/
	deselect(): void;
	/**
	* TODO
	*/
	highlight(): void;
	/**
	* TODO
	*/
	unhighlight(): void;
}
/**
* @eventName setName | revisionSetName
*/
export interface RevisionSetNameEvent extends BaseEvent {
	name: "setName" | "revisionSetName";
	args: [{
		id: string;
		name: string;
	}];
}
/**
* @eventName select | revisionSelected
*/
export interface RevisionSelectedEvent extends BaseEvent {
	name: "select" | "revisionSelected";
	args: [{
		id: string;
	}];
}
export {};
