import { Ref } from 'vue'; import { CanvasElementData, CanvasSlideData, CanvasState, RemoteLibraryConfig, CanvasParams, CanvasEventName } from '../types'; export declare function useDataIO(state: CanvasState, getParams: () => CanvasParams, setParams: (params: Partial) => void, saveState: () => void, clearSelection: () => void, canvasEmit: (event: CanvasEventName, ...args: any[]) => void, loadElements: (components: Record) => void, editorRef: Ref): { getData: () => any; getElementData: () => CanvasElementData[]; loadData: (data: CanvasElementData[] | any) => void; setProjectMeta: (payload: { id?: string; meta?: Record; }) => void; loadSlides: (slides: CanvasSlideData[]) => void; clearData: () => void; exportData: (options?: { format?: "json" | "png" | "svg" | "blob" | "jpeg"; download?: boolean; selectionOnly?: boolean; quality?: number; scale?: number; }) => Promise; copyToPng: (options?: { selectIds?: string[]; background?: string; scale?: number; }) => Promise; copyToSvg: (options?: { selectIds?: string[]; background?: string; scale?: number; }) => Promise; loadRemoteLibrary: (config: RemoteLibraryConfig) => Promise; initWorkspace: (props?: { initialElements?: CanvasElementData[]; ratio?: any; }) => void; saveToStorage: (type?: "autosave" | "manual") => boolean; loadFromStorage: (type?: "autosave" | "manual") => boolean; };