UNPKG

tsparticles

Version:

Easily create highly customizable particle animations and use them as animated backgrounds for your website. Ready to use components available also for React, Vue.js (2.x and 3.x), Angular, Svelte, jQuery, Preact, Riot.js, Inferno.

89 lines (88 loc) 3.56 kB
import type { Container } from "./Container"; import type { IParticleValueAnimation } from "./Interfaces/IParticleValueAnimation"; import type { ICoordinates } from "./Interfaces/ICoordinates"; import type { IParticleImage } from "./Interfaces/IParticleImage"; import { Updater } from "./Particle/Updater"; import type { IHsl, IRgb } from "./Interfaces/Colors"; import type { IShapeValues } from "../Options/Interfaces/Particles/Shape/IShapeValues"; import type { IBubbleParticleData } from "./Interfaces/IBubbleParticleData"; import type { IParticle } from "./Interfaces/IParticle"; import type { IParticles } from "../Options/Interfaces/Particles/IParticles"; import { ParticlesOptions } from "../Options/Classes/Particles/ParticlesOptions"; import { MoveDirection, MoveDirectionAlt, ShapeType } from "../Enums"; import type { RecursivePartial } from "../Types"; import { Infecter } from "./Particle/Infecter"; import type { IDelta } from "./Interfaces/IDelta"; import { Mover } from "./Particle/Mover"; import type { ILink } from "./Interfaces/ILink"; import type { IParticleHslAnimation } from "./Interfaces/IParticleHslAnimation"; import type { Stroke } from "../Options/Classes/Particles/Stroke"; import type { IParticleLoops } from "./Interfaces/IParticleLoops"; import { Vector } from "./Particle/Vector"; export declare class Particle implements IParticle { readonly id: number; private readonly container; destroyed: boolean; lastPathTime: number; lifeDelay: number; lifeDelayTime: number; lifeDuration: number; lifeTime: number; livesRemaining: number; misplaced: boolean; spawning: boolean; splitCount: number; unbreakable: boolean; readonly pathDelay: number; readonly updater: Updater; readonly infecter: Infecter; readonly mover: Mover; readonly sides: number; readonly strokeWidth: number; readonly options: ParticlesOptions; readonly loops: IParticleLoops; links: ILink[]; randomIndexData?: number; linksDistance?: number; linksWidth?: number; maxDistance?: number; moveDrift?: number; moveSpeed?: number; sizeAnimationSpeed?: number; readonly close: boolean; readonly direction: MoveDirection | keyof typeof MoveDirection | MoveDirectionAlt; readonly fill: boolean; readonly stroke: Stroke; readonly position: Vector; readonly offset: Vector; readonly shadowColor: IRgb | undefined; readonly color?: IParticleHslAnimation; readonly opacity: IParticleValueAnimation<number>; readonly rotate: IParticleValueAnimation<number>; readonly size: IParticleValueAnimation<number>; readonly strokeColor?: IParticleHslAnimation; readonly velocity: Vector; readonly shape: ShapeType | string; readonly image?: IParticleImage; readonly initialPosition: Vector; readonly initialVelocity: Vector; readonly shapeData?: IShapeValues; readonly bubble: IBubbleParticleData; constructor(id: number, container: Container, position?: ICoordinates, overrideOptions?: RecursivePartial<IParticles>); move(delta: IDelta): void; update(delta: IDelta): void; draw(delta: IDelta): void; getPosition(): ICoordinates; getRadius(): number; getMass(): number; getFillColor(): IHsl | undefined; getStrokeColor(): IHsl | undefined; destroy(override?: boolean): void; reset(): void; private split; private setColorAnimation; private calcPosition; private checkOverlap; private calculateVelocity; private loadImageShape; }