import { Nullable } from '../../../../../../types/general';
import { RTEListItemBlock } from '../../../../dto/blocks/list-item-block';
import { RTEContentBlock, VegaRTETransformOptions } from '../../../../interface';
import { BlockToRTEBlockStrategyAbstract } from './block-to-rte-block-strategy.abstract';
/** Transform li element to list item block DTO */
export declare class LiToRTEListItemBlockStrategy extends BlockToRTEBlockStrategyAbstract {
  /**
   * Can be handled.
   *
   * @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 list item block.
   *
   * @param {HTMLElement[]} elementsArray - Current elements.
   * @param {VegaRTETransformOptions} [options] - Options for transformation.
   * @returns {Nullable<RTEContentBlock>} - List item block.
   */
  handle(elementsArray: HTMLElement[], options: VegaRTETransformOptions): Nullable<RTEContentBlock>;
  /**
   * Append child list blocks to current list item block.
   *
   * @param {RTEListBlock} currentBlock - Current list item block.
   * @param {RTEListItemBlock[]} childBlocks - Current list blocks.
   */
  appendChildBlocks(currentBlock: RTEListItemBlock, childBlocks: RTEContentBlock[]): void;
  /**
   * Should continue process to child elements.
   *
   * @returns {boolean} - boolean.
   */
  shouldProceedToElementChildren(): boolean;
  /**
   * Generate list block from a list of HTML elements.
   *
   * @param {HTMLElement[]} elements - List of HTML elements to convert.
   * @param {VegaRTETransformOptions} options - Options for transformation.
   * @returns {RTEListBlock} - List block DTO.
   */
  private generateWithListBlock;
  /**
   * Generate list item block DTO from an HTML element.
   *
   * @param {HTMLElement} element - HTML element to convert.
   * @param {VegaRTETransformOptions} options - Options for transformation.
   * @returns {VegaRTEListItemBlock} - List item block DTO.
   */
  private generateListItemBlockDTO;
}
