UNPKG

bybit-mcp-server

Version:
56 lines 3.35 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.WalletBalanceSchema = exports.OpenOrdersSchema = exports.OrderHistorySchema = exports.CancelOrderSchema = exports.PlaceOrderSchema = exports.TickerSchema = exports.KlinesSchema = exports.OrderBookSchema = exports.PriceSchema = exports.BybitConfig = void 0; const zod_1 = require("zod"); exports.BybitConfig = zod_1.z.object({ apiKey: zod_1.z.string(), apiSecret: zod_1.z.string(), environment: zod_1.z.enum(['testnet', 'mainnet']).default('testnet'), baseUrl: zod_1.z.string().optional(), debug: zod_1.z.boolean().default(false), }); exports.PriceSchema = zod_1.z.object({ symbol: zod_1.z.string().describe('Trading symbol (e.g., BTCUSDT)') }); exports.OrderBookSchema = zod_1.z.object({ symbol: zod_1.z.string().describe('Trading symbol (e.g., BTCUSDT)'), limit: zod_1.z.number().min(1).max(500).optional().describe('Number of entries to return (default: 25)') }); exports.KlinesSchema = zod_1.z.object({ symbol: zod_1.z.string().describe('Trading symbol (e.g., BTCUSDT)'), interval: zod_1.z.enum(['1', '3', '5', '15', '30', '60', '120', '240', '360', '720', 'D', 'M', 'W']).describe('Kline interval'), limit: zod_1.z.number().min(1).max(1000).optional().describe('Number of klines to return (default: 200)') }); exports.TickerSchema = zod_1.z.object({ symbol: zod_1.z.string().optional().describe('Trading symbol (if not provided, returns all symbols)') }); exports.PlaceOrderSchema = zod_1.z.object({ category: zod_1.z.enum(['spot', 'linear', 'inverse', 'option']).describe('Product type'), symbol: zod_1.z.string().describe('Trading symbol'), side: zod_1.z.enum(['Buy', 'Sell']).describe('Order side'), orderType: zod_1.z.enum(['Market', 'Limit']).describe('Order type'), qty: zod_1.z.string().describe('Order quantity'), price: zod_1.z.string().optional().describe('Order price (required for limit orders)'), timeInForce: zod_1.z.enum(['GTC', 'IOC', 'FOK']).optional().describe('Time in force (default: GTC)') }); exports.CancelOrderSchema = zod_1.z.object({ category: zod_1.z.enum(['spot', 'linear', 'inverse', 'option']).describe('Product type'), symbol: zod_1.z.string().describe('Trading symbol'), orderId: zod_1.z.string().optional().describe('Order ID'), orderLinkId: zod_1.z.string().optional().describe('Order link ID') }); exports.OrderHistorySchema = zod_1.z.object({ category: zod_1.z.enum(['spot', 'linear', 'inverse', 'option']).describe('Product type'), symbol: zod_1.z.string().optional().describe('Trading symbol'), limit: zod_1.z.number().min(1).max(50).optional().describe('Number of records to return (default: 20)') }); exports.OpenOrdersSchema = zod_1.z.object({ category: zod_1.z.enum(['spot', 'linear', 'inverse', 'option']).describe('Product type'), symbol: zod_1.z.string().optional().describe('Trading symbol'), limit: zod_1.z.number().min(1).max(50).optional().describe('Number of records to return (default: 20)') }); exports.WalletBalanceSchema = zod_1.z.object({ accountType: zod_1.z.enum(['UNIFIED', 'CONTRACT', 'SPOT', 'INVESTMENT', 'OPTION', 'FUND']).describe('Account type'), coin: zod_1.z.string().optional().describe('Coin name (if not provided, returns all coins)') }); //# sourceMappingURL=types.js.map