import type { DisplayObjectConfig } from '../dom'; import type { BaseStyleProps, ParsedBaseStyleProps } from '../types'; import { DisplayObject } from './DisplayObject'; export interface PolygonStyleProps extends BaseStyleProps { points: [number, number][]; /** * marker will be positioned at the first point */ markerStart?: DisplayObject; /** * marker will be positioned at the last point */ markerEnd?: DisplayObject; markerMid?: DisplayObject; /** * offset relative to original position */ markerStartOffset?: number; /** * offset relative to original position */ markerEndOffset?: number; isClosed?: boolean; } export interface ParsedPolygonStyleProps extends ParsedBaseStyleProps { points: { points: [number, number][]; segments: [number, number][]; totalLength: number; }; markerStart?: DisplayObject; markerMid?: DisplayObject; markerEnd?: DisplayObject; markerStartOffset?: number; markerEndOffset?: number; isClosed?: boolean; } export declare class Polygon extends DisplayObject { private markerStartAngle; private markerEndAngle; /** * markers placed at the mid */ private markerMidList; constructor({ style, ...rest }?: DisplayObjectConfig); attributeChangedCallback(attrName: Key, oldValue: PolygonStyleProps[Key], newValue: PolygonStyleProps[Key], prevParsedValue: ParsedPolygonStyleProps[Key], newParsedValue: ParsedPolygonStyleProps[Key]): void; private transformMarker; private placeMarkerMid; } //# sourceMappingURL=Polygon.d.ts.map