import { ITransactionItem } from './ITransactionItem.js'; import { IDesignItem } from '../../item/IDesignItem.js'; import { UndoChangeSource } from './IUndoChangeEvent.js'; import { IContentChanged } from '../InstanceServiceContainer.js'; export declare class ChangeGroup implements ITransactionItem { redoBranches?: ITransactionItem[][]; source: UndoChangeSource; private _contentChanges; title: string; get affectedItems(): IDesignItem[]; private commitHandler; private abortHandler; constructor(title: string, commitHandler: (transactionItem: ChangeGroup) => void, abortHandler: (transactionItem: ChangeGroup) => void, source?: UndoChangeSource); get contentChanges(): IContentChanged[] | null; do(): IContentChanged[] | null; undo(): IContentChanged[] | null; commit(): void; abort(): void; mergeWith(other: ITransactionItem): boolean; addCommitedSubchangeGroup(changeGroup: ChangeGroup): void; undoStack: ITransactionItem[]; redoStack: ITransactionItem[]; execute(item: ITransactionItem): IContentChanged[] | null; private _recordContentChanges; }