const require_rolldown_runtime = require('../_virtual/rolldown_runtime.cjs');
const require_controllers_ai_controller = require('../controllers/ai.controller.cjs');
const require_utils_rateLimiter = require('../utils/rateLimiter.cjs');
let express = require("express");
express = require_rolldown_runtime.__toESM(express);

//#region src/routes/ai.routes.ts
const aiRouter = (0, express.Router)();
const aiRoute = "/api/ai";
const baseURL = () => `${process.env.BACKEND_URL}${aiRoute}`;
const getAiRoutes = () => ({
	customQuery: {
		urlModel: "/",
		url: `${baseURL()}/`,
		method: "POST"
	},
	translateJSON: {
		urlModel: "/translate/json",
		url: `${baseURL()}/translate/json`,
		method: "POST"
	},
	auditContentDeclaration: {
		urlModel: "/audit/dictionary",
		url: `${baseURL()}/audit/dictionary`,
		method: "POST"
	},
	auditContentDeclarationField: {
		urlModel: "/audit/dictionary/field",
		url: `${baseURL()}/audit/dictionary/field`,
		method: "POST"
	},
	auditContentDeclarationMetadata: {
		urlModel: "/audit/dictionary/metadata",
		url: `${baseURL()}/audit/dictionary/metadata`,
		method: "POST"
	},
	auditTag: {
		urlModel: "/audit/tag",
		url: `${baseURL()}/audit/tag`,
		method: "POST"
	},
	ask: {
		urlModel: "/ask",
		url: `${baseURL()}/ask`,
		method: "POST"
	},
	autocomplete: {
		urlModel: "/autocomplete",
		url: `${baseURL()}/autocomplete`,
		method: "POST"
	},
	getDiscussions: {
		urlModel: "/discussions",
		url: `${baseURL()}/discussions`,
		method: "GET"
	}
});
aiRouter.post(getAiRoutes().customQuery.urlModel, require_controllers_ai_controller.customQuery);
aiRouter.post(getAiRoutes().translateJSON.urlModel, require_controllers_ai_controller.translateJSON);
aiRouter.post(getAiRoutes().auditContentDeclaration.urlModel, require_controllers_ai_controller.auditContentDeclaration);
aiRouter.post(getAiRoutes().auditContentDeclarationField.urlModel, require_controllers_ai_controller.auditContentDeclarationField);
aiRouter.post(getAiRoutes().auditContentDeclarationMetadata.urlModel, require_controllers_ai_controller.auditContentDeclarationMetadata);
aiRouter.post(getAiRoutes().auditTag.urlModel, require_controllers_ai_controller.auditTag);
aiRouter.post(getAiRoutes().autocomplete.urlModel, require_controllers_ai_controller.autocomplete);
aiRouter.get(getAiRoutes().getDiscussions.urlModel, require_controllers_ai_controller.getDiscussions);
/**
* This route number of requests is limited for unauthenticated users
*/
aiRouter.use(/(.*)/, require_utils_rateLimiter.unauthenticatedChatBotLimiter);
aiRouter.post(getAiRoutes().ask.urlModel, require_controllers_ai_controller.askDocQuestion);

//#endregion
exports.aiRoute = aiRoute;
exports.aiRouter = aiRouter;
exports.getAiRoutes = getAiRoutes;
//# sourceMappingURL=ai.routes.cjs.map