if (!process.env.BOT_TOKEN) {
  throw new Error("Необходимо указать BOT_TOKEN в переменных окружения.");
}

if (!process.env.READ_BASE_URL) {
  throw new Error("Необходимо указать READ_BASE_URL в переменных окружения.");
}

if (!process.env.APP_BASE_URL) {
  throw new Error("Необходимо указать APP_BASE_URL в переменных окружения.");
}

if (!process.env.API_URL) {
  throw new Error("Environment variable API_URL is not set");
}

if (!process.env.HEARTBEAT_INTERVAL) {
  throw new Error("Environment variable HEARTBEAT_INTERVAL is not set");
}

export const env = {
  BOT_TOKEN: process.env.BOT_TOKEN,
  BOT_USE_CHANGES_DB_UPDATES:
    `${process.env.BOT_USE_CHANGES_DB_UPDATES}` === "true",
  READ_BASE_URL: process.env.READ_BASE_URL,
  APP_BASE_URL: process.env.APP_BASE_URL,
  API_URL: process.env.API_URL,
  PUBLIC_API_URL:
    process.env.PUBLIC_API_URL || `${process.env.APP_BASE_URL}/api`,
  HEARTBEAT_INTERVAL: parseInt(process.env.HEARTBEAT_INTERVAL, 10),
} as const;
