engine/effects/index.ts

PURPOSE

Barrel export for the unified Effect System. Re-exports the public surface of the effects subsystem so consumers import from a single module path instead of reaching into individual files.

OWNS

  • No runtime logic of its own.
  • The public symbol surface of the engine/effects subsystem.

READS FROM

  • ./types — type definitions.
  • ./effect-engine — the EffectEngine class.
  • ./conditions — condition evaluators.
  • ./actions — action executors.
  • ./resolve-params — parameter resolution helpers.
  • ./custom-registry — custom action and tick handler registries.
  • ./enemy-status — enemy status state and helpers.

PUSHES TO

  • Any consumer that imports from engine/effects (callers across abilities, weapons, mods, passives, artifacts, and effect-driven systems).

DOES NOT

  • Does not declare new types or functions.
  • Does not re-export from ./custom-handlers or ./run-effects (those are not part of the barrel surface).
  • Does not perform side effects on import beyond the re-exports themselves.

Signals

None. This file is a pure re-export module.

Entry points

Type re-exports (from ./types):

  • DamageTag
  • TriggerType
  • TriggerDef
  • ConditionDef
  • ActionDef
  • EffectDef
  • EffectInstance
  • SignalSnapshot
  • CustomActionFn
  • CustomTickFn
  • EnemyStatusType
  • EnemyStatusEntry

Value re-exports:

  • EffectEngine (from ./effect-engine)
  • evaluateCondition, evaluateAllConditions (from ./conditions)
  • executeAction, executeAllActions (from ./actions)
  • resolveParam, resolveAllParams, resolveNumber, resolveString (from ./resolve-params)
  • CustomHandlers, CustomTickHandlers, registerCustomAction, registerCustomTick (from ./custom-registry)
  • applyStatus, hasStatus, getStacks, getShredMult, tickStatuses, clearStatuses (from ./enemy-status)

Pattern notes

  • Type-only re-exports use export type { ... } so they are erased at build time and do not contribute to the runtime bundle.
  • Value re-exports use plain export { ... }.
  • The barrel intentionally omits ./custom-handlers and ./run-effects; those modules are imported directly by their consumers rather than surfaced through engine/effects.
  • Header comment labels the module as the Unified Effect System barrel.

9 items under this folder.