import { RTEListBlock } from '../../../../dto/blocks/list-block';
import { RTEContentBlock, VegaRTETransformOptions } from '../../../../interface';
import { Nullable } from '../../../../../../types/general';
import { BlockToRTEBlockStrategyAbstract } from './block-to-rte-block-strategy.abstract';
/** Transform ul element to list block DTO */
export declare class UlToRTEListBlockStrategy extends BlockToRTEBlockStrategyAbstract {
  /**
   * Can be handle.
   *
   * @param {HTMLElement[]} elementsArray - Current elements.
   * @param {number} currentIndex - Current element index.
   * @returns {number} - can be handled element count.
   */
  canHandle(elementsArray: HTMLElement[], currentIndex: number): number;
  /**
   * Parse to a block.
   *
   * @param {HTMLElement[]} elementsArray - Current elements.
   * @param {VegaRTETransformOptions} [options] - Options for transformation.
   * @returns {Nullable<RTEContentBlock>} - Bullet list block.
   */
  handle(elementsArray: HTMLElement[], options?: VegaRTETransformOptions): Nullable<RTEContentBlock>;
  /**
   * Append child list item blocks to current list block.
   *
   * @param {RTEListBlock} currentBlock - Current list block.
   * @param {RTEContentBlock[]} childBlocks - Current list item blocks.
   */
  appendChildBlocks(currentBlock: RTEListBlock, childBlocks: RTEContentBlock[]): void;
  /**
   * Should continue process to child elements.
   *
   * @returns {boolean} - boolean.
   */
  shouldProceedToElementChildren(): boolean;
}
