import { CSSProperties } from 'react';
import { default as ReactQuill } from 'react-quill-new';
import { TAEditorSize, TAEditorType } from '../core/AEditor.types';
import { IAEditorRuntime, IAEditorRuntimeSnapshot } from './AEditorRuntime';
import { QuillFullscreenButtonOptions } from '../modules/FullscreenController';
interface CreateDefaultModulesParams {
    icons: ToolbarIcons;
    noImageResize?: boolean;
    runtime: IAEditorRuntime;
    type: TAEditorType;
}
export interface ToolbarIcons {
    arrow: string;
    maximize: string;
    minimize: string;
    table: string;
}
export interface DestroyableModule {
    destroy?: () => void;
}
export interface ClipboardModule {
    copyContent: (options?: import('../modules/Copy').IClipboardOptions) => Promise<boolean>;
}
export declare const DEFAULT_CUSTOM_MODULE_NAMES: readonly ["copy", "toggleFullscreen", "imageCompress", "resize", "clipboard"];
export declare function createToggleFullscreenOptions({ icons, type, }: Pick<CreateDefaultModulesParams, 'icons' | 'type'>): QuillFullscreenButtonOptions;
export declare function createToolbarIcons(toolbarSize: TAEditorSize): ToolbarIcons;
export declare function createEditorCssVariables(isTitleMode: boolean, toolbarSize: TAEditorSize, icons: ToolbarIcons): CSSProperties;
export declare function resolveQuillModules(params: {
    icons: ToolbarIcons;
    isReadonly: boolean;
    isTitleMode: boolean;
    noImageResize?: boolean;
    runtime: IAEditorRuntimeSnapshot;
    type: TAEditorType;
}): ReactQuill.ReactQuillProps['modules'] | undefined;
export {};
