import * as Y from 'yjs';
import { ElementModel } from './ElementModel';
import { EditorConfig } from '../../edit/EditorConfig';
import { LiveCursor } from '../../LiveCursor';
export declare class PointTextModel extends ElementModel<paper.PointText> {
    item: paper.PointText | null;
    protected clearLocalPointsWhenYPointsChange: boolean;
    protected shouldUseLocalPoints: boolean;
    protected localPointsPick: number;
    set content(value: string);
    get content(): string;
    get fontSize(): number;
    set fontSize(value: number);
    get fontFamily(): string;
    set fontFamily(value: string);
    private get drawPoints();
    constructor(root: Y.Map<any>, scope: paper.PaperScope, liveCursor: LiveCursor, isPerformanceMode: () => boolean);
    private handleTextPropChange;
    protected subDispose(): void;
    protected subBindObserver(): void;
    protected liveCursorPoint(): paper.Point | null;
    getInternalMeasurement(): {
        scaleX: number;
        topLeft: paper.Point;
        topRight: paper.Point;
        angle: number;
        bounds: paper.Rectangle;
    } | null;
    private updateTextPosition;
    editorConfig(): EditorConfig;
    createPaperItem(): void;
    protected onVectorUpdate(): void;
    protected vectorKeys(): string[];
    protected styleKeys(): {
        include: string[];
        exclude: string[];
    };
    protected onStyleKeyUpdate(key: string): void;
}
//# sourceMappingURL=PointTextModel.d.ts.map