import { Pattern, IPatternSettings, IPatternPrivate } from "./Pattern"; export interface IPathPatternSettings extends IPatternSettings { /** * An SVG path to use as the pattern's motif. * * @see {@link https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths} for more information */ svgPath?: string; /** * Gap between motifs, in pixels. * * @default 6 */ gap?: number; /** * The path is scaled (keeping its aspect ratio) to fit within * `maxWidth` x `maxHeight` pixels. * * @default 10 */ maxWidth?: number; /** * The path is scaled (keeping its aspect ratio) to fit within * `maxWidth` x `maxHeight` pixels. * * @default 10 */ maxHeight?: number; /** * If set to `true`, will place every second motif, creating a checkered * pattern. * * @default false */ checkered?: boolean; /** * Center motifs in their grid cell. * * @default true */ centered?: boolean; } export interface IPathPatternPrivate extends IPatternPrivate { } /** * A pattern that repeats an SVG path as a motif on a grid. * * Note: `rotation` rotates each motif around its own centre (the grid stays * axis-aligned), so the pattern tiles seamlessly at any angle. * * @since 5.2.33 * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/patterns/} for more info */ export declare class PathPattern extends Pattern { _settings: IPathPatternSettings; _privateSettings: IPathPatternPrivate; static className: string; static classNames: Array; canvas: HTMLCanvasElement; context: CanvasRenderingContext2D; protected _clearPath: boolean; protected _bbox: { x: number; y: number; w: number; h: number; }; protected _bboxPath: string | undefined; _beforeChanged(): void; /** * The tile is only a repeat unit (the grid repeats every cell), so shrink an * oversized `width`/`height` to a single cell (2x2 when `checkered`). Skipped * for non-`repeat` repetitions. * @ignore */ protected _optimizeTileSize(): void; _changed(): void; protected _renderPattern(svgPath: string): void; /** * Native geometry bounding box of an SVG path, via a throwaway ``. * @ignore */ protected _getPathBounds(svgPath: string): { x: number; y: number; w: number; h: number; }; } //# sourceMappingURL=PathPattern.d.ts.map