import type { Dimensions } from "../../../../core/domain/types.js"; import type { JellyfishMarineLife } from "../../domain/models/OceanModels.js"; import type { IJellyfishAnimator } from "../contracts/IJellyfishAnimator.js"; export declare class JellyfishAnimator implements IJellyfishAnimator { initializeJellyfish(dimensions: Dimensions, count: number): JellyfishMarineLife[]; createJellyfish(dimensions: Dimensions): JellyfishMarineLife; /** * Generate gonads (the distinctive internal organs) */ private generateGonads; /** * Generate oral arms (thick inner tentacles) */ private generateOralArms; /** * Generate trailing tentacles with segments * Pre-calculates initial angles to avoid spaz on first frame */ private generateTentacles; updateJellyfish(jellyfish: JellyfishMarineLife[], dimensions: Dimensions, frameMultiplier: number, pointer?: { x: number; y: number; active: boolean; } | null): JellyfishMarineLife[]; /** * Calculate pulse amount (0-1) with asymmetric timing */ private getPulseAmount; /** * Update tentacle segment physics for fluid motion */ private updateTentaclePhysics; /** * Update particle trail positions */ private updateTrailPositions; getJellyfishCount(quality: string): number; private randomInRange; private randomIntInRange; private lerp; } //# sourceMappingURL=JellyfishAnimator.d.ts.map