# This file was auto-generated by Fern from our API Definition.

import typing_extensions
import typing_extensions
from ..types.inventory_state import InventoryState


class InventoryAdjustmentGroupParams(typing_extensions.TypedDict):
    id: typing_extensions.NotRequired[str]
    """
    A unique ID generated by Square for the
    `InventoryAdjustmentGroup`.
    """

    root_adjustment_id: typing_extensions.NotRequired[str]
    """
    The inventory adjustment of the composed variation.
    """

    from_state: typing_extensions.NotRequired[InventoryState]
    """
    Representative `from_state` for adjustments within the group. For example, for a group adjustment from `IN_STOCK` to `SOLD`,
    there can be two component adjustments in the group: one from `IN_STOCK`to `COMPOSED` and the other one from `COMPOSED` to `SOLD`.
    Here, the representative `from_state` for the `InventoryAdjustmentGroup` is `IN_STOCK`.
    See [InventoryState](#type-inventorystate) for possible values
    """

    to_state: typing_extensions.NotRequired[InventoryState]
    """
    Representative `to_state` for adjustments within group. For example, for a group adjustment from `IN_STOCK` to `SOLD`,
    the two component adjustments in the group can be from `IN_STOCK` to `COMPOSED` and from `COMPOSED` to `SOLD`.
    Here, the representative `to_state` of the `InventoryAdjustmentGroup` is `SOLD`.
    See [InventoryState](#type-inventorystate) for possible values
    """
