UNPKG

@g20/graphics

Version:
93 lines (88 loc) 2.55 kB
import { PathOptions, Color, VectorLike, SpinorLike, Path, Board } from '@g20/core'; interface RegularPolygonOptions extends PathOptions { id?: string; fillColor?: Color; fillOpacity?: number; opacity?: number; position?: VectorLike; attitude?: SpinorLike; radius?: number; sides?: number; strokeColor?: Color; strokeOpacity?: number; strokeWidth?: number; twist?: number; visibility?: "visible" | "hidden" | "collapse"; } declare class RegularPolygon extends Path { #private; constructor(owner: Board, options?: RegularPolygonOptions); dispose(): void; update(): this; flagReset(dirtyFlag?: boolean): this; get radius(): number; set radius(radius: number); get sides(): number; set sides(sides: number); get twist(): number; set twist(twist: number); } interface RoundedRectangleOptions extends PathOptions { id?: string; fillColor?: Color; fillOpacity?: number; opacity?: number; position?: VectorLike; attitude?: SpinorLike; radius?: number; strokeColor?: Color; strokeOpacity?: number; strokeWidth?: number; visibility?: "visible" | "hidden" | "collapse"; height?: number; width?: number; } declare class RoundedRectangle extends Path { #private; constructor(owner: Board, options?: RoundedRectangleOptions); dispose(): void; update(): this; get width(): number; set width(width: number); get height(): number; set height(height: number); get radius(): number; set radius(radius: number); } interface StarOptions extends PathOptions { id?: string; fillColor?: Color; fillOpacity?: number; opacity?: number; position?: VectorLike; attitude?: SpinorLike; radius?: number; strokeColor?: Color; strokeOpacity?: number; strokeWidth?: number; visibility?: "visible" | "hidden" | "collapse"; innerRadius?: number; outerRadius?: number; points?: number; twist?: number; } declare class Star extends Path { #private; constructor(owner: Board, options?: StarOptions); dispose(): void; update(): this; get innerRadius(): number; set innerRadius(innerRadius: number); get outerRadius(): number; set outerRadius(outerRadius: number); get points(): number; set points(points: number); get twist(): number; set twist(twist: number); } export { RegularPolygon, type RegularPolygonOptions, RoundedRectangle, type RoundedRectangleOptions, Star, type StarOptions };