---
url: /api/kiln/interfaces/TransitionSpec.md
---
[Kiln API](../../index.md) / [kiln](../index.md) / TransitionSpec

# Interface: TransitionSpec\<S, P, T>

An edge of the graph. All of `when`, `trigger` and `exitTime` that are given must hold.

## Type Parameters

| Type Parameter | Default type |
| ------ | ------ |
| `S` *extends* `string` | `string` |
| `P` *extends* `string` | `string` |
| `T` *extends* `string` | `string` |

## Properties

| Property | Type | Description |
| ------ | ------ | ------ |
|  `from` | `"*"` | `S` | readonly `S`\[] | A state, a list of states, or '\*' for any state other than `to`. |
|  `to` | `S` | - |
|  `when?` | `{ readonly [K in string]?: ParamTest }` | Parameter tests: `{ speed: { gt: 0.1 }, grounded: true }`. |
|  `trigger?` | `T` | Fires when this trigger was set (and consumes it). |
|  `exitTime?` | `number` | Only once the current clip's normalized time reached this (1 = one full play, the end of a 'once' clip). |
|  `fade?` | `number` | Crossfade seconds (skeletal; sprites switch at once). Default: the graph's `fade`. |
