| import BoundingRect from './BoundingRect'; | 
| interface ExtendedCanvasRenderingContext2D extends CanvasRenderingContext2D { | 
|     dpr?: number; | 
| } | 
| export declare function normalizeArcAngles(angles: number[], anticlockwise: boolean): void; | 
| export default class PathProxy { | 
|     dpr: number; | 
|     data: number[] | Float32Array; | 
|     private _version; | 
|     private _saveData; | 
|     private _pendingPtX; | 
|     private _pendingPtY; | 
|     private _pendingPtDist; | 
|     private _ctx; | 
|     private _xi; | 
|     private _yi; | 
|     private _x0; | 
|     private _y0; | 
|     private _len; | 
|     private _pathSegLen; | 
|     private _pathLen; | 
|     private _ux; | 
|     private _uy; | 
|     static CMD: { | 
|         M: number; | 
|         L: number; | 
|         C: number; | 
|         Q: number; | 
|         A: number; | 
|         Z: number; | 
|         R: number; | 
|     }; | 
|     constructor(notSaveData?: boolean); | 
|     increaseVersion(): void; | 
|     getVersion(): number; | 
|     setScale(sx: number, sy: number, segmentIgnoreThreshold?: number): void; | 
|     setDPR(dpr: number): void; | 
|     setContext(ctx: ExtendedCanvasRenderingContext2D): void; | 
|     getContext(): ExtendedCanvasRenderingContext2D; | 
|     beginPath(): this; | 
|     reset(): void; | 
|     moveTo(x: number, y: number): this; | 
|     lineTo(x: number, y: number): this; | 
|     bezierCurveTo(x1: number, y1: number, x2: number, y2: number, x3: number, y3: number): this; | 
|     quadraticCurveTo(x1: number, y1: number, x2: number, y2: number): this; | 
|     arc(cx: number, cy: number, r: number, startAngle: number, endAngle: number, anticlockwise?: boolean): this; | 
|     arcTo(x1: number, y1: number, x2: number, y2: number, radius: number): this; | 
|     rect(x: number, y: number, w: number, h: number): this; | 
|     closePath(): this; | 
|     fill(ctx: CanvasRenderingContext2D): void; | 
|     stroke(ctx: CanvasRenderingContext2D): void; | 
|     len(): number; | 
|     setData(data: Float32Array | number[]): void; | 
|     appendPath(path: PathProxy | PathProxy[]): void; | 
|     addData(cmd: number, a?: number, b?: number, c?: number, d?: number, e?: number, f?: number, g?: number, h?: number): void; | 
|     private _drawPendingPt; | 
|     private _expandData; | 
|     toStatic(): void; | 
|     getBoundingRect(): BoundingRect; | 
|     private _calculateLength; | 
|     rebuildPath(ctx: PathRebuilder, percent: number): void; | 
|     clone(): PathProxy; | 
|     private static initDefaultProps; | 
| } | 
| export interface PathRebuilder { | 
|     moveTo(x: number, y: number): void; | 
|     lineTo(x: number, y: number): void; | 
|     bezierCurveTo(x: number, y: number, x2: number, y2: number, x3: number, y3: number): void; | 
|     quadraticCurveTo(x: number, y: number, x2: number, y2: number): void; | 
|     arc(cx: number, cy: number, r: number, startAngle: number, endAngle: number, anticlockwise: boolean): void; | 
|     ellipse(cx: number, cy: number, radiusX: number, radiusY: number, rotation: number, startAngle: number, endAngle: number, anticlockwise: boolean): void; | 
|     rect(x: number, y: number, width: number, height: number): void; | 
|     closePath(): void; | 
| } | 
| export {}; |