import type { editor } from 'monaco-editor';
import type { BookEditorMonacoOnFileUpload } from './useBookEditorMonacoUploads/bookEditorMonacoUploadTypes';
export type { UploadItem, UploadStats } from './useBookEditorMonacoUploads/bookEditorMonacoUploadTypes';
/**
 * Type describing monaco editor.
 */
type MonacoEditor = typeof import('monaco-editor');
/**
 * Props for use book editor monaco uploads.
 */
type UseBookEditorMonacoUploadsProps = {
    readonly editor: editor.IStandaloneCodeEditor | null;
    readonly monaco: MonacoEditor | null;
    readonly onFileUpload?: BookEditorMonacoOnFileUpload;
};
/**
 * Handles file uploads and placeholder rendering inside `BookEditorMonaco`.
 *
 * @private function of BookEditorMonaco
 */
export declare function useBookEditorMonacoUploads({ editor, monaco, onFileUpload }: UseBookEditorMonacoUploadsProps): {
    activeUploadItems: import("./useBookEditorMonacoUploads/bookEditorMonacoUploadTypes").UploadItem[];
    uploadItems: import("./useBookEditorMonacoUploads/bookEditorMonacoUploadTypes").UploadItem[];
    uploadStats: import("./useBookEditorMonacoUploads/bookEditorMonacoUploadTypes").UploadStats;
    handleFiles: (files: File[]) => Promise<void>;
    pauseUpload: (uploadId: string) => void;
    resumeUpload: (uploadId: string) => void;
};
