export { createAbilityKit, type AbilityKit, type AbilitySlotSnapshot, type AbilitySlotState, } from "./combat/abilityKit.js"; export { type AnimationClip, type FrameRange } from "./combat/animationState.js"; export { attackMeta, counters, isBlockable, isDodgeable, isParryable } from "./combat/attackTags.js"; export { createBuildupMeter, createStaggerMeter, type BuildupProc } from "./combat/breakMeters.js"; export { createCastRunner } from "./combat/castRunner.js"; export { createComboMeter, type ComboMeter, type ComboMeterConfig, type ComboMeterSnapshot, type ComboMeterView, type ComboTier, } from "./combat/comboMeter.js"; export { createComboPoints } from "./combat/comboPoints.js"; export { advanceCombo, createComboRunner, type ComboStep } from "./combat/comboString.js"; export { coverPointsFromSolids, coverPointsNear, createCoverField, scoreCoverPoint, selectCover, type CoverChoice, type CoverField, type CoverFieldOptions, type CoverFieldSnapshot, type CoverPoint, type CoverPointOptions, type CoverQuery, type CoverSolid, type CoverSource, type CoverThreat, type CoverWeights, } from "./combat/cover.js"; export { MAX_INTERCEPT_STEPS, createAntiOneShotPolicy, createDamageClamp, createDamagePipeline, createImmunityWindow, resolveDamage, type AntiOneShotConfig, type AntiOneShotPolicy, type DamageClampConfig, type DamageInterceptor, type DamagePipeline, type DamageResolution, type ImmunityWindow, type InterceptContext, type InterceptDecision, type InterceptRecord, type PendingDamage, } from "./combat/damageInterceptors.js"; export { resolveMatchup, type DamageChannelId, type DamageMatchup, type MatchupOutputs, type ResolvedMatchup, type TargetTraitId, } from "./combat/damageMatchup.js"; export { resolveDamageHit, type DamageHitInput, type DamageHitResolution } from "./combat/damageResolution.js"; export { UnknownTargetProfileError, createDamageRuntime, type DamageRuntimeConfig, type DamageRuntimeHitInput, type DamageRuntimeResolution, type DamageRuntimeRetune, type DamageRuntimeState, type DamageStatusRequest, type TargetProfile, type TimeToKill, } from "./combat/damageRuntime.js"; export { DEFAULT_ARMOR_HALF_VALUE, DEFAULT_MAX_MITIGATION, DuplicateDamageTypeError, UnknownDamageTypeError, armorMitigation, assertDamageTable, formatDamageTable, readDamageTable, resolveTableDamage, typeBypassesArmor, typeMultiplier, type ArmorConfig, type DamageTableDef, type DamageTableRow, type DamageTypeDef, } from "./combat/damageTable.js"; export { createDeathSystem, type OnDeathSpec } from "./combat/death.js"; export { type DeathReason } from "./combat/deathReason.js"; export { createDefensiveWindow, resolveDefense, type DefenseResolution } from "./combat/defensiveWindow.js"; export { createDotField } from "./combat/dotField.js"; export { createDownedState } from "./combat/downed.js"; export { createEffectSystem, type ReceiveMap } from "./combat/effects.js"; export { BUILTIN_COMPLETION_PREDICATES, BUILTIN_SPAWN_PROVIDERS, activePhaseId, createEncounterState, encounterProgress, forceCompletePhase, injectPhase, phaseStatus, startEncounter, updateEncounter, type CompletionPredicate, type EncounterConfig, type EncounterContext, type EncounterEvent, type EncounterPhase, type EncounterSignals, type EncounterSpawnRequest, type EncounterState, type EncounterStep, type PhaseCompletionRef, type PhaseInjectAt, type PhaseRuntime, type PhaseSpawnRef, type PhaseStatus, type PredicateContext, type SpawnProvider, type SpawnProviderContext, } from "./combat/encounterSequence.js"; export { impactPresets, resolveHitReaction, type HitReactionConfig } from "./combat/hitReaction.js"; export { DEFAULT_CRIT_MULTIPLIER, UnknownHitZoneError, assertHitZoneTable, hitZoneMultiplier, resolveHitZone, type HitZoneDef, type HitZoneResolution, type HitZoneTable, } from "./combat/hitZones.js"; export { createMagazine, type Magazine, type MagazineConfig, type MagazineReserve, type MagazineSnapshot, } from "./combat/magazine.js"; export { createProjectileSystem, type ObjectRaycastHit, type ProjectileSystemDeps, type RaycastHit, } from "./combat/projectiles.js"; export { resolveReceivedDamage, type DamageContext, type DamagePredicate, type ReceivedDamageResult, type ReceivedModifier, type ReceivedPolicy, } from "./combat/receivedDamage.js"; export { createRegenShield } from "./combat/regenShield.js"; export { DEFAULT_FIRE_PULSE_SECONDS, DEFAULT_HIT_PULSE_SECONDS, DEFAULT_RENDER_CUES, advanceMotionCues, applyRenderAnimationEvent, applyRenderDeathEvent, applyRenderHitEvent, type EntityRenderCues, type RenderCueTuning, } from "./combat/renderCues.js"; export { resistanceScale, resolveResistance } from "./combat/resistance.js"; export { createResourcePool, type ResourcePool } from "./combat/resourcePool.js"; export { allocateRewards, filterOutcomeFor, resolveClaim, type AllocationOutcome, type AllocationRequest, type ClaimOutcome, type ClaimablePool, type RewardClaimSpec, type RewardGrant, type RewardPolicyKind, type RewardRecipient, type RewardResult, type RewardShare, } from "./combat/rewardAllocation.js"; export { DEFAULT_EYE_HEIGHT, convergeShot, eyeHeightFromColliders, resolveShot, type ResolvedShot, type ShotOriginPolicy, } from "./combat/shotOrigin.js"; export { createSquadCombat, type SquadCombat, type SquadCombatOptions, type SquadCombatSnapshot, type SquadCombatStats, type SquadCombatTunables, type SquadMemberSpec, type SquadMemberView, type SquadMode, } from "./combat/squadCombat.js"; export { assignSquadRoles, threatsFromMemory, type FireDiscipline, type SquadComposition, type SquadRole, type ThreatReadOptions, type ThreatReading, } from "./combat/squadTactics.js"; export { resolveStatusApplication, type StatusApplicationOutcome, type StatusApplicationSpec, type StatusImmunity, type StatusInstance, type StatusStackPolicy, } from "./combat/statusApplication.js"; export { statusEffectRemainingFraction, toStatusEffectView, toStatusEffectViews, type StatusEffectView, type StatusEffectViewOptions, } from "./combat/statusEffectView.js"; export { UnknownStatusError, createStatusRuntime, type StatusApplyOptions, type StatusDamageTick, type StatusDef, type StatusEffect, type StatusExpiredTick, type StatusRuntime, type StatusRuntimeEntry, type StatusRuntimeOptions, type StatusRuntimeState, type StatusStatTick, type StatusTickEvent, } from "./combat/statusRuntime.js"; export { type TelegraphConfig, type TelegraphShape } from "./combat/telegraph.js"; export { createThresholdTracker, type CrossingDirection, type CrossingPolicy, type CrossingTrigger, type ThresholdCrossing, type ThresholdCrossingConfig, type ThresholdMark, type ThresholdTracker, type ThresholdTrackerSnapshot, } from "./combat/thresholdCrossings.js"; export { DEFAULT_VFX_PRESET, resolveVfxPreset, vfxPresets, type VfxPreset, type VfxPresetName, } from "./combat/vfxPresets.js"; export { DEFAULT_WEAPON_PELLETS_IN_FLIGHT, MAX_WEAPON_BURST_COUNT, MAX_WEAPON_PELLETS_IN_FLIGHT, MAX_WEAPON_PELLETS_PER_SHOT, assertWeaponDefinition, weaponDamageAt, weaponIntervalMs, weaponMaxInFlight, type WeaponBurstDef, type WeaponDamageDef, type WeaponDefinition, type WeaponFalloffDef, type WeaponFireMode, type WeaponHitscanDef, type WeaponMagazineDef, type WeaponProjectileDef, type WeaponVec3, } from "./combat/weaponDefinition.js"; export { createFireCadence, createWeaponRuntime, type FireCadence, type FireCadenceConfig, type WeaponFireResult, type WeaponFireStatus, type WeaponRuntime, type WeaponRuntimeConfig, } from "./combat/weaponFire.js"; export { createWeaponSystem, type WeaponAim, type WeaponAmmo, type WeaponContact, type WeaponImpact, type WeaponImpactContext, type WeaponProjectileView, type WeaponReloadState, type WeaponShotRecord, type WeaponStats, type WeaponSystem, type WeaponSystemDeps, type WeaponSystemState, type WeaponTickResult, } from "./combat/weaponSystem.js"; export { createAccumulatorMeter, tierAt, type MeterAddResult } from "./stats/accumulatorMeter.js"; export { createEventMeter, type EventMeter, type EventMeterFeedResult } from "./stats/eventMeter.js"; export { rollCheck, type CheckAdvantage, type CheckResult } from "./stats/rollCheck.js"; export { createStats, type Stats, type StatsSnapshot } from "./stats/statModifiers.js"; export { applyStatPoolDelta, changeStatPool, createStatPool, patchStatPool, type StatPool, type StatPoolAccess, type StatPoolAccessResult, type StatPoolChange, type StatPoolInput, type StatPoolPatch, } from "./stats/statPool.js";