@noya-ai/data-server-schemas 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +25 -0
- package/dist/alternative/schemas.cjs +44 -0
- package/dist/alternative/schemas.d.cts +2 -0
- package/dist/alternative/schemas.d.ts +2 -0
- package/dist/alternative/schemas.js +11 -0
- package/dist/batch/schemas.cjs +73 -0
- package/dist/batch/schemas.d.cts +2 -0
- package/dist/batch/schemas.d.ts +2 -0
- package/dist/batch/schemas.js +17 -0
- package/dist/chunk-BWY4ZL7E.js +142 -0
- package/dist/chunk-C3YNWX7W.js +256 -0
- package/dist/chunk-DKMPZFSH.js +29 -0
- package/dist/chunk-KLRIACSR.js +162 -0
- package/dist/chunk-MECUVGQT.js +203 -0
- package/dist/chunk-MLKGABMK.js +9 -0
- package/dist/chunk-PHNEQDUP.js +89 -0
- package/dist/chunk-ROAH5BN3.js +58 -0
- package/dist/chunk-VK45O334.js +129 -0
- package/dist/chunk-W5SLY2ZT.js +134 -0
- package/dist/chunk-ZP2HSALI.js +150 -0
- package/dist/chunk-ZTOGXNAW.js +198 -0
- package/dist/coingecko/schemas.cjs +177 -0
- package/dist/coingecko/schemas.d.cts +2 -0
- package/dist/coingecko/schemas.d.ts +2 -0
- package/dist/coingecko/schemas.js +43 -0
- package/dist/coinglass/schemas.cjs +213 -0
- package/dist/coinglass/schemas.d.cts +2 -0
- package/dist/coinglass/schemas.d.ts +2 -0
- package/dist/coinglass/schemas.js +63 -0
- package/dist/composite/schemas.cjs +144 -0
- package/dist/composite/schemas.d.cts +2 -0
- package/dist/composite/schemas.d.ts +2 -0
- package/dist/composite/schemas.js +23 -0
- package/dist/cryptonews/schemas.cjs +104 -0
- package/dist/cryptonews/schemas.d.cts +2 -0
- package/dist/cryptonews/schemas.d.ts +2 -0
- package/dist/cryptonews/schemas.js +23 -0
- package/dist/defillama/schemas.cjs +157 -0
- package/dist/defillama/schemas.d.cts +2 -0
- package/dist/defillama/schemas.d.ts +2 -0
- package/dist/defillama/schemas.js +37 -0
- package/dist/geckoterminal/schemas.cjs +149 -0
- package/dist/geckoterminal/schemas.d.cts +2 -0
- package/dist/geckoterminal/schemas.d.ts +2 -0
- package/dist/geckoterminal/schemas.js +33 -0
- package/dist/index.cjs +1359 -0
- package/dist/index.d.cts +12 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.js +47 -0
- package/dist/kaito/schemas.cjs +218 -0
- package/dist/kaito/schemas.d.cts +2 -0
- package/dist/kaito/schemas.d.ts +2 -0
- package/dist/kaito/schemas.js +45 -0
- package/dist/moralis/schemas.cjs +165 -0
- package/dist/moralis/schemas.d.cts +2 -0
- package/dist/moralis/schemas.d.ts +2 -0
- package/dist/moralis/schemas.js +29 -0
- package/dist/noya/schemas.cjs +271 -0
- package/dist/noya/schemas.d.cts +2 -0
- package/dist/noya/schemas.d.ts +2 -0
- package/dist/noya/schemas.js +57 -0
- package/dist/schemas-6ZorQZBC.d.cts +435 -0
- package/dist/schemas-6ZorQZBC.d.ts +435 -0
- package/dist/schemas-BMeKj9pe.d.cts +832 -0
- package/dist/schemas-BMeKj9pe.d.ts +832 -0
- package/dist/schemas-BYLoGYNO.d.cts +52 -0
- package/dist/schemas-BYLoGYNO.d.ts +52 -0
- package/dist/schemas-Bbz-itbI.d.cts +387 -0
- package/dist/schemas-Bbz-itbI.d.ts +387 -0
- package/dist/schemas-CAn6VbI-.d.cts +240 -0
- package/dist/schemas-CAn6VbI-.d.ts +240 -0
- package/dist/schemas-CNeb4DA4.d.cts +432 -0
- package/dist/schemas-CNeb4DA4.d.ts +432 -0
- package/dist/schemas-Cu7LkQN1.d.cts +466 -0
- package/dist/schemas-Cu7LkQN1.d.ts +466 -0
- package/dist/schemas-D4yPHF06.d.cts +481 -0
- package/dist/schemas-D4yPHF06.d.ts +481 -0
- package/dist/schemas-Doa7hG7U.d.cts +630 -0
- package/dist/schemas-Doa7hG7U.d.ts +630 -0
- package/dist/schemas-TYWQmRZI.d.cts +519 -0
- package/dist/schemas-TYWQmRZI.d.ts +519 -0
- package/dist/schemas-hrS1Vfcr.d.cts +255 -0
- package/dist/schemas-hrS1Vfcr.d.ts +255 -0
- package/package.json +93 -0
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
import {
|
|
2
|
+
__export
|
|
3
|
+
} from "./chunk-MLKGABMK.js";
|
|
4
|
+
|
|
5
|
+
// src/geckoterminal/schemas.ts
|
|
6
|
+
var schemas_exports = {};
|
|
7
|
+
__export(schemas_exports, {
|
|
8
|
+
PoolOhlcvBody: () => PoolOhlcvBody,
|
|
9
|
+
PoolOhlcvCandle: () => PoolOhlcvCandle,
|
|
10
|
+
PoolOhlcvResponse: () => PoolOhlcvResponse,
|
|
11
|
+
PoolTrade: () => PoolTrade,
|
|
12
|
+
PoolTradesBody: () => PoolTradesBody,
|
|
13
|
+
PoolTradesResponse: () => PoolTradesResponse,
|
|
14
|
+
TokenInfoBody: () => TokenInfoBody,
|
|
15
|
+
TokenInfoItem: () => TokenInfoItem,
|
|
16
|
+
TokenInfoResponse: () => TokenInfoResponse,
|
|
17
|
+
TokenPool: () => TokenPool,
|
|
18
|
+
TokenPoolsBody: () => TokenPoolsBody,
|
|
19
|
+
TokenPoolsResponse: () => TokenPoolsResponse,
|
|
20
|
+
TrendingPool: () => TrendingPool,
|
|
21
|
+
TrendingPoolsResponse: () => TrendingPoolsResponse
|
|
22
|
+
});
|
|
23
|
+
import { z } from "zod";
|
|
24
|
+
var Network = z.string().min(1).describe("GeckoTerminal network slug (e.g. `eth`, `bsc`, `base`, `arbitrum`).");
|
|
25
|
+
var TokenPoolsBody = z.object({
|
|
26
|
+
network: Network,
|
|
27
|
+
tokenAddress: z.string().min(1).describe("Token contract address on `network`. Returns the pools that include it."),
|
|
28
|
+
page: z.number().int().min(1).optional().default(1).describe("1-based page number \u2014 GeckoTerminal returns up to 20 pools per page.")
|
|
29
|
+
});
|
|
30
|
+
var TokenPool = z.object({
|
|
31
|
+
poolAddress: z.string(),
|
|
32
|
+
name: z.string(),
|
|
33
|
+
dex: z.string(),
|
|
34
|
+
priceUsd: z.string().nullable(),
|
|
35
|
+
priceNative: z.string().nullable(),
|
|
36
|
+
volume24h: z.number().nullable(),
|
|
37
|
+
reserveUsd: z.number().nullable(),
|
|
38
|
+
priceChangePercentage: z.object({
|
|
39
|
+
m5: z.string().nullable(),
|
|
40
|
+
h1: z.string().nullable(),
|
|
41
|
+
h6: z.string().nullable(),
|
|
42
|
+
h24: z.string().nullable()
|
|
43
|
+
}),
|
|
44
|
+
transactions: z.object({
|
|
45
|
+
buys24h: z.number().nullable(),
|
|
46
|
+
sells24h: z.number().nullable()
|
|
47
|
+
})
|
|
48
|
+
});
|
|
49
|
+
var TokenPoolsResponse = z.array(TokenPool);
|
|
50
|
+
var PoolOhlcvBody = z.object({
|
|
51
|
+
network: Network,
|
|
52
|
+
poolAddress: z.string().min(1).describe("DEX pool contract address on `network`."),
|
|
53
|
+
timeframe: z.enum(["day", "hour", "minute"]).optional().default("day").describe("Candle resolution unit."),
|
|
54
|
+
aggregate: z.number().int().min(1).optional().describe("Bucket multiple `timeframe` units into one candle (e.g. `timeframe=hour, aggregate=4` \u2192 4-hour candles)."),
|
|
55
|
+
limit: z.number().int().min(1).max(1e3).optional().default(100).describe("Number of candles to return (1\u20131000)."),
|
|
56
|
+
beforeTimestamp: z.number().optional().describe("Unix epoch seconds \u2014 return candles strictly before this time. Use for pagination backwards in history.")
|
|
57
|
+
});
|
|
58
|
+
var PoolOhlcvCandle = z.object({
|
|
59
|
+
timestamp: z.number(),
|
|
60
|
+
open: z.number(),
|
|
61
|
+
high: z.number(),
|
|
62
|
+
low: z.number(),
|
|
63
|
+
close: z.number(),
|
|
64
|
+
volumeUsd: z.number()
|
|
65
|
+
});
|
|
66
|
+
var PoolOhlcvResponse = z.array(PoolOhlcvCandle);
|
|
67
|
+
var PoolTradesBody = z.object({
|
|
68
|
+
network: Network,
|
|
69
|
+
poolAddress: z.string().min(1).describe("DEX pool contract address on `network`."),
|
|
70
|
+
tradeVolumeInUsdGreaterThan: z.number().optional().describe("Drop trades below this USD-equivalent volume threshold. Useful for filtering dust/wash trades.")
|
|
71
|
+
});
|
|
72
|
+
var PoolTrade = z.object({
|
|
73
|
+
blockTimestamp: z.string(),
|
|
74
|
+
txHash: z.string(),
|
|
75
|
+
kind: z.string(),
|
|
76
|
+
volumeUsd: z.string().nullable(),
|
|
77
|
+
fromTokenAmount: z.string(),
|
|
78
|
+
toTokenAmount: z.string(),
|
|
79
|
+
fromTokenAddress: z.string(),
|
|
80
|
+
toTokenAddress: z.string(),
|
|
81
|
+
priceFromInUsd: z.string().nullable(),
|
|
82
|
+
priceToInUsd: z.string().nullable(),
|
|
83
|
+
txFromAddress: z.string()
|
|
84
|
+
});
|
|
85
|
+
var PoolTradesResponse = z.array(PoolTrade);
|
|
86
|
+
var TrendingPool = z.object({
|
|
87
|
+
poolAddress: z.string(),
|
|
88
|
+
name: z.string(),
|
|
89
|
+
network: z.string(),
|
|
90
|
+
dex: z.string(),
|
|
91
|
+
priceUsd: z.string().nullable(),
|
|
92
|
+
priceChangeH24: z.string().nullable(),
|
|
93
|
+
volume24h: z.number().nullable(),
|
|
94
|
+
reserveUsd: z.number().nullable()
|
|
95
|
+
});
|
|
96
|
+
var TrendingPoolsResponse = z.array(TrendingPool);
|
|
97
|
+
var TokenInfoBody = z.object({
|
|
98
|
+
network: Network,
|
|
99
|
+
addresses: z.array(z.string().min(1)).min(1).max(30).describe("Token contract addresses on `network` (1\u201330 per request). Batched lookup."),
|
|
100
|
+
includeTopPools: z.boolean().optional().default(true).describe("Include each token's top pools in the response. Set false to slim down the payload.")
|
|
101
|
+
});
|
|
102
|
+
var TokenInfoItem = z.object({
|
|
103
|
+
address: z.string(),
|
|
104
|
+
name: z.string(),
|
|
105
|
+
symbol: z.string(),
|
|
106
|
+
decimals: z.number(),
|
|
107
|
+
totalSupply: z.string().nullable(),
|
|
108
|
+
priceUsd: z.string().nullable(),
|
|
109
|
+
marketCapUsd: z.string().nullable(),
|
|
110
|
+
fdvUsd: z.string().nullable(),
|
|
111
|
+
imageUrl: z.string().nullable(),
|
|
112
|
+
coingeckoCoinId: z.string().nullable(),
|
|
113
|
+
volume24h: z.number().nullable(),
|
|
114
|
+
topPools: z.array(z.object({ address: z.string(), name: z.string(), dex: z.string() }))
|
|
115
|
+
});
|
|
116
|
+
var TokenInfoResponse = z.array(TokenInfoItem);
|
|
117
|
+
|
|
118
|
+
export {
|
|
119
|
+
TokenPoolsBody,
|
|
120
|
+
TokenPool,
|
|
121
|
+
TokenPoolsResponse,
|
|
122
|
+
PoolOhlcvBody,
|
|
123
|
+
PoolOhlcvCandle,
|
|
124
|
+
PoolOhlcvResponse,
|
|
125
|
+
PoolTradesBody,
|
|
126
|
+
PoolTrade,
|
|
127
|
+
PoolTradesResponse,
|
|
128
|
+
TrendingPool,
|
|
129
|
+
TrendingPoolsResponse,
|
|
130
|
+
TokenInfoBody,
|
|
131
|
+
TokenInfoItem,
|
|
132
|
+
TokenInfoResponse,
|
|
133
|
+
schemas_exports
|
|
134
|
+
};
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
import {
|
|
2
|
+
__export
|
|
3
|
+
} from "./chunk-MLKGABMK.js";
|
|
4
|
+
|
|
5
|
+
// src/moralis/schemas.ts
|
|
6
|
+
var schemas_exports = {};
|
|
7
|
+
__export(schemas_exports, {
|
|
8
|
+
DefiPosition: () => DefiPosition,
|
|
9
|
+
DefiPositionsBody: () => DefiPositionsBody,
|
|
10
|
+
DefiPositionsResponse: () => DefiPositionsResponse,
|
|
11
|
+
NftHoldingsBody: () => NftHoldingsBody,
|
|
12
|
+
NftHoldingsResponse: () => NftHoldingsResponse,
|
|
13
|
+
NftItem: () => NftItem,
|
|
14
|
+
TokenTransfer: () => TokenTransfer,
|
|
15
|
+
TransfersBody: () => TransfersBody,
|
|
16
|
+
TransfersResponse: () => TransfersResponse,
|
|
17
|
+
WalletBody: () => WalletBody,
|
|
18
|
+
WalletResponse: () => WalletResponse,
|
|
19
|
+
WalletTokenBalance: () => WalletTokenBalance
|
|
20
|
+
});
|
|
21
|
+
import { z } from "zod";
|
|
22
|
+
var CHAIN_NAMES = {
|
|
23
|
+
eth: "0x1",
|
|
24
|
+
ethereum: "0x1",
|
|
25
|
+
bsc: "0x38",
|
|
26
|
+
bnb: "0x38",
|
|
27
|
+
polygon: "0x89",
|
|
28
|
+
matic: "0x89",
|
|
29
|
+
arbitrum: "0xa4b1",
|
|
30
|
+
optimism: "0xa",
|
|
31
|
+
base: "0x2105",
|
|
32
|
+
avalanche: "0xa86a",
|
|
33
|
+
avax: "0xa86a",
|
|
34
|
+
fantom: "0xfa",
|
|
35
|
+
ftm: "0xfa",
|
|
36
|
+
linea: "0xe708"
|
|
37
|
+
};
|
|
38
|
+
var evmChainId = z.string().default("0x1").transform((val) => CHAIN_NAMES[val.toLowerCase()] ?? val).describe(
|
|
39
|
+
"EVM chain \u2014 accepts a friendly name (`eth`, `base`, `polygon`, `arbitrum`, \u2026) or a hex chain id (`0x1`, `0x2105`, \u2026). Defaults to Ethereum mainnet."
|
|
40
|
+
);
|
|
41
|
+
var evmAddress = z.string().regex(/^0x[a-fA-F0-9]{40}$/).describe("EVM-style 0x-prefixed 40-hex-char address.");
|
|
42
|
+
var WalletBody = z.object({
|
|
43
|
+
address: evmAddress,
|
|
44
|
+
chain: evmChainId.optional(),
|
|
45
|
+
toBlock: z.number().int().optional().describe("Snapshot the wallet at this block height. Omit for the current head.")
|
|
46
|
+
});
|
|
47
|
+
var WalletTokenBalance = z.object({
|
|
48
|
+
tokenAddress: z.string().nullable(),
|
|
49
|
+
name: z.string(),
|
|
50
|
+
symbol: z.string(),
|
|
51
|
+
decimals: z.number(),
|
|
52
|
+
balance: z.string(),
|
|
53
|
+
balanceFormatted: z.string(),
|
|
54
|
+
usdPrice: z.number().nullable(),
|
|
55
|
+
usdValue: z.number().nullable(),
|
|
56
|
+
portfolioPercentage: z.number(),
|
|
57
|
+
nativeToken: z.boolean(),
|
|
58
|
+
logo: z.string().nullable()
|
|
59
|
+
});
|
|
60
|
+
var WalletResponse = z.object({
|
|
61
|
+
address: z.string(),
|
|
62
|
+
totalNetworthUsd: z.string(),
|
|
63
|
+
chains: z.array(
|
|
64
|
+
z.object({
|
|
65
|
+
chain: z.string(),
|
|
66
|
+
networthUsd: z.string(),
|
|
67
|
+
nativeBalanceFormatted: z.string(),
|
|
68
|
+
tokenBalanceUsd: z.string()
|
|
69
|
+
})
|
|
70
|
+
),
|
|
71
|
+
tokens: z.array(WalletTokenBalance)
|
|
72
|
+
});
|
|
73
|
+
var TransfersBody = z.object({
|
|
74
|
+
address: evmAddress,
|
|
75
|
+
chain: evmChainId.optional(),
|
|
76
|
+
limit: z.number().max(100).default(50).describe("Transfers per page (max 100)."),
|
|
77
|
+
fromDate: z.string().optional().describe("ISO 8601 (or YYYY-MM-DD) start date \u2014 only return transfers after this date."),
|
|
78
|
+
toDate: z.string().optional().describe("ISO 8601 (or YYYY-MM-DD) end date \u2014 only return transfers before this date."),
|
|
79
|
+
cursor: z.string().optional().describe("Opaque pagination cursor from the previous response. Omit for page 1.")
|
|
80
|
+
});
|
|
81
|
+
var TokenTransfer = z.object({
|
|
82
|
+
tokenAddress: z.string(),
|
|
83
|
+
tokenName: z.string().nullable(),
|
|
84
|
+
tokenSymbol: z.string().nullable(),
|
|
85
|
+
tokenDecimals: z.number(),
|
|
86
|
+
fromAddress: z.string(),
|
|
87
|
+
toAddress: z.string(),
|
|
88
|
+
value: z.string(),
|
|
89
|
+
valueFormatted: z.string().nullable(),
|
|
90
|
+
blockTimestamp: z.string(),
|
|
91
|
+
blockNumber: z.string(),
|
|
92
|
+
transactionHash: z.string()
|
|
93
|
+
});
|
|
94
|
+
var TransfersResponse = z.object({
|
|
95
|
+
transfers: z.array(TokenTransfer),
|
|
96
|
+
cursor: z.string().nullable()
|
|
97
|
+
});
|
|
98
|
+
var DefiPositionsBody = z.object({
|
|
99
|
+
address: evmAddress,
|
|
100
|
+
chain: evmChainId.optional()
|
|
101
|
+
});
|
|
102
|
+
var DefiPosition = z.object({
|
|
103
|
+
protocolName: z.string().nullable(),
|
|
104
|
+
protocolId: z.string().nullable(),
|
|
105
|
+
protocolUrl: z.string().nullable(),
|
|
106
|
+
protocolLogo: z.string().nullable(),
|
|
107
|
+
label: z.string().nullable(),
|
|
108
|
+
balanceUsd: z.number().nullable(),
|
|
109
|
+
totalUnclaimedUsdValue: z.number().nullable(),
|
|
110
|
+
tokens: z.array(z.unknown())
|
|
111
|
+
});
|
|
112
|
+
var DefiPositionsResponse = z.array(DefiPosition);
|
|
113
|
+
var NftHoldingsBody = z.object({
|
|
114
|
+
address: evmAddress,
|
|
115
|
+
chain: evmChainId.optional(),
|
|
116
|
+
limit: z.number().max(100).default(50).describe("NFTs per page (max 100)."),
|
|
117
|
+
cursor: z.string().optional().describe("Opaque pagination cursor from the previous response. Omit for page 1.")
|
|
118
|
+
});
|
|
119
|
+
var NftItem = z.object({
|
|
120
|
+
tokenAddress: z.string(),
|
|
121
|
+
tokenId: z.string(),
|
|
122
|
+
contractType: z.string().nullable(),
|
|
123
|
+
name: z.string().nullable(),
|
|
124
|
+
symbol: z.string().nullable(),
|
|
125
|
+
tokenUri: z.string().nullable(),
|
|
126
|
+
amount: z.number().nullable(),
|
|
127
|
+
ownerOf: z.string().nullable(),
|
|
128
|
+
possibleSpam: z.boolean(),
|
|
129
|
+
metadata: z.unknown().nullable()
|
|
130
|
+
});
|
|
131
|
+
var NftHoldingsResponse = z.object({
|
|
132
|
+
nfts: z.array(NftItem),
|
|
133
|
+
cursor: z.string().nullable()
|
|
134
|
+
});
|
|
135
|
+
|
|
136
|
+
export {
|
|
137
|
+
WalletBody,
|
|
138
|
+
WalletTokenBalance,
|
|
139
|
+
WalletResponse,
|
|
140
|
+
TransfersBody,
|
|
141
|
+
TokenTransfer,
|
|
142
|
+
TransfersResponse,
|
|
143
|
+
DefiPositionsBody,
|
|
144
|
+
DefiPosition,
|
|
145
|
+
DefiPositionsResponse,
|
|
146
|
+
NftHoldingsBody,
|
|
147
|
+
NftItem,
|
|
148
|
+
NftHoldingsResponse,
|
|
149
|
+
schemas_exports
|
|
150
|
+
};
|
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
import {
|
|
2
|
+
__export
|
|
3
|
+
} from "./chunk-MLKGABMK.js";
|
|
4
|
+
|
|
5
|
+
// src/coinglass/schemas.ts
|
|
6
|
+
var schemas_exports = {};
|
|
7
|
+
__export(schemas_exports, {
|
|
8
|
+
ExchangePairItem: () => ExchangePairItem,
|
|
9
|
+
ExchangePairsBody: () => ExchangePairsBody,
|
|
10
|
+
ExchangePairsResponse: () => ExchangePairsResponse,
|
|
11
|
+
FundingRateHistoryBody: () => FundingRateHistoryBody,
|
|
12
|
+
FundingRateItem: () => FundingRateItem,
|
|
13
|
+
FundingRatesBody: () => FundingRatesBody,
|
|
14
|
+
FundingRatesResponse: () => FundingRatesResponse,
|
|
15
|
+
LiquidationByExchangeItem: () => LiquidationByExchangeItem,
|
|
16
|
+
LiquidationHistoryBody: () => LiquidationHistoryBody,
|
|
17
|
+
LiquidationHistoryItem: () => LiquidationHistoryItem,
|
|
18
|
+
LiquidationHistoryResponse: () => LiquidationHistoryResponse,
|
|
19
|
+
LiquidationItem: () => LiquidationItem,
|
|
20
|
+
LiquidationsBody: () => LiquidationsBody,
|
|
21
|
+
LiquidationsByExchangeBody: () => LiquidationsByExchangeBody,
|
|
22
|
+
LiquidationsByExchangeResponse: () => LiquidationsByExchangeResponse,
|
|
23
|
+
LiquidationsResponse: () => LiquidationsResponse,
|
|
24
|
+
LongShortExchangeItem: () => LongShortExchangeItem,
|
|
25
|
+
LongShortRatioBody: () => LongShortRatioBody,
|
|
26
|
+
LongShortRatioHistoryBody: () => LongShortRatioHistoryBody,
|
|
27
|
+
LongShortRatioHistoryItem: () => LongShortRatioHistoryItem,
|
|
28
|
+
LongShortRatioHistoryResponse: () => LongShortRatioHistoryResponse,
|
|
29
|
+
LongShortRatioResponse: () => LongShortRatioResponse,
|
|
30
|
+
OhlcCandle: () => OhlcCandle,
|
|
31
|
+
OhlcCandleResponse: () => OhlcCandleResponse,
|
|
32
|
+
OpenInterestBody: () => OpenInterestBody,
|
|
33
|
+
OpenInterestHistoryBody: () => OpenInterestHistoryBody,
|
|
34
|
+
OpenInterestItem: () => OpenInterestItem,
|
|
35
|
+
OpenInterestResponse: () => OpenInterestResponse,
|
|
36
|
+
SupportedListResponse: () => SupportedListResponse
|
|
37
|
+
});
|
|
38
|
+
import { z } from "zod";
|
|
39
|
+
var symbol = z.string().transform((s) => s.toUpperCase()).describe("Coin symbol, uppercased (e.g. `BTC`, `ETH`).");
|
|
40
|
+
var intervalEnum = z.enum(["1m", "3m", "5m", "15m", "30m", "1h", "4h", "6h", "8h", "12h", "1d", "1w"]).default("1d").describe("Candle interval for the historical series.");
|
|
41
|
+
var rangeEnum = z.enum(["4h", "6h", "8h", "12h", "1d", "1w"]).default("4h").describe("Aggregation window for the snapshot.");
|
|
42
|
+
var FundingRatesBody = z.object({
|
|
43
|
+
symbol: symbol.optional()
|
|
44
|
+
});
|
|
45
|
+
var FundingRateItem = z.object({
|
|
46
|
+
symbol: z.string(),
|
|
47
|
+
exchange: z.string(),
|
|
48
|
+
fundingRate: z.number().nullable(),
|
|
49
|
+
fundingRateInterval: z.number().nullable(),
|
|
50
|
+
nextFundingTime: z.number().nullable()
|
|
51
|
+
});
|
|
52
|
+
var FundingRatesResponse = z.array(FundingRateItem);
|
|
53
|
+
var OpenInterestBody = z.object({ symbol });
|
|
54
|
+
var OpenInterestItem = z.object({
|
|
55
|
+
exchange: z.string(),
|
|
56
|
+
symbol: z.string(),
|
|
57
|
+
openInterestUsd: z.number().nullable(),
|
|
58
|
+
openInterestQuantity: z.number().nullable(),
|
|
59
|
+
coinMarginUsd: z.number().nullable(),
|
|
60
|
+
stablecoinMarginUsd: z.number().nullable(),
|
|
61
|
+
changePercent5m: z.number().nullable(),
|
|
62
|
+
changePercent15m: z.number().nullable(),
|
|
63
|
+
changePercent30m: z.number().nullable(),
|
|
64
|
+
changePercent1h: z.number().nullable(),
|
|
65
|
+
changePercent4h: z.number().nullable(),
|
|
66
|
+
changePercent24h: z.number().nullable()
|
|
67
|
+
});
|
|
68
|
+
var OpenInterestResponse = z.array(OpenInterestItem);
|
|
69
|
+
var LiquidationsBody = z.object({
|
|
70
|
+
symbol: symbol.optional()
|
|
71
|
+
});
|
|
72
|
+
var LiquidationItem = z.object({
|
|
73
|
+
symbol: z.string(),
|
|
74
|
+
liquidationUsd24h: z.number().nullable(),
|
|
75
|
+
longLiquidationUsd24h: z.number().nullable(),
|
|
76
|
+
shortLiquidationUsd24h: z.number().nullable(),
|
|
77
|
+
liquidationUsd12h: z.number().nullable(),
|
|
78
|
+
longLiquidationUsd12h: z.number().nullable(),
|
|
79
|
+
shortLiquidationUsd12h: z.number().nullable(),
|
|
80
|
+
liquidationUsd4h: z.number().nullable(),
|
|
81
|
+
longLiquidationUsd4h: z.number().nullable(),
|
|
82
|
+
shortLiquidationUsd4h: z.number().nullable(),
|
|
83
|
+
liquidationUsd1h: z.number().nullable(),
|
|
84
|
+
longLiquidationUsd1h: z.number().nullable(),
|
|
85
|
+
shortLiquidationUsd1h: z.number().nullable()
|
|
86
|
+
});
|
|
87
|
+
var LiquidationsResponse = z.array(LiquidationItem);
|
|
88
|
+
var LongShortRatioBody = z.object({
|
|
89
|
+
symbol: symbol.default("BTC"),
|
|
90
|
+
range: rangeEnum
|
|
91
|
+
});
|
|
92
|
+
var LongShortExchangeItem = z.object({
|
|
93
|
+
exchange: z.string(),
|
|
94
|
+
buyRatio: z.number().nullable(),
|
|
95
|
+
sellRatio: z.number().nullable(),
|
|
96
|
+
buyVolUsd: z.number().nullable(),
|
|
97
|
+
sellVolUsd: z.number().nullable()
|
|
98
|
+
});
|
|
99
|
+
var LongShortRatioResponse = z.object({
|
|
100
|
+
symbol: z.string(),
|
|
101
|
+
buyRatio: z.number().nullable(),
|
|
102
|
+
sellRatio: z.number().nullable(),
|
|
103
|
+
buyVolUsd: z.number().nullable(),
|
|
104
|
+
sellVolUsd: z.number().nullable(),
|
|
105
|
+
exchanges: z.array(LongShortExchangeItem)
|
|
106
|
+
});
|
|
107
|
+
var SupportedListResponse = z.array(z.string());
|
|
108
|
+
var ExchangePairsBody = z.object({
|
|
109
|
+
symbol: symbol.optional(),
|
|
110
|
+
exchange: z.string().optional().describe("Filter to a single exchange (e.g. `Binance`). Returns all when omitted.")
|
|
111
|
+
});
|
|
112
|
+
var ExchangePairItem = z.object({
|
|
113
|
+
exchange: z.string(),
|
|
114
|
+
instrumentId: z.string(),
|
|
115
|
+
baseAsset: z.string(),
|
|
116
|
+
quoteAsset: z.string(),
|
|
117
|
+
settlementCurrency: z.string(),
|
|
118
|
+
maxLeverage: z.number().nullable(),
|
|
119
|
+
fundingInterval: z.number().nullable()
|
|
120
|
+
});
|
|
121
|
+
var ExchangePairsResponse = z.array(ExchangePairItem);
|
|
122
|
+
var LiquidationsByExchangeBody = z.object({
|
|
123
|
+
symbol: symbol.default("BTC"),
|
|
124
|
+
range: rangeEnum
|
|
125
|
+
});
|
|
126
|
+
var LiquidationByExchangeItem = z.object({
|
|
127
|
+
exchange: z.string(),
|
|
128
|
+
liquidationUsd: z.number().nullable(),
|
|
129
|
+
longLiquidationUsd: z.number().nullable(),
|
|
130
|
+
shortLiquidationUsd: z.number().nullable()
|
|
131
|
+
});
|
|
132
|
+
var LiquidationsByExchangeResponse = z.array(LiquidationByExchangeItem);
|
|
133
|
+
var historyBody = z.object({
|
|
134
|
+
exchange: z.string().default("Binance").describe("Exchange to pull historical data from."),
|
|
135
|
+
symbol: symbol.default("BTCUSDT"),
|
|
136
|
+
interval: intervalEnum,
|
|
137
|
+
limit: z.number().int().min(1).max(4500).default(100).describe("Number of historical points to return (1\u20134500)."),
|
|
138
|
+
startTime: z.number().optional().describe("Unix epoch ms \u2014 start of the time window. Omit to use `limit` newest points."),
|
|
139
|
+
endTime: z.number().optional().describe("Unix epoch ms \u2014 end of the time window.")
|
|
140
|
+
});
|
|
141
|
+
var FundingRateHistoryBody = historyBody;
|
|
142
|
+
var OpenInterestHistoryBody = historyBody;
|
|
143
|
+
var LiquidationHistoryBody = historyBody;
|
|
144
|
+
var LongShortRatioHistoryBody = historyBody;
|
|
145
|
+
var OhlcCandle = z.object({
|
|
146
|
+
time: z.number(),
|
|
147
|
+
open: z.number(),
|
|
148
|
+
high: z.number(),
|
|
149
|
+
low: z.number(),
|
|
150
|
+
close: z.number()
|
|
151
|
+
});
|
|
152
|
+
var OhlcCandleResponse = z.array(OhlcCandle);
|
|
153
|
+
var LiquidationHistoryItem = z.object({
|
|
154
|
+
time: z.number(),
|
|
155
|
+
longLiquidationUsd: z.number(),
|
|
156
|
+
shortLiquidationUsd: z.number()
|
|
157
|
+
});
|
|
158
|
+
var LiquidationHistoryResponse = z.array(LiquidationHistoryItem);
|
|
159
|
+
var LongShortRatioHistoryItem = z.object({
|
|
160
|
+
time: z.number(),
|
|
161
|
+
longPercent: z.number(),
|
|
162
|
+
shortPercent: z.number(),
|
|
163
|
+
longShortRatio: z.number()
|
|
164
|
+
});
|
|
165
|
+
var LongShortRatioHistoryResponse = z.array(LongShortRatioHistoryItem);
|
|
166
|
+
|
|
167
|
+
export {
|
|
168
|
+
FundingRatesBody,
|
|
169
|
+
FundingRateItem,
|
|
170
|
+
FundingRatesResponse,
|
|
171
|
+
OpenInterestBody,
|
|
172
|
+
OpenInterestItem,
|
|
173
|
+
OpenInterestResponse,
|
|
174
|
+
LiquidationsBody,
|
|
175
|
+
LiquidationItem,
|
|
176
|
+
LiquidationsResponse,
|
|
177
|
+
LongShortRatioBody,
|
|
178
|
+
LongShortExchangeItem,
|
|
179
|
+
LongShortRatioResponse,
|
|
180
|
+
SupportedListResponse,
|
|
181
|
+
ExchangePairsBody,
|
|
182
|
+
ExchangePairItem,
|
|
183
|
+
ExchangePairsResponse,
|
|
184
|
+
LiquidationsByExchangeBody,
|
|
185
|
+
LiquidationByExchangeItem,
|
|
186
|
+
LiquidationsByExchangeResponse,
|
|
187
|
+
FundingRateHistoryBody,
|
|
188
|
+
OpenInterestHistoryBody,
|
|
189
|
+
LiquidationHistoryBody,
|
|
190
|
+
LongShortRatioHistoryBody,
|
|
191
|
+
OhlcCandle,
|
|
192
|
+
OhlcCandleResponse,
|
|
193
|
+
LiquidationHistoryItem,
|
|
194
|
+
LiquidationHistoryResponse,
|
|
195
|
+
LongShortRatioHistoryItem,
|
|
196
|
+
LongShortRatioHistoryResponse,
|
|
197
|
+
schemas_exports
|
|
198
|
+
};
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
|
|
20
|
+
// src/coingecko/schemas.ts
|
|
21
|
+
var schemas_exports = {};
|
|
22
|
+
__export(schemas_exports, {
|
|
23
|
+
ContractAddress: () => ContractAddress,
|
|
24
|
+
OhlcvBody: () => OhlcvBody,
|
|
25
|
+
OhlcvCandle: () => OhlcvCandle,
|
|
26
|
+
OhlcvResponse: () => OhlcvResponse,
|
|
27
|
+
PriceAtDateBody: () => PriceAtDateBody,
|
|
28
|
+
PriceBody: () => PriceBody,
|
|
29
|
+
PriceHistoryBody: () => PriceHistoryBody,
|
|
30
|
+
PriceHistoryResponse: () => PriceHistoryResponse,
|
|
31
|
+
PricePoint: () => PricePoint,
|
|
32
|
+
PriceResponse: () => PriceResponse,
|
|
33
|
+
PriceSnapshot: () => PriceSnapshot,
|
|
34
|
+
SearchBody: () => SearchBody,
|
|
35
|
+
SearchResponse: () => SearchResponse,
|
|
36
|
+
SearchResult: () => SearchResult,
|
|
37
|
+
TokenInfo: () => TokenInfo,
|
|
38
|
+
TokenInfoBody: () => TokenInfoBody,
|
|
39
|
+
TokenPrice: () => TokenPrice,
|
|
40
|
+
TrendingResponse: () => TrendingResponse,
|
|
41
|
+
TrendingToken: () => TrendingToken
|
|
42
|
+
});
|
|
43
|
+
module.exports = __toCommonJS(schemas_exports);
|
|
44
|
+
var import_zod = require("zod");
|
|
45
|
+
var PriceBody = import_zod.z.object({
|
|
46
|
+
tokenIds: import_zod.z.array(import_zod.z.string()).min(1).describe("CoinGecko token IDs to price (e.g. `bitcoin`, `ethereum`). At least one required."),
|
|
47
|
+
vsCurrencies: import_zod.z.array(import_zod.z.string()).optional().describe("Quote currencies (e.g. `usd`, `eur`, `btc`). Defaults to USD when omitted."),
|
|
48
|
+
include24hrChange: import_zod.z.boolean().default(true).describe("Include 24-hour percentage price change in the response."),
|
|
49
|
+
includeMarketCap: import_zod.z.boolean().default(true).describe("Include market cap in the response."),
|
|
50
|
+
include24hrVol: import_zod.z.boolean().default(false).describe("Include 24-hour trading volume in the response.")
|
|
51
|
+
});
|
|
52
|
+
var TokenPrice = import_zod.z.object({
|
|
53
|
+
id: import_zod.z.string(),
|
|
54
|
+
price: import_zod.z.number().nullable(),
|
|
55
|
+
change24h: import_zod.z.number().nullable(),
|
|
56
|
+
marketCap: import_zod.z.number().nullable(),
|
|
57
|
+
volume24h: import_zod.z.number().nullable(),
|
|
58
|
+
currency: import_zod.z.string()
|
|
59
|
+
});
|
|
60
|
+
var PriceResponse = import_zod.z.array(TokenPrice);
|
|
61
|
+
var OhlcvBody = import_zod.z.object({
|
|
62
|
+
tokenId: import_zod.z.string().min(1).describe("CoinGecko token ID (e.g. `bitcoin`)."),
|
|
63
|
+
vsCurrency: import_zod.z.string().default("usd").describe("Quote currency for the OHLCV candles."),
|
|
64
|
+
days: import_zod.z.enum(["1", "7", "14", "30", "90", "180", "365", "max"]).default("7").describe("Lookback window. Use `max` for the full available history."),
|
|
65
|
+
interval: import_zod.z.enum(["daily", "hourly"]).optional().describe("Candle resolution. CoinGecko picks a sensible default if omitted (hourly for short windows, daily for long).")
|
|
66
|
+
});
|
|
67
|
+
var OhlcvCandle = import_zod.z.object({
|
|
68
|
+
timestamp: import_zod.z.number(),
|
|
69
|
+
open: import_zod.z.number(),
|
|
70
|
+
high: import_zod.z.number(),
|
|
71
|
+
low: import_zod.z.number(),
|
|
72
|
+
close: import_zod.z.number()
|
|
73
|
+
});
|
|
74
|
+
var OhlcvResponse = import_zod.z.array(OhlcvCandle);
|
|
75
|
+
var TokenInfoBody = import_zod.z.object({
|
|
76
|
+
tokenId: import_zod.z.string().min(1).describe("CoinGecko token ID to fetch metadata for.")
|
|
77
|
+
});
|
|
78
|
+
var ContractAddress = import_zod.z.object({
|
|
79
|
+
chain: import_zod.z.string(),
|
|
80
|
+
chainId: import_zod.z.number().nullable(),
|
|
81
|
+
platformId: import_zod.z.string(),
|
|
82
|
+
address: import_zod.z.string()
|
|
83
|
+
});
|
|
84
|
+
var TokenInfo = import_zod.z.object({
|
|
85
|
+
id: import_zod.z.string(),
|
|
86
|
+
symbol: import_zod.z.string(),
|
|
87
|
+
name: import_zod.z.string(),
|
|
88
|
+
description: import_zod.z.string(),
|
|
89
|
+
categories: import_zod.z.array(import_zod.z.string()),
|
|
90
|
+
links: import_zod.z.object({
|
|
91
|
+
homepage: import_zod.z.array(import_zod.z.string()),
|
|
92
|
+
twitter: import_zod.z.string().nullable(),
|
|
93
|
+
telegram: import_zod.z.string().nullable(),
|
|
94
|
+
github: import_zod.z.array(import_zod.z.string()),
|
|
95
|
+
subreddit: import_zod.z.string().nullable()
|
|
96
|
+
}),
|
|
97
|
+
contracts: import_zod.z.array(ContractAddress),
|
|
98
|
+
genesisDate: import_zod.z.string().nullable(),
|
|
99
|
+
image: import_zod.z.string().nullable(),
|
|
100
|
+
marketCapRank: import_zod.z.number().nullable()
|
|
101
|
+
});
|
|
102
|
+
var TrendingToken = import_zod.z.object({
|
|
103
|
+
id: import_zod.z.string(),
|
|
104
|
+
name: import_zod.z.string(),
|
|
105
|
+
symbol: import_zod.z.string(),
|
|
106
|
+
marketCapRank: import_zod.z.number().nullable(),
|
|
107
|
+
priceBtc: import_zod.z.number().nullable(),
|
|
108
|
+
priceUsd: import_zod.z.number().nullable(),
|
|
109
|
+
change24h: import_zod.z.number().nullable(),
|
|
110
|
+
thumb: import_zod.z.string().nullable(),
|
|
111
|
+
score: import_zod.z.number().nullable()
|
|
112
|
+
});
|
|
113
|
+
var TrendingResponse = import_zod.z.array(TrendingToken);
|
|
114
|
+
var SearchBody = import_zod.z.object({
|
|
115
|
+
query: import_zod.z.string().min(1).describe("Free-text search query (token name, symbol, or partial match).")
|
|
116
|
+
});
|
|
117
|
+
var SearchResult = import_zod.z.object({
|
|
118
|
+
id: import_zod.z.string(),
|
|
119
|
+
name: import_zod.z.string(),
|
|
120
|
+
symbol: import_zod.z.string(),
|
|
121
|
+
marketCapRank: import_zod.z.number().nullable(),
|
|
122
|
+
thumb: import_zod.z.string().nullable()
|
|
123
|
+
});
|
|
124
|
+
var SearchResponse = import_zod.z.array(SearchResult);
|
|
125
|
+
var PriceHistoryBody = import_zod.z.object({
|
|
126
|
+
tokenId: import_zod.z.string().min(1).describe("CoinGecko token ID."),
|
|
127
|
+
vsCurrency: import_zod.z.string().default("usd").describe("Quote currency for the historical prices."),
|
|
128
|
+
days: import_zod.z.string().optional().describe("Lookback window in days (e.g. `30`). Mutually exclusive with `from`/`to`."),
|
|
129
|
+
from: import_zod.z.string().optional().describe("ISO 8601 start timestamp (UTC). Use with `to` instead of `days`."),
|
|
130
|
+
to: import_zod.z.string().optional().describe("ISO 8601 end timestamp (UTC). Use with `from` instead of `days`."),
|
|
131
|
+
interval: import_zod.z.enum(["5m", "hourly", "daily"]).optional().describe("Sampling interval. CoinGecko picks one based on the window when omitted.")
|
|
132
|
+
}).refine(
|
|
133
|
+
(d) => d.days || d.from && d.to,
|
|
134
|
+
"Provide either 'days' or both 'from' and 'to'"
|
|
135
|
+
);
|
|
136
|
+
var PricePoint = import_zod.z.object({
|
|
137
|
+
timestamp: import_zod.z.number(),
|
|
138
|
+
price: import_zod.z.number(),
|
|
139
|
+
marketCap: import_zod.z.number().nullable(),
|
|
140
|
+
volume: import_zod.z.number().nullable()
|
|
141
|
+
});
|
|
142
|
+
var PriceHistoryResponse = import_zod.z.array(PricePoint);
|
|
143
|
+
var PriceAtDateBody = import_zod.z.object({
|
|
144
|
+
tokenId: import_zod.z.string().min(1).describe("CoinGecko token ID."),
|
|
145
|
+
date: import_zod.z.string().regex(/^\d{4}-\d{2}-\d{2}$/).describe("Snapshot date in `YYYY-MM-DD` format (UTC). CoinGecko returns the daily close + cap + volume.")
|
|
146
|
+
});
|
|
147
|
+
var PriceSnapshot = import_zod.z.object({
|
|
148
|
+
id: import_zod.z.string(),
|
|
149
|
+
name: import_zod.z.string(),
|
|
150
|
+
symbol: import_zod.z.string(),
|
|
151
|
+
date: import_zod.z.string(),
|
|
152
|
+
price: import_zod.z.record(import_zod.z.string(), import_zod.z.number()),
|
|
153
|
+
marketCap: import_zod.z.record(import_zod.z.string(), import_zod.z.number()),
|
|
154
|
+
volume: import_zod.z.record(import_zod.z.string(), import_zod.z.number())
|
|
155
|
+
});
|
|
156
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
157
|
+
0 && (module.exports = {
|
|
158
|
+
ContractAddress,
|
|
159
|
+
OhlcvBody,
|
|
160
|
+
OhlcvCandle,
|
|
161
|
+
OhlcvResponse,
|
|
162
|
+
PriceAtDateBody,
|
|
163
|
+
PriceBody,
|
|
164
|
+
PriceHistoryBody,
|
|
165
|
+
PriceHistoryResponse,
|
|
166
|
+
PricePoint,
|
|
167
|
+
PriceResponse,
|
|
168
|
+
PriceSnapshot,
|
|
169
|
+
SearchBody,
|
|
170
|
+
SearchResponse,
|
|
171
|
+
SearchResult,
|
|
172
|
+
TokenInfo,
|
|
173
|
+
TokenInfoBody,
|
|
174
|
+
TokenPrice,
|
|
175
|
+
TrendingResponse,
|
|
176
|
+
TrendingToken
|
|
177
|
+
});
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import 'zod';
|
|
2
|
+
export { C as ContractAddress, O as OhlcvBody, a as OhlcvCandle, b as OhlcvResponse, P as PriceAtDateBody, c as PriceBody, d as PriceHistoryBody, e as PriceHistoryResponse, f as PricePoint, g as PriceResponse, h as PriceSnapshot, S as SearchBody, i as SearchResponse, j as SearchResult, T as TokenInfo, k as TokenInfoBody, l as TokenPrice, m as TrendingResponse, n as TrendingToken } from '../schemas-Cu7LkQN1.cjs';
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import 'zod';
|
|
2
|
+
export { C as ContractAddress, O as OhlcvBody, a as OhlcvCandle, b as OhlcvResponse, P as PriceAtDateBody, c as PriceBody, d as PriceHistoryBody, e as PriceHistoryResponse, f as PricePoint, g as PriceResponse, h as PriceSnapshot, S as SearchBody, i as SearchResponse, j as SearchResult, T as TokenInfo, k as TokenInfoBody, l as TokenPrice, m as TrendingResponse, n as TrendingToken } from '../schemas-Cu7LkQN1.js';
|