import * as em from "./Enums"; import * as ds from "./Types"; import { ObjectManager } from "./ObjectManager"; import { ObjectBase } from "./ObjectBase"; /** * Represents a pen used to draw lines and contours. **/ export declare class Pen extends ObjectBase { /** * Creates a new {@link Pen} based on properties of an existing Pen. * @param penProperties The settings overriding properties of the base {@link Pen}. **/ constructor(penProperties: ds.PenProperties); /** * Creates a new {@link Pen} based on properties of an existing Pen. * @param basePen The Pen used as the base for the new {@link Pen}. * @param penProperties The settings overriding properties of the base {@link Pen}. **/ constructor(basePen: Pen, penProperties: ds.PenProperties); /** * Creates a new {@link Pen} object with specified properties. * @param om An object manager that controls the lifetime of the {@link Pen} object. * @param penProperties The settings for creating a {@link Pen}. **/ constructor(om: ObjectManager, penProperties: ds.PenProperties); /** * Gets the pen color. **/ get color(): ds.Color; /** * Gets the pen width, in units used for drawing. **/ get width(): number; /** * Gets the line cap style that specifies the shape used at the ends of open subpaths (and dashes, if any) when they are stroked. **/ get lineCap(): em.PenLineCap; /** * Gets the line join style that specifies the shape used at the corners of paths that are stroked. **/ get lineJoin(): em.PenLineJoin; /** * Gets a maximum on the ratio of the miter length to the pen width. When the limit is exceeded, the join is converted from a miter to a bevel. **/ get miterLimit(): number; /** * Gets the distance within the dash pattern where a dash begins. **/ get dashOffset(): number; /** * Gets the style of dashed lines drawn with this pen. **/ get dashStyle(): em.DashStyle; /** * Gets the custom dash pattern of lines drawn with this pen. **/ get dashPattern(): number[] | null; }