import { IRectType, IUpdateNodeOpt, BaseNodeMapItem, ISVGOptions } from "../types"; import { EPostMessageType, EScaleType, EToolsKey } from "../enum"; import { Point2d } from "../utils/primitives/Point2d"; import { BaseShapeTool } from "./base"; import { VNodeManager } from "../vNodeManager"; import { ShapeNodes } from "./utils"; import { ISVGShadowShapeToolProps } from "../../component/svg/base"; export declare class ISvgShadowShape extends BaseShapeTool { readonly canRotate: boolean; readonly scaleType: EScaleType; readonly toolsType: EToolsKey; protected tmpPoints: Array; protected workOptions: ISVGOptions; oldRect?: IRectType; constructor(props: ISVGShadowShapeToolProps); consume(): { type: EPostMessageType; }; consumeAll(): { type: EPostMessageType; }; private draw; consumeService(props: { isFullWork: boolean; replaceId?: string; }): IRectType | undefined; clearTmpPoints(): void; static getScaleType(opt: ISVGOptions): EScaleType.all | EScaleType.proportional; static updateNodeOpt(param: { node: ShapeNodes; opt: IUpdateNodeOpt; vNodes: VNodeManager; willSerializeData?: boolean; targetNode?: BaseNodeMapItem; }): IRectType | undefined; }