> ## Documentation Index
> Fetch the complete documentation index at: https://docs.nexdev.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Configuration

> Everything lives in config.lua. The whitelist entries themselves are not in the config — they're in MySQL and managed from the Admin menu.

Everything lives in `config.lua`. The whitelist entries themselves are **not** in the config — they're in MySQL and managed from the [Admin menu](/nex_itemwhitelist/admin-menu).

## Framework

```lua theme={null}
Config.Framework = 'auto'   -- 'auto' | 'Qbox' | 'QB' | 'ESX' | 'none'

Config.FrameworkResources = {
    Qbox = 'qbx_core',
    QB   = 'qb-core',
    ESX  = 'es_extended',
}
```

Rename a value here if you forked any of those resources.

## Inventory

```lua theme={null}
Config.Inventory = 'ox_inventory'
```

Used for the `exports[Config.Inventory]:registerHook(...)` calls. Leave on `ox_inventory` unless you've forked it under a different name.

## Commands

```lua theme={null}
Config.Commands = {
    openMenu = 'whitelistmenu',
    add      = 'addwhitelist',
    remove   = 'removewhitelist',
    list     = 'listwhitelist',
}

Config.MenuKeybind = ''   -- e.g. 'F6'. Empty = none; players can still bind it themselves.
Config.AdminGroup  = 'group.admin'
```

## Notifications

```lua theme={null}
Config.EnableNotifications = true
Config.NotifySystem        = 'ox_lib'   -- 'ox_lib' | 'esx' | 'qb' | 'okok' | 'wasabi' | 'mythic' | 'native'
Config.NotifyPosition      = 'top'      -- used by ox_lib / okok / wasabi
```

Each event type has its own configurable title / description / type under `Config.Notifications`:

| Key               | When it fires                                                                         |
| ----------------- | ------------------------------------------------------------------------------------- |
| `cannotDrop`      | Player tries to drop a whitelisted item they own.                                     |
| `cannotVehicle`   | Tried to put it in a vehicle's trunk/glovebox.                                        |
| `cannotStash`     | Tried to put it in a stash.                                                           |
| `cannotContainer` | Tried to put it in a container item.                                                  |
| `cannotTrade`     | Tried to give it to another player.                                                   |
| `cannotUse`       | Tried to use it (e.g. equip a weapon, eat an item).                                   |
| `cannotBuy`       | Tried to buy it from a shop.                                                          |
| `attemptNotify`   | Notifies the **receiving** player when someone tries to give them a whitelisted item. |

Rename `Config.NotifyResources` values if you've forked one of the notification resources.

## Discord webhook logging

```lua theme={null}
Config.LogAttempts = true

Config.Discord = {
    webhook = '',                                       -- paste your webhook URL
    color   = 16711680,                                 -- decimal colour
    title   = 'Whitelisted Items - Transfer Attempt Log',
    footer  = 'NEX Whitelisted Items System',
}
```

Every blocked attempt sends an embed: who tried, what item, the scope, and the reason.

## Update checker

```lua theme={null}
Config.UpdateCheck = ''   -- e.g. 'https://api.github.com/repos/<you>/<repo>/releases/latest'
```

Empty = disabled. Hits the URL on start and logs a notice if a newer version is published.
