import { type Container, type ICoordinates, type IDelta, type IRgb, type Particle, type PluginManager, type RecursivePartial, RotateDirection, Vector } from "@tsparticles/engine"; import { Absorber } from "./Options/Classes/Absorber.js"; import type { IAbsorber } from "./Options/Interfaces/IAbsorber.js"; import type { IAbsorberSizeLimit } from "./Options/Interfaces/IAbsorberSizeLimit.js"; export type OrbitingParticle = Particle & { absorberOrbit?: Vector; absorberOrbitDirection?: RotateDirection; needsNewPosition?: boolean; }; export declare class AbsorberInstance { #private; color: IRgb; limit: IAbsorberSizeLimit; mass: number; readonly name?: string; opacity: number; readonly options: Absorber; position: Vector; size: number; constructor(pluginManager: PluginManager, container: Container, options: RecursivePartial, position?: ICoordinates); attract(particle: OrbitingParticle, delta: IDelta): void; draw(context: OffscreenCanvasRenderingContext2D): void; resize(): void; update(delta: IDelta): void; }