import type { FishMarineLife } from "../../domain/models/OceanModels.js"; import type { IFishDecisionMaker, DecisionContext, FishDecision } from "../contracts/IFishDecisionMaker.js"; /** * FishDecisionMaker - Personality and mood-influenced behavior decisions * * Modifies behavior transition probabilities based on: * - Personality traits (boldness, curiosity, activity, sociability) * - Current mood (alert, playful, tired, etc.) * - Environmental context (nearby fish, edge proximity) */ export declare class FishDecisionMaker implements IFishDecisionMaker { decideNextBehavior(ctx: DecisionContext): FishDecision; getTransitionWeights(fish: FishMarineLife): { turn: number; dart: number; cruise: number; school: number; passing: number; ascending: number; descending: number; approaching: number; receding: number; }; /** * Check if mood should override normal decision making */ private checkMoodOverrides; private createTurnDecision; private createDartDecision; private createSchoolDecision; private createCruiseDecision; /** * Fast direct swimming - fish zooms across screen in a straight line */ private createPassingDecision; /** * Ascending - fish swims upward exploring vertical space */ private createAscendingDecision; /** * Descending - fish swims downward exploring vertical space */ private createDescendingDecision; /** * Approaching - fish swims toward camera (z decreasing) */ private createApproachingDecision; /** * Receding - fish swims away from camera (z increasing) */ private createRecedingDecision; private getEdgeProximity; } //# sourceMappingURL=FishDecisionMaker.d.ts.map