# CmmnPlanItemInstance
## Properties
**idx** | **i32** | Index into `CmmnCaseInstance.instances`; stable for the case's lifetime. |
**plan_item_id** | **String** | |
**definition_id** | **String** | |
**name** | Option<**String**> | | [optional]
**def_kind** | [**models::CmmnDefinitionKind**](CmmnDefinitionKind.md) | |
**kind** | **String** | Which transition table governs this instance. `Milestone` is deliberately **not** an event listener. |
**state** | [**models::CmmnPlanItemState**](CmmnPlanItemState.md) | |
**parent** | Option<**i32**> | Enclosing stage instance; `null` for the case plan model's own children, whose container is the case. | [optional]
**repetition_counter** | **i32** | |
**local_variables** | [**std::collections::HashMap<String, serde_json::Value>**](serde_json::Value.md) | Local variables. Holds `repetitionCounter` under the name the model asked for (`flowable:counterVariable`, else the Flowable default). |
**satisfied_on_parts** | [**std::collections::HashMap<String, Vec<String>>**](Vec.md) | Sentry on-part ids satisfied so far, keyed by **criterion** id, not sentry id: one sentry may be attached by several criteria and each attachment latches independently. |
**satisfied_if_parts** | **Vec<String>** | |
**completable** | **bool** | |
**state_before_suspend** | Option<[**models::CmmnPlanItemState**](CmmnPlanItemState.md)> | The state held immediately before this instance was suspended, so `resume`/`parentResume` restores it exactly (#1292). Absent on a case suspended before the field existed, in which case `resume` falls back to `available`. | [optional]
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)