import { Application, Request, Response } from "express"; import initConfigRoute from "./config.js"; import routeYTM from "./ytm.js"; import authRoutes from "./auth.js"; import createHttpError from "http-errors"; import playlists from "./playlists.js"; export default function init(app: Application) { initConfigRoute(app); routeYTM(app); authRoutes(app); playlists(app); app.use((err: Error, req: Request, res: Response, next: any) => { if (err && typeof (err as createHttpError.HttpError)['statusCode'] === 'number') { const he = (err as createHttpError.HttpError); res.status(he.statusCode).send({ code: he.statusCode, message: he.message }); } else if (err) { console.error(err); res.status(500).send({ code: 500, message: 'Internal Server Error' }); } else { next(); } }); }