/** Публичные настройки инстанса — доступны без аутентификации (`GET /public/settings`). */
import { apiRequest } from '@/api/client'

/** Флаги, нужные странице логина и гостевой карточке входа до аутентификации. */
export interface PublicSettingsOut {
  /** Проверка устройств на входе (сессия 33) — запрос доступа к камере/микрофону
   * и превью камеры на LoginPage/JoinPage. */
  device_check_enabled: boolean
  /** Замена фона видео (сессия 35) — нужен превью на JoinPage; участнику в
   * комнате тот же флаг приезжает в join-ответе (`JoinOut`). */
  virtual_background_enabled: boolean
}

export async function getPublicSettings(): Promise<PublicSettingsOut> {
  return apiRequest<PublicSettingsOut>('/public/settings', { skipAuthRefresh: true })
}
