import type { Dimensions } from "../../../../core/domain/types.js"; import type { FishMarineLife } from "../../domain/models/OceanModels.js"; import type { IFishFactory } from "../contracts/IFishFactory.js"; import type { IFishPersonalityGenerator } from "../contracts/IFishPersonalityGenerator.js"; /** * FishFactory - Creates and initializes fish entities * * Handles species assignment, body/fin generation, color selection, * personality generation, and initial positioning. Does not manage * spine chains or animations. */ export declare class FishFactory implements IFishFactory { private personalityGenerator; /** Counter for generating unique fish IDs */ private static nextFishId; constructor(personalityGenerator?: IFishPersonalityGenerator); initializeFish(dimensions: Dimensions, count: number, useSpineChain?: boolean, spawnOnScreen?: boolean): FishMarineLife[]; createFish(dimensions: Dimensions, useSpineChain?: boolean, spawnOnScreen?: boolean): FishMarineLife; private assignDepthLayer; private assignSpecies; private createFinState; private createTailState; private randomInRange; } //# sourceMappingURL=FishFactory.d.ts.map