import { NodeTypeEnum } from './node.abstract';
import { RTEImageBlock } from '../blocks/image-block';
import { RTENodeAnnotationMapKey, RTENodeAnnotationMapValue, VegaRTETransformOptions, VegaRTEImageNode } from '../../interface';
import { ImageAnnotationAction } from '../actions/image-annotation-action';
import { ModifyContentAction } from '../actions/modify-content-action.abstract';
import { RTEDecoratorNode } from './decorator-node';
/**
 * Image node
 */
export declare class RTEImageNode extends RTEDecoratorNode<RTEImageBlock> {
  readonly type: NodeTypeEnum;
  parent: RTEImageBlock;
  url: string;
  constructor(id: string, url: string, parentBlock: RTEImageBlock, annotationMap?: Map<RTENodeAnnotationMapKey, RTENodeAnnotationMapValue>);
  /**
   * Converts a VegaRTEImageNode into an RTEImageNode by mapping nodes and creating annotations.
   *
   * @param {VegaRTEImageNode} node - The node to be converted.
   * @param {RTEImageBlock} parentBlock - The parent block
   * @param {VegaRTETransformOptions} options - Optional transformation options.
   * @returns {RTEImageNode} An instance of `RTEImageBlock`
   */
  static from(node: VegaRTEImageNode, parentBlock: RTEImageBlock, options?: VegaRTETransformOptions): RTEImageNode;
  /**
   * @inheritDoc
   */
  toJSON(): VegaRTEImageNode;
  /**
   * @inheritDoc
   */
  clone(parent: RTEImageBlock): RTEImageNode;
  /**
   * @inheritDoc
   */
  toHtml(options?: VegaRTETransformOptions): string;
  /**
   * @inheritDoc
   */
  protected doAnnotationActionApply(action: ImageAnnotationAction): void;
  /**
   * @inheritDoc
   */
  protected doModifyActionApply(action: ModifyContentAction): void;
}
