import { GraphicNode } from "./node/GraphicNode";
import { IPoint, NodeType } from "../idl";
import { AffineMatrix } from "../math";
import { TextCursorPosition } from "../renderText";
import { ShapeType } from "./base/ShapeType";
import { BorderProps } from "./props/BorderProps";
import { ColorProps } from "./props/ColorProps";
import { TextProps } from "./props/TextProps";
import { AbsProps } from "./props/AbsProps";
import { IRect, Point } from "../common";
import { AbsDrawer } from "./drawer/AbsDrawer";
import { TextParagraphProps } from "./props/TextParagraphProps";
import { TextParagraphQuoteProps } from "./props/TextParagraphQuoteProps";
import { GraphicTextNode } from "./node/GraphicTextNode";
import { RenderPlaceHolder } from "@/renderText/RenderPlaceHolder";
export declare class OolongNode extends GraphicTextNode {
    type: NodeType;
    transform: AffineMatrix;
    renderPlaceHolder: RenderPlaceHolder;
    static drawerMap: Map<ShapeType, AbsDrawer>;
    validShapeCode(shapeCode: number): boolean;
    get borderProps(): BorderProps;
    get colorProps(): ColorProps;
    get textProps(): TextProps;
    get paragraphProps(): TextParagraphProps;
    get paragraphQuoteProps(): TextParagraphQuoteProps;
    get shapeType(): ShapeType;
    get drawer(): AbsDrawer;
    constructor(id: string, ctx: CanvasRenderingContext2D);
    borderContains(globalPoint: IPoint, buffer: number): IPoint | null;
    updateProps(props: Partial<AbsProps>[]): void;
    /**
     * 是否需要进行编辑过程中位置矫正
     */
    modifyPosInEditing(cursor: TextCursorPosition): boolean;
    /**
     * 从编辑状态回复
     */
    resetFromEditing(): void;
    contains(point: Point): boolean;
    drawOnGLCtx(ctx: CanvasRenderingContext2D): void;
    protected drawText(ctx: CanvasRenderingContext2D): void;
    getStretchMinSize(): Point;
    getTextContentRect(): IRect;
    textClipRect(): IRect | null;
    isEmptyText(): boolean;
    getConnectAnchor(): IPoint[];
    canQuickCreate(): boolean;
    canBeConnected(): boolean;
    /**
     * 根据数据创建节点
     * @param id
     * @param type
     * @param zIndex
     * @param props
     * @param parent
     * @param ctx
     */
    static load(id: string, type: NodeType, zIndex: number, props: Partial<AbsProps>[], parent: GraphicNode, ctx: CanvasRenderingContext2D): OolongNode;
}
//# sourceMappingURL=OolongNode.d.ts.map