Source: RouterLocation/locationTemplate.js

// @ts-check
/**
 * @import {ExpressRequestAuthorized, ExpressResponse} from '../types.js'
 */

/**
 * Location Template Router
 * 
 * Handles retrieval of location criteria templates used for location configuration.
 * 
 * @swagger
 * components:
 *   schemas:
 *     LocationTemplate:
 *       type: object
 *       description: Location criteria template configuration
 *       additionalProperties: true
 * 
 * tags:
 *   - name: LocationTemplate
 *     description: Location template management operations
 */

import express from 'express';
import * as locationTemplateController from './locationTemplate/controller.js';

/** @type {express.Express} */
const api = express();

/**
 * @swagger
 * /api/locationTemplate:
 *   get:
 *     summary: Get location templates
 *     description: Retrieves location criteria templates for the current organization
 *     tags:
 *       - LocationTemplate
 *     security:
 *       - bearerAuth: []
 *     responses:
 *       200:
 *         description: Location templates retrieved successfully
 *         content:
 *           application/json:
 *             schema:
 *               type: object
 *               properties:
 *                 success:
 *                   type: boolean
 *                 result:
 *                   $ref: '#/components/schemas/LocationTemplate'
 *                 message:
 *                   type: string
 */
// @ts-ignore
api.get('/', locationTemplateController.getLocationTemplatesController);

export default api;