import { LitElement } from 'lit';
import { Ref } from 'lit/directives/ref.js';
import './components/placeholder';
import './components/knobs/textarea';
import { LanguageFn } from 'highlight.js';
export declare class AnnotativeBaseComponent extends LitElement {
    static styles: import("lit").CSSResult[];
    annotativeInnerRef: Ref<HTMLElement>;
    parentStyle: {
        fontSize: number;
        backgroundColor: string;
        width: number;
        height: number;
        paddingLeft: number;
        paddingRight: number;
    };
    private _showPopup;
    private _copyValue;
    protected hljs: any;
    protected contentsWithPlaceholders: (string | {
        key: any;
        config: any;
    })[];
    languageFn: LanguageFn;
    content: string;
    placeholder: {};
    themeCss: string;
    placeholderMask?: string | undefined;
    encloser?: string | undefined;
    styleMap?: {} | undefined;
    handleChange?: (detail: Record<string, any>) => any;
    constructor();
    protected _loadAndHighlightSyntax(): Promise<void>;
    protected _loadCss(): Promise<void>;
    private updated;
    private _getComputedStyle;
    connectedCallback(): void;
    disconnectedCallback(): void;
    private _insertPlaceholderKeysAndGetKeyIndexes;
    protected _highlight(contentWithPlaceholders: any): string;
    protected _createContentsWithPlaceholders(): (string | {
        key: any;
        config: any;
    })[];
    private _computeNewValueObj;
    private _onChange;
    private _onTriggerCopyPopup;
    render(): import("lit-html").TemplateResult<1>;
}
//# sourceMappingURL=annotative-base-component.d.ts.map