import { type RenderContext } from "../types";
import { SyntaxStyle } from "../syntax-style";
import { TreeSitterClient } from "../lib/tree-sitter";
import { TextBufferRenderable, type TextBufferOptions } from "./TextBufferRenderable";
export interface CodeOptions extends TextBufferOptions {
    content?: string;
    filetype?: string;
    syntaxStyle: SyntaxStyle;
    treeSitterClient?: TreeSitterClient;
    conceal?: boolean;
    drawUnstyledText?: boolean;
}
export declare class CodeRenderable extends TextBufferRenderable {
    private _content;
    private _filetype?;
    private _syntaxStyle;
    private _isHighlighting;
    private _treeSitterClient;
    private _pendingRehighlight;
    private _pendingUpdate;
    private _currentHighlightId;
    private _conceal;
    private _drawUnstyledText;
    protected _contentDefaultOptions: {
        content: string;
        conceal: true;
        drawUnstyledText: true;
    };
    constructor(ctx: RenderContext, options: CodeOptions);
    get content(): string;
    set content(value: string);
    get filetype(): string | undefined;
    set filetype(value: string);
    get syntaxStyle(): SyntaxStyle;
    set syntaxStyle(value: SyntaxStyle);
    get conceal(): boolean;
    set conceal(value: boolean);
    get drawUnstyledText(): boolean;
    set drawUnstyledText(value: boolean);
    private scheduleUpdate;
    private updateContent;
    private fallback;
    private createFallbackStyledText;
    getLineHighlights(lineIdx: number): import("..").Highlight[];
}
