import type sql from "mssql";

const port = process.env.SQL_PORT
	? Number.parseInt(process.env.SQL_PORT, 10)
	: undefined;

export const prodSqlConfig: sql.config = {
	server: `${process.env.PROD_SERVER}`,
	database: `AlplaPROD_${process.env.PROD_PLANT_TOKEN}_cus`,
	port: port,
	user: process.env.PROD_USER,
	password: process.env.PROD_PASSWORD,
	options: {
		encrypt: true,
		trustServerCertificate: true,
	},
	requestTimeout: 90000, // how long until we kill the query and fail it
	pool: {
		max: 20, // Maximum number of connections in the pool
		min: 0, // Minimum number of connections in the pool
		idleTimeoutMillis: 10000, // How long a connection is allowed to be idle before being released
		reapIntervalMillis: 1000, // how often to check for idle resources to destroy
		acquireTimeoutMillis: 100000, // How long until a complete timeout happens
	},
};
