import "./pathseg.js"; import { type IContainerPlugin, type ICoordinates, type IDelta, type IDimension, OutModeDirection, type Particle, type PluginManager } from "@tsparticles/engine"; import type { ISvgPath } from "./Interfaces/ISvgPath.js"; import type { PolygonMaskContainer } from "./types.js"; export declare class PolygonMaskInstance implements IContainerPlugin { dimension: IDimension; offset?: ICoordinates; paths?: ISvgPath[]; raw?: ICoordinates[]; redrawTimeout?: number; private readonly _container; private _moveRadius; private readonly _pluginManager; private _scale; constructor(pluginManager: PluginManager, container: PolygonMaskContainer); clickPositionValid(position: ICoordinates): boolean; draw(context: OffscreenCanvasRenderingContext2D): void; init(): Promise; particleBounce(particle: Particle, delta: IDelta, direction: OutModeDirection): boolean; particlePosition(position?: ICoordinates): ICoordinates | undefined; particlesInitialization(): boolean; resize(): void; stop(): void; private readonly _checkInsidePolygon; private readonly _createPath2D; private readonly _downloadSvgPath; private readonly _drawPoints; private readonly _getEquidistantPointByIndex; private readonly _getPointByIndex; private readonly _getRandomPoint; private readonly _getRandomPointByLength; private readonly _initRawData; private readonly _parseSvgPath; private readonly _polygonBounce; private readonly _randomPoint; }