import { Express } from 'express' import { getJobCounts, getActiveCounts, getWaitingCount, cleanQueue } from '../queues' import { UI } from 'bull-board' export default (server: Express) => { server.get('/api/queues/clean', async (req, res) => { const { password } = req.query if (password !== process.env.ADMIN_PASSWORD) { return res.status(401).send(`Not authorized`) } await cleanQueue() return res.send('Queue cleaned') }) server.get('/api/queues/count', async (req, res) => { const count = await getJobCounts() return res.json(count) }) server.get('/api/queues/count/active', async (req, res) => { const count = await getActiveCounts() return res.json(count) }) server.get('/api/queues/count/waiting', async (req, res) => { const count = await getWaitingCount() return res.json(count) }) server.use('/api/queues/admin', UI) }