# Bone Flow #123 Particle

`BoneParticle 1.0.8` provides eight Particle expressions for this package: Snow / Rain / Sakura / Leaves / Smoke / Spark / Fire / Bubble. `Spark` is rendered as a one continuous thin lightning path whose individual zigzag segments become progressively longer toward the bottom, with connected branches, `Fire` is rendered as a single candle-like layered flame made from an outer flame, inner flame, and bright core sharing the same base, with each layer moving at a different speed and small glowing dot sparks around it, and `Leaves` expresses falling autumn leaves.

## Responsibility

#123 owns the particle expression only. It does not own #117 Animation timing, #120 Trigger start conditions, #121 Timeline control, #124 Filter, or #125 Blend.

## Public API

- `getFormalTypes()` — returns the eight formal names.
- `validateExpression(value)` — validates `type` without guessing unknown values.
- `create(options)` / `mount(root, options)` — creates or mounts a particle preview.
- `setType(instance, type)` / `setExpression(instance, expression)` — switches the expression.
- `getType(instance)` / `getExpression(instance)` / `getState(instance)` — reads current runtime state.
- `complete(instance, gate)` / `reopen(instance)` — completion-state gate helpers.
- `destroy(instance)` / `isInstance(instance)` — lifecycle helpers.
