import type { HitTestOptions } from '../../page-block/edgeless/type.js'; import { Bound } from '../utils/bound.js'; import { PointLocation } from '../utils/point-location.js'; import type { IVec2 } from '../utils/vec.js'; import { type SerializedXYWH } from '../utils/xywh.js'; import { type BaseProps, ElementModel } from './base.js'; export type BrushProps = BaseProps & { /** * [[x0,y0],[x1,y1]...] */ points: number[][]; color: string; lineWidth: number; }; export declare class BrushElementModel extends ElementModel { static propsToY(props: BrushProps): BrushProps; points: number[][]; xywh: SerializedXYWH; rotate: number; color: string; lineWidth: number; get connectable(): boolean; get type(): string; hitTest(px: number, py: number, options?: HitTestOptions): boolean; containedByBounds(bounds: Bound): boolean; getNearestPoint(point: IVec2): IVec2; intersectWithLine(start: IVec2, end: IVec2): PointLocation[] | null; getRelativePointLocation(position: IVec2): PointLocation; } //# sourceMappingURL=brush.d.ts.map