import { TextSegment } from 'pptx-viewer-core'; import { FieldSubstitutionContext, MobileSheetKey } from 'pptx-viewer-shared'; import { Translator } from '../../i18n/translator'; import { EditorState } from '../editor/editor-state.svelte'; import { ExportUiState } from '../export/export-ui.svelte'; import { ExportWiring } from '../export/export-wiring.svelte'; import { PresentationLoader } from './presentation-loader.svelte'; import { ViewerState } from './viewer-state.svelte'; export interface ExportNotesClusterDeps { editor: EditorState; loader: PresentationLoader; viewer: ViewerState; t: Translator; getSmartArt3D(): boolean; getSurfaceChart3D(): boolean; getBarChart3D(): boolean; getLineChart3D(): boolean; getAreaChart3D(): boolean; getPieChart3D(): boolean; getRootEl(): HTMLDivElement | undefined; /** Whether in-place editing is on (gates whether notes edits are history-tracked). */ getEditable(): boolean; /** * Deck-level field-substitution context, so an exported slide resolves its * slide-number / date / footer runs exactly like the on-screen stage does. */ getFieldContext?(): FieldSubstitutionContext; /** Host-supplied source file name, used to name the deck-JSON download. */ getFileName?(): string | undefined; onnotesupdate?: (notes: string) => void; } export interface ExportNotesCluster { exportWiring: ExportWiring; exportUi: ExportUiState; readonly notesExpanded: boolean; readonly activeMobileSheet: MobileSheetKey; onNotesToggle(): void; setActiveMobileSheet(next: MobileSheetKey): void; onNotesCommit(notes: string, segments?: TextSegment[]): void; } /** * PNG/PDF/GIF/video/print export wiring + the speaker-notes / mobile * action-sheet toggle state. Split out of `createViewerState` to keep that * file under the repo's file-size budget; grouped together because both are * "output" concerns with no further downstream dependents in this module. */ export declare function buildExportNotesCluster(deps: ExportNotesClusterDeps): ExportNotesCluster; //# sourceMappingURL=create-viewer-state-export-notes.svelte.d.ts.map