"use strict";Object.defineProperty(exports,"__esModule",{value:!0});exports.metadata=void 0;const db_1=require("@b/db"),constants_1=require("@b/utils/constants"),query_1=require("@b/utils/query"),utils_1=require("./utils");exports.metadata={summary:"Lists all exchange markets with pagination and optional filtering",operationId:"listExchangeMarkets",tags:["Admin","Exchange","Markets"],parameters:[...constants_1.crudParameters,{name:"symbol",in:"query",description:"Filter markets by trading symbol",schema:{type:"string"},required:!1},{name:"pair",in:"query",description:"Filter markets by trading pair",schema:{type:"string"},required:!1},{name:"status",in:"query",description:"Filter markets by status (active or not)",schema:{type:"boolean"},required:!1}],responses:{200:{description:"List of exchange markets with detailed information",content:{"application/json":{schema:{type:"object",properties:{data:{type:"array",items:{type:"object",properties:utils_1.marketSchema}},pagination:constants_1.paginationSchema}}}}},401:query_1.unauthorizedResponse,404:(0,query_1.notFoundMetadataResponse)("Exchange Markets"),500:query_1.serverErrorResponse},requiresAuth:!0,permission:"view.exchange.market"};exports.default=async e=>{const{query:t}=e;return(0,query_1.getFiltered)({model:db_1.models.exchangeMarket,query:t,sortField:t.sortField||"currency",paranoid:!1})};