import type { CommonArgs } from '../../components/common';
import type { AST, RefractorNode } from 'refractor';
/**
 * Utils shared between EuiCode and EuiCodeBlock
 */
export type EuiCodeSharedProps = CommonArgs & {
    /**
     * Sets the syntax highlighting for a specific language
     * @see [https://prismjs.com/#supported-languages](https://prismjs.com/#supported-languages) for options
     */
    language?: string;
    transparentBackground?: boolean;
};
export declare const SUPPORTED_LANGUAGES: string[];
export declare const DEFAULT_LANGUAGE = "text";
export declare const checkSupportedLanguage: (language: string) => string;
export interface DynamicComponent {
}
export declare const getHtmlContent: (nodes: RefractorNode[]) => {
    element: HTMLElement;
    components: DynamicComponent[];
};
export declare const isAstElement: (node: RefractorNode) => node is AST.Element;
interface LineNumbersConfig {
    start: number;
    show: boolean;
    highlight?: string;
}
export declare const parseLineRanges: (ranges: string) => number[];
export declare const highlightByLine: (children: string, language: string, data: LineNumbersConfig) => RefractorNode[];
export {};
//# sourceMappingURL=utils.d.ts.map