---@meta

---@class state
---Сховище для зберігання даних програми.
---
---Якщо вам потрібно зберегти дані між запусками програми (наприклад, налаштування або стан гри), ви можете використовувати цей об'єкт.
---
---Цей об'єкт автоматично зберігається на диск при завершенні програми, і відновлюється при наступному запуску.
---
---Всі дані зберігаються в тій самій директорії, що і програма, в файлі з розширенням ``.state``.
---Наприклад, якщо файл вашої програми називається ``mygame.lua``, то дані будуть збережені в файлі ``mygame.state``.
---
---.. warning:: Дозволено зберігати тільки прості типи даних: ``string``, ``number``, ``boolean`` та ``nil``. Вкладені таблиці, функції та інші типи не підтримуються і будуть проігноровані.
---
---@usage
--- -- Ця програма при кожному запуску збільшує лічильник на 1 та виводить його значення в консоль.
---
--- state = state or {} -- якщо це перший запуск, то state буде не визначений, тому ми ініціалізуємо його пустою таблицею
--- if state.counter == nil then
---     state.counter = 0
--- end
--- state.counter = state.counter + 1
--- display.fill_screen(display.color565(64, 0, 64))
--- display.set_cursor(0, 64)
--- display.print('Лічильник запусків\nпрограми: ', state.counter)
--- display.queue_draw()
--- util.sleep(0.5)
state = {}
