1 import type { SerializedEditorState } from 'lexical'
2 import type { DocumentMetaInterface, DocumentRole } from '@proton/docs-shared'
4 ClientRequiresEditorMethods,
5 DataTypesThatDocumentCanBeExportedAs,
8 } from '@proton/docs-shared'
10 export interface AnyDocControllerInterface {
12 get role(): DocumentRole
13 editorIsReadyToReceiveInvocations(editorInvoker: ClientRequiresEditorMethods): Promise<void>
14 editorReportingEvent(event: EditorEvent, data: EditorEventData[EditorEvent]): Promise<void>
15 getDocumentClientId(): Promise<number | undefined>
16 exportData(format: DataTypesThatDocumentCanBeExportedAs): Promise<Uint8Array>
17 exportAndDownload(format: DataTypesThatDocumentCanBeExportedAs): Promise<void>
18 printAsPDF(): Promise<void>
19 getEditorJSON(): Promise<SerializedEditorState | undefined>
20 toggleDebugTreeView(): Promise<void>
21 getSureDocument(): DocumentMetaInterface