import { Node } from '../../types/Node'; import { Point } from '../../types/Point'; import { ShapeStyle } from '../../styles/ShapeStyle'; import { Renderer } from '../Renderer'; declare abstract class ShapeRenderer extends Renderer { static defaultFill: string; static defaultStroke: string; static defaultStrokeDash: null; static defaultStrokeWidth: number; protected _nodes: Node[]; fill: string | null; stroke: string | null; strokeDash: number[] | null; strokeWidth: number | null; protected constructor(style?: ShapeStyle); abstract containsPoint(node: Node, x: number, y: number, scale?: number): boolean; abstract intersect(angle: number): Point; abstract selfLoopPoints(node: Node): Point[]; nodes(): Node[]; nodes(points: Node[]): this; protected _doStrokeAndFill(context: CanvasRenderingContext2D): void; } export { ShapeRenderer };