import { NodeSpec, Node } from 'prosemirror-model';
import { EditorImageState } from '../../../text-editor.types';
import { MarkdownSerializerState } from 'prosemirror-markdown';
import { Languages } from '../../../../date-picker/date.types';
export declare const imageCache: Map<string, HTMLImageElement>;
type MarkdownSerializerFunction = (state: MarkdownSerializerState, node: Node) => void;
/**
 *
 * @param language
 */
export declare function getImageNode(language: Languages): Record<string, NodeSpec>;
/**
 *
 * @param language
 */
export declare function getImageNodeMarkdownSerializer(language: Languages): Record<string, MarkdownSerializerFunction>;
/**
 *
 * @param img
 * @param node
 */
export declare function applyImageStyles(img: HTMLImageElement, node: Node): void;
/**
 * Recursively checks if a ProseMirror node or
 * any of its child nodes is an image node.
 * @param node
 */
export declare function hasImageNode(node: Node): boolean;
export interface ImageNodeAttrs {
    src: string;
    alt: string;
    state: EditorImageState;
    fileInfoId: string | number;
    height?: string;
    width?: string;
    minHeight?: string;
    minWidth?: string;
    maxWidth?: string;
}
export {};
//# sourceMappingURL=node.d.ts.map