// Игра
export type Game = {
  // Статус игры (NEW, RUN, STOP)
  state: string
  // Время начала игры
  startAt: string
  // Время окончания игры
  endAt: string
}

// Команда
export type Team = {
  // Название
  name: string
  // Совершенные действия
  actions: Action[]
}

// Действие
// Посещение точки игры
export type Action = {
  // Идентификатор действия
  id: string
  // Код точки
  place: string
  // Название точки
  name: string
  // Текст точки
  text: string
  // Ссылка на картинку
  image: string
  // Список приложений
  applications: Application[]
  // Видимость/доступность точки
  hidden: boolean
  // Двери точки
  doors: Door[]

  // Поля для интерфейса
  // Сворачивание
  isOpen: boolean
  // Кнопки
  buttons: Door[]
}

// Приложение
// Улики найденые игроками (Карта, фотография...)
export type Application = {
  // Наименование
  name: string
  // Номер
  number: number
}

// Дверь
// Выбор пути в диалоге с игроком
// Или действие игрока которое можно не использовать
// Или открытие действия без участия игрока
export type Door = {
  // Код точки куда открывается дверь (Целевая точка должна существовать)
  code: string
  // Текст кнопки (Должен совпадать с названием целевой точки)
  name: string
  // Видимость кнопки
  show: boolean
}
