import type { CreatureState } from '../store.js'; /** Body shapes — unlocked by session count and coding volume */ export type BodyShape = 'egg' | 'blob' | 'sprite' | 'serpent' | 'dragon' | 'phoenix'; /** Size class — scales with level */ export type SizeClass = 'egg' | 'small' | 'medium' | 'large'; /** Eye style variants */ export type EyeStyle = 'dot' | 'round' | 'fierce' | 'glowing' | 'ancient'; /** Decoration slots */ export type HornStyle = 'none' | 'nubs' | 'curved' | 'crown' | 'antlers'; export type WingStyle = 'none' | 'stubs' | 'bat' | 'feathered' | 'energy'; export type TailStyle = 'none' | 'short' | 'long' | 'forked' | 'flame'; export type AuraStyle = 'none' | 'faint' | 'glow' | 'blaze' | 'cosmic'; /** ANSI color palette */ export interface ColorPalette { primary: string; secondary: string; eye: string; aura: string; } /** Full trait set for rendering */ export interface TraitSet { body: BodyShape; size: SizeClass; eyes: EyeStyle; horns: HornStyle; wings: WingStyle; tail: TailStyle; aura: AuraStyle; colors: ColorPalette; level: number; name: string; } declare const c: (code: number) => string; declare const RESET = "\u001B[0m"; declare const BOLD = "\u001B[1m"; /** Color palettes — selected by a hash of creature stats */ declare const PALETTES: ColorPalette[]; /** * Derive a complete trait set from creature state. * Deterministic: same creature state always produces same traits. */ export declare function deriveTraits(creature: CreatureState): TraitSet; /** * Derive traits for an unfed creature (egg state). */ export declare function eggTraits(projectName: string): TraitSet; export { RESET, BOLD, c, PALETTES };