// Types export type { EffectData, EffectLifecycle, EnemyData, CardType, CardCostType, CardTargetType, EffectTarget, CardData, CardEffectTrigger, CardEffectTarget, EncounterType, EncounterData, IntentData, ItemData, } from './system/types'; // Deck export type { GameCard, GameCardMeta, PlayerDeck, DeckRegions } from './system/deck'; export { generateDeckFromInventory, createCard, createPlayerDeck, generateCardId, } from './system/deck'; // Grid Inventory export type { CellCoordinate, CellKey, GridInventory, InventoryItem, MutationResult, PlacementResult } from './system/grid-inventory'; export { createGridInventory, flipItem, getAdjacentItems, getItemAtCell, getOccupiedCellSet, moveItem, placeItem, removeItem as removeItemFromGrid, rotateItem, validatePlacement, } from './system/grid-inventory'; // Map export { MapNodeType, MapLayerType } from './system/map'; export type { MapNode, MapLayer, PointCrawlMap, MapGenerationConfig } from './system/map'; export { generatePointCrawlMap, getNode, getChildren, getParents, findAllPaths } from './system/map'; // Progress / Run export type { EncounterResult, EncounterState, GameItem, GameItemMeta, PlayerState, RunMutationResult, RunState, } from './system/progress'; export { assignEncounterToNode, assignEncountersFromPool, assignAllEncounters, buildCombatState, createEnemyEntities, getCurrentEncounterData, isCombatEncounter, startEncounter, resolveCombatEncounter, createRunState, canMoveTo, moveToNode, resolveEncounter, isEncounterResolved, damagePlayer, healPlayer, setMaxHp, addGold, spendGold, addItem, removeItem, getCurrentNode, getReachableChildren, getUnresolvedChildren, isAtStartNode, isAtEndNode, } from './system/progress'; // Combat export type { EffectTable, CombatEntity, PlayerEntity, EnemyEntity, CombatPhase, CombatResult, LootEntry, CombatState, CombatGameContext, } from './system/combat/types'; export { addEffect, addEntityEffect, addItemEffect, onEntityEffectUpkeep, onEntityPostureDamage, onPlayerItemEffectUpkeep, onItemPlay, onItemDiscard, getAliveEnemies, getEffectTargets, getCombatEntity, canPlayCard, payCardCost, } from './system/combat/effects'; export { prompts as combatPrompts, promptMainAction } from './system/combat/prompts'; export { createStartWith, type Triggers } from './system/combat/triggers'; // Utils export { parseShapeString, type ParsedShape } from './system/utils/parse-shape'; export { IDENTITY_TRANSFORM, type Transform2D, type Point2D, getOccupiedCells, transformPoint, transformShape, checkCollision, checkBoardCollision, checkBounds, rotateTransform, flipXTransform, flipYTransform, } from './system/utils/shape-collision'; // Data export { default as data } from './data';