import { RTEBlock } from '../../blocks/block.abstract';
import { RTENode } from '../../nodes/node.abstract';
import { RTEFilterStyles, RTEFilterStylesStrategy } from '../filter-styles-strategy.abstract';
/**
 * Filter styles strategy for code block, which defines the styles to be filtered and the conditions for filtering and refilling styles for code blocks.
 */
export declare class CodeBlockFilterStylesStrategy extends RTEFilterStylesStrategy {
  static STYLES: RTEFilterStyles;
  protected stylesToBeFiltered: RTEFilterStyles;
  protected elementTagName: string;
  /**
   * @inheritDoc
   */
  canFilter(blockOrNodeInstance: RTEBlock | RTENode): boolean;
  /**
   * The code block styles is preset and will convert to vega-code-block element so we don't need to to refill styles back to element.
   *
   * @param {string} _blockOrNodeClassName The class name of the block or node.
   * @param {HTMLElement} _element The HTML element to check.
   * @returns {boolean} False, as we don't need to refill styles for code blocks.
   */
  canRefill(_blockOrNodeClassName: string, _element: HTMLElement): boolean;
  /**
   * @inheritDoc
   */
  toCssText(): string;
}
