# Inventory Bridge

Inventory bridge files:

```text
client/bridge/inventory.lua
server/bridge/inventory.lua
```

Generic item checks support:

- Nord Inventory
- ox_inventory
- QB/QBX inventory through the framework player object
- ESX inventory
- Custom implementation

## Native physical vehicle keys

The full physical `vehicle_key` metadata flow is native to `nord_inventory`.

Custom inventory hooks are provided for complete physical-key support:

```lua
NVKInventory.CustomHasItem(source, item, count)
NVKInventory.CustomRemoveItem(source, item, count)
NVKInventory.CustomHasVehicleKeyItem(source, plate)
NVKInventory.CustomResolveVehicleKeyMetadata(source, slot)
NVKInventory.CustomGiveVehicleKeyItem(source, plate, keyType, expiresAt, sessionBound)
NVKInventory.CustomRemoveVehicleKeyItem(source, plate)
NVKInventory.CustomCleanupInvalidVehicleKeyItems(source)
```

Client custom count hook:

```lua
NVKClientInventory.CustomGetItemCount(item, metadata)
```

If you use a custom inventory with strict physical keys, implement the physical-key hooks rather than modifying the core.
