import { IEditorTabRegistration } from "./IEditorTabRegistration"; import { EditorDisplayModes } from "./EditorSettings"; import { PageData, VersionedPageData, VersionId, Page } from "@omnia/wcm/models"; import { IEditorItemTitleRenderer } from "./IEditorItemTitleRenderer"; export interface IEditorItem { settings: { defaultDisplayMode: EditorDisplayModes; }; tabs: Array; title: string; titleRenderer?: IEditorItemTitleRenderer; onEditorActivation(): any; } export interface IPageEditorItem extends IEditorItem { pageVersion: VersionedPageData; page: Page; onPublish(): Promise; onDiscardChanges(): Promise; onDelete(): Promise; onCheckOut(): Promise; onTakeControlAndCheckOut(): Promise; onCheckIn(): Promise<{ checkedInVersion: VersionId; }>; onSaveState(): Promise; onApprove(): Promise; onReject(): Promise; onCancelApproval(): Promise; }