/
IParticle.ts
53 lines (48 loc) · 2.15 KB
/
IParticle.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
import type { IStroke } from "../../Options/Interfaces/Particles/IStroke";
import type { ICoordinates } from "./ICoordinates";
import type { IRgb } from "./IRgb";
import type { IVelocity } from "./IVelocity";
import type { MoveDirection, MoveDirectionAlt, RotateDirection, RotateDirectionAlt, ShapeType } from "../../Enums";
import type { IParticleImage } from "./IParticleImage";
import type { IParticleSizeAnimation } from "./IParticleSizeAnimation";
import type { IParticleOpacityAnimation } from "./IParticleOpacityAnimation";
import type { IShapeValues } from "../../Options/Interfaces/Particles/Shape/IShapeValues";
import type { IBubbleParticleData } from "./IBubbleParticleData";
import type { IParticles } from "../../Options/Interfaces/Particles/IParticles";
import type { ILink } from "./ILink";
import type { IHsl } from "./IHsl";
export interface IParticle {
randomIndexData?: number;
readonly angle: number;
readonly bubble: IBubbleParticleData;
readonly color: IHsl | undefined;
readonly close: boolean;
readonly destroyed: boolean;
readonly direction: MoveDirection | keyof typeof MoveDirection | MoveDirectionAlt;
readonly fill: boolean;
readonly image?: IParticleImage;
readonly initialVelocity: IVelocity;
readonly links: ILink[];
readonly offset: ICoordinates;
readonly opacity: IParticleOpacityAnimation;
readonly particlesOptions: IParticles;
readonly position: ICoordinates;
readonly rotateDirection: RotateDirection | keyof typeof RotateDirection | RotateDirectionAlt;
readonly shadowColor: IRgb | undefined;
readonly shape?: ShapeType | string;
readonly shapeData?: IShapeValues;
readonly size: IParticleSizeAnimation;
readonly stroke: IStroke;
readonly strokeWidth: number;
readonly strokeColor: IHsl | undefined;
readonly velocity: IVelocity;
readonly linksDistance?: number;
readonly linksWidth?: number;
readonly moveSpeed?: number;
readonly sizeValue?: number;
readonly randomMinimumSize?: number;
readonly sizeAnimationSpeed?: number;
getPosition(): ICoordinates;
getFillColor(): IHsl | undefined;
getStrokeColor(): IHsl | undefined;
}