@0xmonaco/types 1.1.6 → 1.1.8
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/dist/analytics/builders.d.ts +9 -2
- package/dist/analytics/index.d.ts +20 -1
- package/dist/analytics/wallets.d.ts +12 -4
- package/dist/fees/responses.d.ts +7 -0
- package/dist/fees/responses.js +15 -7
- package/dist/market/index.d.ts +19 -0
- package/dist/rfq/responses.d.ts +109 -0
- package/dist/rfq/responses.js +73 -0
- package/dist/sweeper/index.d.ts +181 -0
- package/dist/websocket/events/market-stats-events.d.ts +19 -0
- package/dist/websocket/events/position-events.d.ts +3 -2
- package/dist/websocket/events/rfq-events.d.ts +21 -0
- package/dist/wire/schema.d.ts +202 -23
- package/package.json +2 -2
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
* Fees here are the builder's own add-ons (taker plus maker), never the
|
|
10
10
|
* protocol taker fee. USD amounts are decimal strings (USDC 1:1).
|
|
11
11
|
*/
|
|
12
|
-
import type { AnalyticsWindow, AnalyticsWindowParams } from "./index";
|
|
12
|
+
import type { AnalyticsWindow, AnalyticsWindowParams, VolumeUsdBySource } from "./index";
|
|
13
13
|
/** A builder's kind. */
|
|
14
14
|
export type BuilderKind = "application" | "group";
|
|
15
15
|
/** The display group an application is shown under. */
|
|
@@ -78,6 +78,8 @@ export interface BuilderFigures {
|
|
|
78
78
|
withdrawalsUsd: string;
|
|
79
79
|
/** `depositsUsd` less `withdrawalsUsd`; negative when more left than arrived. */
|
|
80
80
|
netFlowUsd: string;
|
|
81
|
+
/** `volumeUsd` split into its order-book and RFQ parts, counting the trades the builder took; absent when it covers a bucket folded before the split was recorded. */
|
|
82
|
+
volumeBySource?: VolumeUsdBySource;
|
|
81
83
|
}
|
|
82
84
|
/** Every displayed builder, by name. */
|
|
83
85
|
export interface ListBuildersResponse {
|
|
@@ -95,6 +97,8 @@ export interface GetBuilderTotalsResponse extends BuilderFigures {
|
|
|
95
97
|
activeTakers: number;
|
|
96
98
|
/** Wallets whose first trade through one of its applications fell in the window, once per (application, wallet). */
|
|
97
99
|
newTraders: number;
|
|
100
|
+
/** Accounts registered in the window under one of its applications (sign-ups), whether or not they traded. */
|
|
101
|
+
newAccounts: number;
|
|
98
102
|
}
|
|
99
103
|
/** A builder's figures for one bucket. */
|
|
100
104
|
export interface BuilderSeriesPoint extends BuilderFigures {
|
|
@@ -102,6 +106,7 @@ export interface BuilderSeriesPoint extends BuilderFigures {
|
|
|
102
106
|
bucketStart: number;
|
|
103
107
|
activeTakers: number;
|
|
104
108
|
newTraders: number;
|
|
109
|
+
newAccounts: number;
|
|
105
110
|
}
|
|
106
111
|
/** A builder's figures per bucket over a window. */
|
|
107
112
|
export interface GetBuilderSeriesResponse {
|
|
@@ -115,10 +120,12 @@ export interface ListBuilderLeaderboardParams extends AnalyticsWindowParams {
|
|
|
115
120
|
/** Builders to return, largest volume first (1-100, default 25). */
|
|
116
121
|
limit?: number;
|
|
117
122
|
}
|
|
118
|
-
/** One builder's row on the leaderboard; a display group ranks as one. A builder that only took deposits ranks with zero volume. */
|
|
123
|
+
/** One builder's row on the leaderboard; a display group ranks as one. A builder that only took deposits or only registered accounts ranks with zero volume. */
|
|
119
124
|
export interface BuilderLeaderboardRow extends BuilderFigures {
|
|
120
125
|
builder: Builder;
|
|
121
126
|
newTraders: number;
|
|
127
|
+
/** Accounts registered in the window under one of its applications (sign-ups). */
|
|
128
|
+
newAccounts: number;
|
|
122
129
|
/**
|
|
123
130
|
* Distinct taker wallets that traded through the builder, each once. With
|
|
124
131
|
* `window: "all"`, every wallet that ever traded through it. `null` for a
|
|
@@ -50,6 +50,16 @@ export interface AnalyticsWindow {
|
|
|
50
50
|
/** Bucket size the window is counted in. */
|
|
51
51
|
granularity: AnalyticsGranularity | (string & {});
|
|
52
52
|
}
|
|
53
|
+
/**
|
|
54
|
+
* A USD volume split by how it executed (RFQ-17). `orderBookVolumeUsd` plus
|
|
55
|
+
* `rfqVolumeUsd` is exactly the `volumeUsd` beside it.
|
|
56
|
+
*/
|
|
57
|
+
export interface VolumeUsdBySource {
|
|
58
|
+
/** The part of `volumeUsd` filled on the order book: `volumeUsd` less `rfqVolumeUsd`. */
|
|
59
|
+
orderBookVolumeUsd: string;
|
|
60
|
+
/** The part of `volumeUsd` filled by RFQ block trades. */
|
|
61
|
+
rfqVolumeUsd: string;
|
|
62
|
+
}
|
|
53
63
|
/** Protocol figures over a window or one bucket. */
|
|
54
64
|
export interface ProtocolFigures {
|
|
55
65
|
/** Taker volume in USD routed by the displayed builders; hidden builders' trades are not counted. */
|
|
@@ -64,8 +74,15 @@ export interface ProtocolFigures {
|
|
|
64
74
|
protocolFeesUsd: string;
|
|
65
75
|
/** Distinct taker wallets that traded (each once), all builders included. */
|
|
66
76
|
activeTakers: number;
|
|
67
|
-
/** Wallets whose first trade
|
|
77
|
+
/** Wallets whose first trade on the protocol fell inside, each counted once however many builders it traded through. */
|
|
68
78
|
newTraders: number;
|
|
79
|
+
/**
|
|
80
|
+
* Accounts registered inside (sign-ups) under any application, whether or not
|
|
81
|
+
* they traded, all builders included; `newTraders` counts first trades instead.
|
|
82
|
+
*/
|
|
83
|
+
newAccounts: number;
|
|
84
|
+
/** `volumeUsd` split into its order-book and RFQ parts; absent when it covers a bucket folded before the split was recorded. */
|
|
85
|
+
volumeBySource?: VolumeUsdBySource;
|
|
69
86
|
}
|
|
70
87
|
/** USDC custody flow over a window or one bucket, in USD (1:1). */
|
|
71
88
|
export interface CustodyFlows {
|
|
@@ -113,6 +130,8 @@ export interface MarketVolume {
|
|
|
113
130
|
protocolFeesUsd: string;
|
|
114
131
|
/** Trades in the market. */
|
|
115
132
|
tradesCount: number;
|
|
133
|
+
/** `volumeUsd` split into its order-book and RFQ parts; absent when the window holds a bucket folded before the split was recorded. */
|
|
134
|
+
volumeBySource?: VolumeUsdBySource;
|
|
116
135
|
}
|
|
117
136
|
/** Volume per market over a window. */
|
|
118
137
|
export interface ListMarketVolumesResponse {
|
|
@@ -83,8 +83,9 @@ export interface ListWalletLiquidationsResponse {
|
|
|
83
83
|
}
|
|
84
84
|
/**
|
|
85
85
|
* What the vault holds of one token. Amounts are raw token units. Custody is
|
|
86
|
-
*
|
|
87
|
-
*
|
|
86
|
+
* `openingRaw` plus `depositedRaw` less `withdrawnRaw`. It is folded into the
|
|
87
|
+
* aux database while `pendingWithdrawalsRaw` is read from core, so the two can
|
|
88
|
+
* disagree briefly while the fold lags.
|
|
88
89
|
*/
|
|
89
90
|
export interface TokenCustody {
|
|
90
91
|
/** Asset UUID; null for a token with custody flow and no listed asset. */
|
|
@@ -95,12 +96,19 @@ export interface TokenCustody {
|
|
|
95
96
|
iconUrl?: string | null;
|
|
96
97
|
/** Token contract address, lowercase. */
|
|
97
98
|
contractAddress: string;
|
|
99
|
+
/** Deposits since the explorer's history starts. */
|
|
98
100
|
depositedRaw: string;
|
|
99
|
-
/**
|
|
101
|
+
/** Withdrawals initiated since the explorer's history starts. */
|
|
100
102
|
withdrawnRaw: string;
|
|
101
103
|
depositsCount: number;
|
|
102
104
|
withdrawalsCount: number;
|
|
103
|
-
/**
|
|
105
|
+
/**
|
|
106
|
+
* What the vault held before the explorer's history starts: `"0"` where it
|
|
107
|
+
* starts at the exchange's first event, the measured balance carried in
|
|
108
|
+
* where it starts later.
|
|
109
|
+
*/
|
|
110
|
+
openingRaw: string;
|
|
111
|
+
/** `openingRaw` plus deposits less initiated withdrawals; null when not positive. */
|
|
104
112
|
custodyRaw?: string | null;
|
|
105
113
|
/** Initiated but not yet executed on-chain; the vault's physical balance is `custodyRaw` plus this. */
|
|
106
114
|
pendingWithdrawalsRaw: string;
|
package/dist/fees/responses.d.ts
CHANGED
|
@@ -85,6 +85,13 @@ export declare const GetMyFeeTierResponseSchema: z.ZodObject<{
|
|
|
85
85
|
makerFeeBps: z.ZodString;
|
|
86
86
|
takerFeeBps: z.ZodString;
|
|
87
87
|
}, z.core.$strip>>;
|
|
88
|
+
rateSource: z.ZodEnum<{
|
|
89
|
+
custom: "custom";
|
|
90
|
+
tier_override: "tier_override";
|
|
91
|
+
volume: "volume";
|
|
92
|
+
}>;
|
|
93
|
+
makerFeeBps: z.ZodString;
|
|
94
|
+
takerFeeBps: z.ZodString;
|
|
88
95
|
}, z.core.$strip>;
|
|
89
96
|
/**
|
|
90
97
|
* Zod schema for the parameters of a public fee schedule lookup
|
package/dist/fees/responses.js
CHANGED
|
@@ -67,17 +67,19 @@ export const SimulateFeeResponseSchema = z.object({
|
|
|
67
67
|
applicationMakerFee: z.string().optional(),
|
|
68
68
|
/** Maker add-on rate in basis points an order placed now would store. Absent from servers older than this field */
|
|
69
69
|
applicationMakerFeeBps: z.number().optional(),
|
|
70
|
-
/** Monaco protocol maker
|
|
70
|
+
/** Monaco protocol maker fee: negative is a rebate, positive is a fee */
|
|
71
71
|
monacoMakerRebate: z.string(),
|
|
72
72
|
/**
|
|
73
|
-
*
|
|
74
|
-
*
|
|
73
|
+
* Monaco maker rate as a decimal basis-points string (negative is a rebate, positive is
|
|
74
|
+
* a fee), e.g. "-1" — the exact rate this caller gets, from their tier or the assigned or
|
|
75
|
+
* custom rate on their wallet.
|
|
75
76
|
*/
|
|
76
77
|
monacoMakerRebateBpsExact: z.string(),
|
|
77
78
|
/** Monaco protocol taker fee */
|
|
78
79
|
monacoTakerFee: z.string(),
|
|
79
80
|
/**
|
|
80
|
-
*
|
|
81
|
+
* Monaco taker fee, from the caller's tier or the assigned or custom rate on their
|
|
82
|
+
* wallet, as a decimal basis-points string, e.g. "6.5" — the exact
|
|
81
83
|
* rate the ledger charges this caller (equals monacoTakerFee / notional).
|
|
82
84
|
*/
|
|
83
85
|
monacoTakerFeeBpsExact: z.string(),
|
|
@@ -118,7 +120,7 @@ export const FeeTierScheduleRowSchema = z.object({
|
|
|
118
120
|
* Zod schema for the "my fee tier" response
|
|
119
121
|
*/
|
|
120
122
|
export const GetMyFeeTierResponseSchema = z.object({
|
|
121
|
-
/** Caller's
|
|
123
|
+
/** Caller's tier (1–6) on the requested pair: the tier their rates come from, or the tier their wallet's recorded weighted 14-day volume earns when `rateSource` is `custom` */
|
|
122
124
|
currentTierLevel: z.number().int(),
|
|
123
125
|
/** Caller's weighted 14-day volume (perp + 2.5× spot), summed across every application the wallet trades through */
|
|
124
126
|
weightedVolume14d: z.string(),
|
|
@@ -126,12 +128,18 @@ export const GetMyFeeTierResponseSchema = z.object({
|
|
|
126
128
|
spotVolume14d: z.string(),
|
|
127
129
|
/** Caller's rolling 14-day perp volume, summed across every application the wallet trades through */
|
|
128
130
|
perpVolume14d: z.string(),
|
|
129
|
-
/** Additional weighted volume needed to reach the next tier, counted from the volume the current tier resolved from; absent at tier 6 */
|
|
131
|
+
/** Additional weighted volume needed to reach the next tier, counted from the volume the current tier resolved from; absent at tier 6 and unless `rateSource` is `volume` */
|
|
130
132
|
volumeToNextTier: z.string().nullable().optional(),
|
|
131
|
-
/** Next tier level; absent when already at tier 6 */
|
|
133
|
+
/** Next tier level; absent when already at tier 6 and unless `rateSource` is `volume` */
|
|
132
134
|
nextTierLevel: z.number().int().nullable().optional(),
|
|
133
135
|
/** Six-row fee schedule for the requested pair, ascending by tier */
|
|
134
136
|
feeSchedule: z.array(FeeTierScheduleRowSchema),
|
|
137
|
+
/** Why this rate applies: `volume` (the tier your 14-day volume earns), `tier_override` (an assigned tier), or `custom` (custom rates assigned to your wallet). Applies to orders you place now */
|
|
138
|
+
rateSource: z.enum(["volume", "tier_override", "custom"]),
|
|
139
|
+
/** Effective maker rate for the requested pair, in decimal basis points; negative is a rebate, positive is a fee */
|
|
140
|
+
makerFeeBps: z.string(),
|
|
141
|
+
/** Effective taker rate for the requested pair, in decimal basis points */
|
|
142
|
+
takerFeeBps: z.string(),
|
|
135
143
|
});
|
|
136
144
|
/**
|
|
137
145
|
* Zod schema for the parameters of a public fee schedule lookup
|
package/dist/market/index.d.ts
CHANGED
|
@@ -329,6 +329,25 @@ export interface MarketMetadata {
|
|
|
329
329
|
totalQuoteVolumeLtd: string;
|
|
330
330
|
/** Life-to-date cumulative number of trades since inception (0 if no trades yet) */
|
|
331
331
|
totalTradeCountLtd: number;
|
|
332
|
+
/**
|
|
333
|
+
* The rolling 24h volumes split into their order-book and RFQ parts; absent
|
|
334
|
+
* while any candle in the window has no recorded split.
|
|
335
|
+
*/
|
|
336
|
+
volume24hBySource?: Volume24hBySource | null;
|
|
337
|
+
}
|
|
338
|
+
/**
|
|
339
|
+
* A market's rolling 24h volume split by execution source: each total is the
|
|
340
|
+
* order-book part plus the RFQ part (decimal strings).
|
|
341
|
+
*/
|
|
342
|
+
export interface Volume24hBySource {
|
|
343
|
+
/** Base-token volume filled on the order book in the last 24 hours */
|
|
344
|
+
orderBookBaseVolume: string;
|
|
345
|
+
/** Base-token volume filled by RFQ block trades in the last 24 hours */
|
|
346
|
+
rfqBaseVolume: string;
|
|
347
|
+
/** Quote-token volume filled on the order book in the last 24 hours; null when the 24h quote volume is unavailable */
|
|
348
|
+
orderBookQuoteVolume?: string | null;
|
|
349
|
+
/** Quote-token volume filled by RFQ block trades in the last 24 hours; null when the 24h quote volume is unavailable */
|
|
350
|
+
rfqQuoteVolume?: string | null;
|
|
332
351
|
}
|
|
333
352
|
/**
|
|
334
353
|
* Exchange-wide life-to-date cumulative statistics across all trading pairs.
|
package/dist/rfq/responses.d.ts
CHANGED
|
@@ -33,6 +33,13 @@ export declare const RfqRequestTermsSchema: z.ZodObject<{
|
|
|
33
33
|
leverage: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
34
34
|
marginMode: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
35
35
|
}, z.core.$strip>;
|
|
36
|
+
/** The taker's requested size priced against the public order book (RFQ-08). */
|
|
37
|
+
export declare const RfqBookComparisonSchema: z.ZodObject<{
|
|
38
|
+
vwap: z.ZodString;
|
|
39
|
+
grossVwap: z.ZodString;
|
|
40
|
+
asOfMs: z.ZodNumber;
|
|
41
|
+
levels: z.ZodNumber;
|
|
42
|
+
}, z.core.$strip>;
|
|
36
43
|
/** One side of the taker's view: the allocation that would fill the quantity. */
|
|
37
44
|
export declare const RfqSideViewSchema: z.ZodObject<{
|
|
38
45
|
vwap: z.ZodString;
|
|
@@ -41,6 +48,12 @@ export declare const RfqSideViewSchema: z.ZodObject<{
|
|
|
41
48
|
estimatedMonacoFee: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
42
49
|
estimatedBuilderFee: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
43
50
|
estimatedTotalFee: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
51
|
+
book: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
52
|
+
vwap: z.ZodString;
|
|
53
|
+
grossVwap: z.ZodString;
|
|
54
|
+
asOfMs: z.ZodNumber;
|
|
55
|
+
levels: z.ZodNumber;
|
|
56
|
+
}, z.core.$strip>>>;
|
|
44
57
|
}, z.core.$strip>;
|
|
45
58
|
/** The taker's current view of the quotes. */
|
|
46
59
|
export declare const RfqViewSchema: z.ZodObject<{
|
|
@@ -52,6 +65,12 @@ export declare const RfqViewSchema: z.ZodObject<{
|
|
|
52
65
|
estimatedMonacoFee: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
53
66
|
estimatedBuilderFee: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
54
67
|
estimatedTotalFee: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
68
|
+
book: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
69
|
+
vwap: z.ZodString;
|
|
70
|
+
grossVwap: z.ZodString;
|
|
71
|
+
asOfMs: z.ZodNumber;
|
|
72
|
+
levels: z.ZodNumber;
|
|
73
|
+
}, z.core.$strip>>>;
|
|
55
74
|
}, z.core.$strip>>>;
|
|
56
75
|
ask: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
57
76
|
vwap: z.ZodString;
|
|
@@ -60,6 +79,12 @@ export declare const RfqViewSchema: z.ZodObject<{
|
|
|
60
79
|
estimatedMonacoFee: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
61
80
|
estimatedBuilderFee: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
62
81
|
estimatedTotalFee: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
82
|
+
book: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
83
|
+
vwap: z.ZodString;
|
|
84
|
+
grossVwap: z.ZodString;
|
|
85
|
+
asOfMs: z.ZodNumber;
|
|
86
|
+
levels: z.ZodNumber;
|
|
87
|
+
}, z.core.$strip>>>;
|
|
63
88
|
}, z.core.$strip>>>;
|
|
64
89
|
asOfMs: z.ZodNumber;
|
|
65
90
|
monacoFeeCbps: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
@@ -87,6 +112,43 @@ export declare const RfqOutcomeSchema: z.ZodObject<{
|
|
|
87
112
|
monacoFee: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
88
113
|
builderFee: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
89
114
|
}, z.core.$strip>>;
|
|
115
|
+
allInVwap: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
116
|
+
bookAtFill: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
117
|
+
vwap: z.ZodString;
|
|
118
|
+
grossVwap: z.ZodString;
|
|
119
|
+
asOfMs: z.ZodNumber;
|
|
120
|
+
levels: z.ZodNumber;
|
|
121
|
+
}, z.core.$strip>>>;
|
|
122
|
+
bookAtFillFullSize: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
|
|
123
|
+
}, z.core.$strip>;
|
|
124
|
+
/**
|
|
125
|
+
* One fill of your quote, as a maker. The fee parts are what the trade
|
|
126
|
+
* recorded as charged, unset until trade history has the fill.
|
|
127
|
+
*/
|
|
128
|
+
export declare const RfqMakerFillSchema: z.ZodObject<{
|
|
129
|
+
executionId: z.ZodString;
|
|
130
|
+
price: z.ZodString;
|
|
131
|
+
quantity: z.ZodString;
|
|
132
|
+
fee: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
133
|
+
monacoFee: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
134
|
+
builderFee: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
135
|
+
}, z.core.$strip>;
|
|
136
|
+
/** What the taker's view showed on the accepted side when it accepted (RFQ-08). */
|
|
137
|
+
export declare const RfqAcceptanceRecordSchema: z.ZodObject<{
|
|
138
|
+
viewVersion: z.ZodNumber;
|
|
139
|
+
acceptedAtMs: z.ZodNumber;
|
|
140
|
+
vwap: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
141
|
+
grossVwap: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
142
|
+
availableQuantity: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
143
|
+
monacoFeeCbps: z.ZodNumber;
|
|
144
|
+
builderFeeCbps: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
145
|
+
book: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
146
|
+
vwap: z.ZodString;
|
|
147
|
+
grossVwap: z.ZodString;
|
|
148
|
+
asOfMs: z.ZodNumber;
|
|
149
|
+
levels: z.ZodNumber;
|
|
150
|
+
}, z.core.$strip>>>;
|
|
151
|
+
bookFullSize: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
|
|
90
152
|
}, z.core.$strip>;
|
|
91
153
|
/** A quoted side the venue refused; nothing is reserved for it. */
|
|
92
154
|
export declare const RfqRefusedSideSchema: z.ZodObject<{
|
|
@@ -163,6 +225,12 @@ export declare const RfqStatusSchema: z.ZodObject<{
|
|
|
163
225
|
estimatedMonacoFee: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
164
226
|
estimatedBuilderFee: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
165
227
|
estimatedTotalFee: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
228
|
+
book: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
229
|
+
vwap: z.ZodString;
|
|
230
|
+
grossVwap: z.ZodString;
|
|
231
|
+
asOfMs: z.ZodNumber;
|
|
232
|
+
levels: z.ZodNumber;
|
|
233
|
+
}, z.core.$strip>>>;
|
|
166
234
|
}, z.core.$strip>>>;
|
|
167
235
|
ask: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
168
236
|
vwap: z.ZodString;
|
|
@@ -171,6 +239,12 @@ export declare const RfqStatusSchema: z.ZodObject<{
|
|
|
171
239
|
estimatedMonacoFee: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
172
240
|
estimatedBuilderFee: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
173
241
|
estimatedTotalFee: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
242
|
+
book: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
243
|
+
vwap: z.ZodString;
|
|
244
|
+
grossVwap: z.ZodString;
|
|
245
|
+
asOfMs: z.ZodNumber;
|
|
246
|
+
levels: z.ZodNumber;
|
|
247
|
+
}, z.core.$strip>>>;
|
|
174
248
|
}, z.core.$strip>>>;
|
|
175
249
|
asOfMs: z.ZodNumber;
|
|
176
250
|
monacoFeeCbps: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
@@ -227,8 +301,40 @@ export declare const RfqStatusSchema: z.ZodObject<{
|
|
|
227
301
|
monacoFee: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
228
302
|
builderFee: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
229
303
|
}, z.core.$strip>>;
|
|
304
|
+
allInVwap: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
305
|
+
bookAtFill: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
306
|
+
vwap: z.ZodString;
|
|
307
|
+
grossVwap: z.ZodString;
|
|
308
|
+
asOfMs: z.ZodNumber;
|
|
309
|
+
levels: z.ZodNumber;
|
|
310
|
+
}, z.core.$strip>>>;
|
|
311
|
+
bookAtFillFullSize: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
|
|
230
312
|
}, z.core.$strip>>>;
|
|
231
313
|
durableSequence: z.ZodNumber;
|
|
314
|
+
ownFills: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
|
|
315
|
+
executionId: z.ZodString;
|
|
316
|
+
price: z.ZodString;
|
|
317
|
+
quantity: z.ZodString;
|
|
318
|
+
fee: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
319
|
+
monacoFee: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
320
|
+
builderFee: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
321
|
+
}, z.core.$strip>>>>;
|
|
322
|
+
acceptance: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
323
|
+
viewVersion: z.ZodNumber;
|
|
324
|
+
acceptedAtMs: z.ZodNumber;
|
|
325
|
+
vwap: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
326
|
+
grossVwap: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
327
|
+
availableQuantity: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
328
|
+
monacoFeeCbps: z.ZodNumber;
|
|
329
|
+
builderFeeCbps: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
330
|
+
book: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
331
|
+
vwap: z.ZodString;
|
|
332
|
+
grossVwap: z.ZodString;
|
|
333
|
+
asOfMs: z.ZodNumber;
|
|
334
|
+
levels: z.ZodNumber;
|
|
335
|
+
}, z.core.$strip>>>;
|
|
336
|
+
bookFullSize: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
|
|
337
|
+
}, z.core.$strip>>>;
|
|
232
338
|
}, z.core.$strip>;
|
|
233
339
|
/** A market RFQ is offered on. */
|
|
234
340
|
export declare const RfqMarketCapabilitySchema: z.ZodObject<{
|
|
@@ -272,6 +378,9 @@ export type RfqSideView = z.infer<typeof RfqSideViewSchema>;
|
|
|
272
378
|
export type RfqView = z.infer<typeof RfqViewSchema>;
|
|
273
379
|
export type RfqFill = z.infer<typeof RfqFillSchema>;
|
|
274
380
|
export type RfqOutcome = z.infer<typeof RfqOutcomeSchema>;
|
|
381
|
+
export type RfqMakerFill = z.infer<typeof RfqMakerFillSchema>;
|
|
382
|
+
export type RfqBookComparison = z.infer<typeof RfqBookComparisonSchema>;
|
|
383
|
+
export type RfqAcceptanceRecord = z.infer<typeof RfqAcceptanceRecordSchema>;
|
|
275
384
|
export type RfqQuoteVersion = z.infer<typeof RfqQuoteVersionSchema>;
|
|
276
385
|
export type RfqRefusedSide = z.infer<typeof RfqRefusedSideSchema>;
|
|
277
386
|
export type RfqMakerSelection = z.infer<typeof RfqMakerSelectionSchema>;
|
package/dist/rfq/responses.js
CHANGED
|
@@ -46,6 +46,17 @@ export const RfqRequestTermsSchema = z.object({
|
|
|
46
46
|
/** Taker only: the margin mode given on create (perpetuals). */
|
|
47
47
|
marginMode: z.string().nullish(),
|
|
48
48
|
});
|
|
49
|
+
/** The taker's requested size priced against the public order book (RFQ-08). */
|
|
50
|
+
export const RfqBookComparisonSchema = z.object({
|
|
51
|
+
/** All-in book VWAP: the cost per unit when buying, the net proceeds per unit when selling. */
|
|
52
|
+
vwap: z.string(),
|
|
53
|
+
/** The book VWAP before fees. */
|
|
54
|
+
grossVwap: z.string(),
|
|
55
|
+
/** When the book snapshot was read, Unix milliseconds. */
|
|
56
|
+
asOfMs: z.number(),
|
|
57
|
+
/** Price levels the size walked. */
|
|
58
|
+
levels: z.number(),
|
|
59
|
+
});
|
|
49
60
|
/** One side of the taker's view: the allocation that would fill the quantity. */
|
|
50
61
|
export const RfqSideViewSchema = z.object({
|
|
51
62
|
/** All-in volume-weighted price, fees included. */
|
|
@@ -59,6 +70,11 @@ export const RfqSideViewSchema = z.object({
|
|
|
59
70
|
estimatedBuilderFee: z.string().nullish(),
|
|
60
71
|
/** Estimated total taker fee on availableQuantity, in the quote asset. */
|
|
61
72
|
estimatedTotalFee: z.string().nullish(),
|
|
73
|
+
/**
|
|
74
|
+
* The requested size on the public order book, for comparison. Display
|
|
75
|
+
* only; absent when a fresh book snapshot cannot fill the whole size.
|
|
76
|
+
*/
|
|
77
|
+
book: RfqBookComparisonSchema.nullish(),
|
|
62
78
|
});
|
|
63
79
|
/** The taker's current view of the quotes. */
|
|
64
80
|
export const RfqViewSchema = z.object({
|
|
@@ -88,6 +104,59 @@ export const RfqOutcomeSchema = z.object({
|
|
|
88
104
|
unfilledQuantity: z.string(),
|
|
89
105
|
vwap: z.string(),
|
|
90
106
|
fills: z.array(RfqFillSchema),
|
|
107
|
+
/**
|
|
108
|
+
* Your all-in VWAP: notional plus your whole fee for a buy, minus it for a
|
|
109
|
+
* sell, over the executed quantity. Unset when nothing filled.
|
|
110
|
+
*/
|
|
111
|
+
allInVwap: z.string().nullish(),
|
|
112
|
+
/**
|
|
113
|
+
* Post-fill benchmark: the executed quantity priced against the public
|
|
114
|
+
* order book on your side, at the rates frozen at acceptance, read when the
|
|
115
|
+
* outcome was recorded. Display only.
|
|
116
|
+
*/
|
|
117
|
+
bookAtFill: RfqBookComparisonSchema.nullish(),
|
|
118
|
+
/** Whether a fresh book snapshot filled the executed quantity then; absent when none was fresh. */
|
|
119
|
+
bookAtFillFullSize: z.boolean().nullish(),
|
|
120
|
+
});
|
|
121
|
+
/**
|
|
122
|
+
* One fill of your quote, as a maker. The fee parts are what the trade
|
|
123
|
+
* recorded as charged, unset until trade history has the fill.
|
|
124
|
+
*/
|
|
125
|
+
export const RfqMakerFillSchema = z.object({
|
|
126
|
+
executionId: z.string(),
|
|
127
|
+
price: z.string(),
|
|
128
|
+
quantity: z.string(),
|
|
129
|
+
/** Your whole fee as charged: monacoFee plus builderFee; negative for a net rebate. */
|
|
130
|
+
fee: z.string().nullish(),
|
|
131
|
+
/** Your Monaco maker fee as charged; negative is a rebate. */
|
|
132
|
+
monacoFee: z.string().nullish(),
|
|
133
|
+
/** The builder add-on your frontend charged (0 when none). */
|
|
134
|
+
builderFee: z.string().nullish(),
|
|
135
|
+
});
|
|
136
|
+
/** What the taker's view showed on the accepted side when it accepted (RFQ-08). */
|
|
137
|
+
export const RfqAcceptanceRecordSchema = z.object({
|
|
138
|
+
/** The view version accepted. */
|
|
139
|
+
viewVersion: z.number(),
|
|
140
|
+
/** When the taker accepted, Unix milliseconds. */
|
|
141
|
+
acceptedAtMs: z.number(),
|
|
142
|
+
/** All-in VWAP shown for the accepted side, fees included. */
|
|
143
|
+
vwap: z.string().nullish(),
|
|
144
|
+
/** The VWAP shown before fees. */
|
|
145
|
+
grossVwap: z.string().nullish(),
|
|
146
|
+
/** Quantity the shown allocation filled. */
|
|
147
|
+
availableQuantity: z.string().nullish(),
|
|
148
|
+
/** The Monaco fee rate frozen at acceptance, in centi-bps. */
|
|
149
|
+
monacoFeeCbps: z.number(),
|
|
150
|
+
/** The builder fee rate frozen at acceptance, in centi-bps. */
|
|
151
|
+
builderFeeCbps: z.number().nullish(),
|
|
152
|
+
/**
|
|
153
|
+
* The requested size on the public order book when the taker accepted: the
|
|
154
|
+
* pair's latest snapshot at most 500 ms old, at the rates frozen at
|
|
155
|
+
* acceptance. `asOfMs` identifies the snapshot.
|
|
156
|
+
*/
|
|
157
|
+
book: RfqBookComparisonSchema.nullish(),
|
|
158
|
+
/** Whether that snapshot filled the whole size; absent when no snapshot at most 500 ms old was held. */
|
|
159
|
+
bookFullSize: z.boolean().nullish(),
|
|
91
160
|
});
|
|
92
161
|
/** A quoted side the venue refused; nothing is reserved for it. */
|
|
93
162
|
export const RfqRefusedSideSchema = z.object({
|
|
@@ -159,6 +228,10 @@ export const RfqStatusSchema = z.object({
|
|
|
159
228
|
ownQuoteWithdrawn: z.boolean(),
|
|
160
229
|
outcome: RfqOutcomeSchema.nullish(),
|
|
161
230
|
durableSequence: z.number(),
|
|
231
|
+
/** Maker only: your own fills once the RFQ settled, never another maker's. */
|
|
232
|
+
ownFills: z.array(RfqMakerFillSchema).nullish(),
|
|
233
|
+
/** Taker only: what your view showed when you accepted. */
|
|
234
|
+
acceptance: RfqAcceptanceRecordSchema.nullish(),
|
|
162
235
|
});
|
|
163
236
|
/** A market RFQ is offered on. */
|
|
164
237
|
export const RfqMarketCapabilitySchema = z.object({
|
package/dist/sweeper/index.d.ts
CHANGED
|
@@ -204,6 +204,121 @@ export interface ListSweeperDepositsResponse {
|
|
|
204
204
|
/** Cursor for the next page; empty when this page is the last */
|
|
205
205
|
nextPageToken: string;
|
|
206
206
|
}
|
|
207
|
+
/**
|
|
208
|
+
* Which Hyperliquid (HyperCore) balance a {@link SweeperAPI.depositFromHypercore}
|
|
209
|
+
* withdrawal draws on.
|
|
210
|
+
*/
|
|
211
|
+
export type HypercoreBalanceSource = "perp" | "spot";
|
|
212
|
+
/**
|
|
213
|
+
* A Hyperliquid account's abstraction mode, as Hyperliquid's `userAbstraction`
|
|
214
|
+
* query reports it. `unifiedAccount` and `portfolioMargin` keep one balance per
|
|
215
|
+
* asset, reported as spot; the others keep separate perp and spot balances.
|
|
216
|
+
* Widened: Hyperliquid may add modes this SDK version predates.
|
|
217
|
+
*/
|
|
218
|
+
export type HypercoreAccountMode = "unifiedAccount" | "portfolioMargin" | "disabled" | "default" | "dexAbstraction" | (string & {});
|
|
219
|
+
/**
|
|
220
|
+
* What a deposit from Hyperliquid can draw on, from
|
|
221
|
+
* {@link SweeperAPI.getHypercoreDepositInfo}. Amounts are raw USDC base units
|
|
222
|
+
* (6 decimals), truncated from Hyperliquid's own decimals.
|
|
223
|
+
*/
|
|
224
|
+
export interface HypercoreDepositInfo {
|
|
225
|
+
/** The wallet's address, which is its Hyperliquid account */
|
|
226
|
+
account: string;
|
|
227
|
+
/** The account's abstraction mode */
|
|
228
|
+
accountMode: HypercoreAccountMode;
|
|
229
|
+
/** Withdrawable USDC in the perp balance; `0n` for a unified or portfolio-margin account */
|
|
230
|
+
perpBalance: bigint;
|
|
231
|
+
/** USDC in the spot balance not on hold */
|
|
232
|
+
spotBalance: bigint;
|
|
233
|
+
/**
|
|
234
|
+
* The most one deposit can draw: a withdrawal draws on a single balance, and
|
|
235
|
+
* 0.1 USDC stays back for the fee Hyperliquid charges on top of the amount —
|
|
236
|
+
* in spot when spot can hold it, otherwise in the balance drawn
|
|
237
|
+
*/
|
|
238
|
+
available: bigint;
|
|
239
|
+
/** The most Circle deducts to forward a withdrawal to Sei, read from Circle's CoreDepositWallet on HyperEVM */
|
|
240
|
+
maxFee: bigint;
|
|
241
|
+
/** The smallest `amount` {@link SweeperAPI.depositFromHypercore} accepts: `maxFee` plus the Sei hub's USDC minimum */
|
|
242
|
+
minimumAmount: bigint;
|
|
243
|
+
}
|
|
244
|
+
/** Body for {@link SweeperAPI.depositFromHypercore}. */
|
|
245
|
+
export interface DepositFromHypercoreRequest {
|
|
246
|
+
/**
|
|
247
|
+
* USDC to withdraw from Hyperliquid, in raw base units (6 decimals). Circle
|
|
248
|
+
* deducts its forwarding fee on the way, so at least `amount - maxFee`
|
|
249
|
+
* reaches Sei, and that must clear the Sei hub's USDC `minSweepRaw` (see
|
|
250
|
+
* {@link SweeperAPI.getChains}).
|
|
251
|
+
*/
|
|
252
|
+
amount: bigint;
|
|
253
|
+
/**
|
|
254
|
+
* Which deposit address receives it, as in
|
|
255
|
+
* {@link RegisterSweeperRequest.depositTarget}. Defaults to `"spot"`.
|
|
256
|
+
*/
|
|
257
|
+
depositTarget?: DepositTarget;
|
|
258
|
+
}
|
|
259
|
+
/** Result of {@link SweeperAPI.depositFromHypercore}: Hyperliquid accepted the withdrawal. */
|
|
260
|
+
export interface DepositFromHypercoreResponse {
|
|
261
|
+
/** The deposit address on Sei the USDC is minted to */
|
|
262
|
+
sweeperAddress: string;
|
|
263
|
+
/** USDC withdrawn from Hyperliquid, raw base units */
|
|
264
|
+
amount: bigint;
|
|
265
|
+
/** The Hyperliquid balance it was drawn from */
|
|
266
|
+
source: HypercoreBalanceSource;
|
|
267
|
+
/**
|
|
268
|
+
* The most Circle deducts to forward the withdrawal to Sei, raw base units,
|
|
269
|
+
* read from Circle's CoreDepositWallet on HyperEVM before signing
|
|
270
|
+
*/
|
|
271
|
+
maxFee: bigint;
|
|
272
|
+
/** `amount - maxFee`: the least that is minted on Sei and credited */
|
|
273
|
+
minimumCredit: bigint;
|
|
274
|
+
/** The Hyperliquid action's nonce (milliseconds since the epoch) */
|
|
275
|
+
nonce: number;
|
|
276
|
+
}
|
|
277
|
+
/**
|
|
278
|
+
* What a deposit from HyperEVM can draw on, from
|
|
279
|
+
* {@link SweeperAPI.getHyperEvmDepositInfo}. USDC amounts are raw base units
|
|
280
|
+
* (6 decimals).
|
|
281
|
+
*/
|
|
282
|
+
export interface HyperEvmDepositInfo {
|
|
283
|
+
/** The wallet's address on HyperEVM */
|
|
284
|
+
account: string;
|
|
285
|
+
/** The wallet's Circle USDC on HyperEVM */
|
|
286
|
+
usdcBalance: bigint;
|
|
287
|
+
/** The wallet's HYPE on HyperEVM, in wei: it pays the approval and burn gas */
|
|
288
|
+
gasBalance: bigint;
|
|
289
|
+
/** Circle's forwarding fee to Sei, quoted from Circle's API: the most Circle keeps */
|
|
290
|
+
maxFee: bigint;
|
|
291
|
+
/** The smallest `amount` {@link SweeperAPI.depositFromHyperEvm} accepts: `maxFee` plus the Sei hub's USDC minimum */
|
|
292
|
+
minimumAmount: bigint;
|
|
293
|
+
}
|
|
294
|
+
/** Body for {@link SweeperAPI.depositFromHyperEvm}. */
|
|
295
|
+
export interface DepositFromHyperEvmRequest {
|
|
296
|
+
/**
|
|
297
|
+
* USDC to burn on HyperEVM, in raw base units (6 decimals). Circle keeps its
|
|
298
|
+
* forwarding fee, so at least `amount - maxFee` reaches Sei.
|
|
299
|
+
*/
|
|
300
|
+
amount: bigint;
|
|
301
|
+
/**
|
|
302
|
+
* Which deposit address receives it, as in
|
|
303
|
+
* {@link RegisterSweeperRequest.depositTarget}. Defaults to `"spot"`.
|
|
304
|
+
*/
|
|
305
|
+
depositTarget?: DepositTarget;
|
|
306
|
+
}
|
|
307
|
+
/** Result of {@link SweeperAPI.depositFromHyperEvm}: the burn landed on HyperEVM. */
|
|
308
|
+
export interface DepositFromHyperEvmResponse {
|
|
309
|
+
/** The deposit address on Sei the USDC is minted to */
|
|
310
|
+
sweeperAddress: string;
|
|
311
|
+
/** USDC burned on HyperEVM, raw base units */
|
|
312
|
+
amount: bigint;
|
|
313
|
+
/** The most Circle keeps to forward the transfer to Sei, raw base units */
|
|
314
|
+
maxFee: bigint;
|
|
315
|
+
/** `amount - maxFee`: the least that is minted on Sei and credited */
|
|
316
|
+
minimumCredit: bigint;
|
|
317
|
+
/** The HyperEVM approval transaction, when the allowance had to be raised */
|
|
318
|
+
approveTxHash?: string;
|
|
319
|
+
/** The HyperEVM burn transaction */
|
|
320
|
+
burnTxHash: string;
|
|
321
|
+
}
|
|
207
322
|
/**
|
|
208
323
|
* Sweeper API interface. Registration and deposit status require
|
|
209
324
|
* authentication; the chain listing is public.
|
|
@@ -266,4 +381,70 @@ export interface SweeperAPI extends BaseAPI {
|
|
|
266
381
|
* sending).
|
|
267
382
|
*/
|
|
268
383
|
listDeposits(params?: ListSweeperDepositsParams): Promise<ListSweeperDepositsResponse>;
|
|
384
|
+
/**
|
|
385
|
+
* Deposits USDC the wallet holds on Hyperliquid (HyperCore): the wallet
|
|
386
|
+
* signs Circle's CCTP withdrawal to the caller's deposit address on Sei, and
|
|
387
|
+
* the SDK posts it to Hyperliquid, which executes it. Circle forwards the
|
|
388
|
+
* mint to Sei and the sweeper credits it like any deposit to the address —
|
|
389
|
+
* it lists in {@link listDeposits} by its Sei mint once minted. No gas and
|
|
390
|
+
* no HyperEVM transaction from the user.
|
|
391
|
+
*
|
|
392
|
+
* The balance is chosen from the account itself: the spot balance for a
|
|
393
|
+
* unified or portfolio-margin account, otherwise whichever of perp (first)
|
|
394
|
+
* or spot covers `amount`.
|
|
395
|
+
*
|
|
396
|
+
* Needs a session (it registers the deposit address first) and a wallet
|
|
397
|
+
* client on Sei, whose account must be the one holding the Hyperliquid
|
|
398
|
+
* balance. Throws before signing on an invalid amount, a wallet on another
|
|
399
|
+
* chain, a failed Hyperliquid balance read, a hub that does not sweep USDC,
|
|
400
|
+
* an amount below {@link HypercoreDepositInfo.minimumAmount}, and an amount
|
|
401
|
+
* above {@link HypercoreDepositInfo.available}.
|
|
402
|
+
*
|
|
403
|
+
* Throws `APIError` when Hyperliquid refuses the action (a decided outcome:
|
|
404
|
+
* nothing moved). A lost or unreadable reply is an UNKNOWN outcome — the
|
|
405
|
+
* error carries `retryable: false`, because calling this again signs a
|
|
406
|
+
* second withdrawal. Check {@link listDeposits} or the Hyperliquid balance
|
|
407
|
+
* first.
|
|
408
|
+
*/
|
|
409
|
+
depositFromHypercore(body: DepositFromHypercoreRequest): Promise<DepositFromHypercoreResponse>;
|
|
410
|
+
/**
|
|
411
|
+
* What the wallet can deposit from Hyperliquid: its account mode and USDC
|
|
412
|
+
* balances, the most one deposit can draw, Circle's fee and the smallest
|
|
413
|
+
* accepted amount — everything a deposit form needs before the user types.
|
|
414
|
+
* Reads only public data, so it needs a wallet client on Sei but no
|
|
415
|
+
* session. A failed Hyperliquid read throws `APIError`.
|
|
416
|
+
*/
|
|
417
|
+
getHypercoreDepositInfo(): Promise<HypercoreDepositInfo>;
|
|
418
|
+
/**
|
|
419
|
+
* Deposits Circle USDC the wallet holds on HyperEVM: the wallet approves
|
|
420
|
+
* and burns it through Circle's TokenMessengerV2 on HyperEVM, naming the
|
|
421
|
+
* caller's Sei deposit address as the recipient and asking Circle to
|
|
422
|
+
* forward the mint. Circle mints on Sei and the sweeper credits it like any
|
|
423
|
+
* deposit to the address — it lists in {@link listDeposits} by its Sei mint.
|
|
424
|
+
* The wallet pays HYPE for gas; no Monaco contract is involved on HyperEVM.
|
|
425
|
+
*
|
|
426
|
+
* Needs a session (it registers the deposit address) and a wallet client
|
|
427
|
+
* on Sei. A browser or embedded wallet is switched to HyperEVM (added
|
|
428
|
+
* first if it does not know the chain) and back to Sei afterwards. Throws
|
|
429
|
+
* before registering or sending on an invalid amount, a wallet on another
|
|
430
|
+
* chain, a failed read or fee quote, a hub that does not sweep USDC, an
|
|
431
|
+
* amount below {@link HyperEvmDepositInfo.minimumAmount} or above the
|
|
432
|
+
* wallet's HyperEVM USDC, and a wallet with no HYPE.
|
|
433
|
+
*
|
|
434
|
+
* A burn that reverts throws `ContractError` (nothing burned). A burn
|
|
435
|
+
* broadcast but whose receipt cannot be read is an UNKNOWN outcome: the
|
|
436
|
+
* `APIError` carries `retryable: false` and the burn's hash, because
|
|
437
|
+
* calling this again burns a second time. Check {@link listDeposits} or the
|
|
438
|
+
* HyperEVM transaction first.
|
|
439
|
+
*/
|
|
440
|
+
depositFromHyperEvm(body: DepositFromHyperEvmRequest): Promise<DepositFromHyperEvmResponse>;
|
|
441
|
+
/**
|
|
442
|
+
* What the wallet can deposit from HyperEVM: its Circle USDC and HYPE on
|
|
443
|
+
* HyperEVM, Circle's forwarding fee and the smallest accepted amount.
|
|
444
|
+
* Reads only public data, so it needs a wallet client on Sei but no
|
|
445
|
+
* session.
|
|
446
|
+
*/
|
|
447
|
+
getHyperEvmDepositInfo(): Promise<HyperEvmDepositInfo>;
|
|
448
|
+
/** Set the wallet client that signs {@link depositFromHypercore} and {@link depositFromHyperEvm}. */
|
|
449
|
+
setWalletClient(walletClient: unknown): void;
|
|
269
450
|
}
|
|
@@ -79,6 +79,11 @@ export interface MarketStatsData {
|
|
|
79
79
|
dailyPriceChange?: string;
|
|
80
80
|
/** 24h percentage price change, two decimals (decimal string) */
|
|
81
81
|
dailyPriceChangePercent?: string;
|
|
82
|
+
/**
|
|
83
|
+
* The 24h volumes split into their order-book and RFQ parts. Omitted while
|
|
84
|
+
* any candle in the window has no recorded split.
|
|
85
|
+
*/
|
|
86
|
+
dailyVolumeBySource?: DailyVolumeBySource;
|
|
82
87
|
/** Current (last settled) funding rate (decimal string). Perp-only; omitted for spot. */
|
|
83
88
|
currentFundingRate?: string;
|
|
84
89
|
/** Estimated next-window funding rate (decimal string). Perp-only; omitted for spot. */
|
|
@@ -185,3 +190,17 @@ export interface MarketStatsAllEvent {
|
|
|
185
190
|
/** One summary row per market */
|
|
186
191
|
markets: MarketStatsSummary[];
|
|
187
192
|
}
|
|
193
|
+
/**
|
|
194
|
+
* A market's 24h volume split by execution source: each total is the
|
|
195
|
+
* order-book part plus the RFQ part (decimal strings, normalized token units).
|
|
196
|
+
*/
|
|
197
|
+
export interface DailyVolumeBySource {
|
|
198
|
+
/** 24h base-token volume filled on the order book */
|
|
199
|
+
orderBookBaseTokenVolume: string;
|
|
200
|
+
/** 24h base-token volume filled by RFQ block trades */
|
|
201
|
+
rfqBaseTokenVolume: string;
|
|
202
|
+
/** 24h quote-token volume filled on the order book; omitted when the 24h quote volume is unavailable */
|
|
203
|
+
orderBookQuoteTokenVolume?: string;
|
|
204
|
+
/** 24h quote-token volume filled by RFQ block trades; omitted when the 24h quote volume is unavailable */
|
|
205
|
+
rfqQuoteTokenVolume?: string;
|
|
206
|
+
}
|
|
@@ -101,8 +101,9 @@ export interface PositionEventData {
|
|
|
101
101
|
/**
|
|
102
102
|
* Initial margin this position requires at `markPrice` (decimal string),
|
|
103
103
|
* honoring both its effective leverage and the market initial-margin floor —
|
|
104
|
-
* the same `initialMarginRequired` REST returns (0XM-2668).
|
|
105
|
-
* position has no
|
|
104
|
+
* the same `initialMarginRequired` REST returns (0XM-2668). Each unit keeps
|
|
105
|
+
* the leverage of the order that opened it. `"0"` when the position has no
|
|
106
|
+
* open exposure.
|
|
106
107
|
*
|
|
107
108
|
* UNVERSIONED, for the same reason as `maintenanceMarginRequired`.
|
|
108
109
|
*/
|
|
@@ -53,6 +53,22 @@ export interface RfqSideViewEventData {
|
|
|
53
53
|
estimatedBuilderFee?: string;
|
|
54
54
|
/** Estimated total taker fee on `availableQuantity`, in the quote asset. */
|
|
55
55
|
estimatedTotalFee?: string;
|
|
56
|
+
/**
|
|
57
|
+
* The requested size on the public order book, for comparison. Display
|
|
58
|
+
* only; absent when a fresh book snapshot cannot fill the whole size.
|
|
59
|
+
*/
|
|
60
|
+
book?: RfqBookComparisonEventData;
|
|
61
|
+
}
|
|
62
|
+
/** The taker's requested size priced against the public order book, with the view's fee rates. */
|
|
63
|
+
export interface RfqBookComparisonEventData {
|
|
64
|
+
/** All-in book VWAP: the cost per unit when buying, the net proceeds per unit when selling. */
|
|
65
|
+
vwap: string;
|
|
66
|
+
/** The book VWAP before fees. */
|
|
67
|
+
grossVwap: string;
|
|
68
|
+
/** When the book snapshot was read, Unix milliseconds. */
|
|
69
|
+
asOfMs: number;
|
|
70
|
+
/** Price levels the size walked. */
|
|
71
|
+
levels: number;
|
|
56
72
|
}
|
|
57
73
|
/** The taker's view of the quotes. No maker identity or individual quote. */
|
|
58
74
|
export interface RfqViewEventData {
|
|
@@ -132,6 +148,11 @@ export interface RfqOutcomeEventData {
|
|
|
132
148
|
/** Gross VWAP of the fills; absent when nothing filled. */
|
|
133
149
|
vwap?: string;
|
|
134
150
|
fills: RfqFillEventData[];
|
|
151
|
+
/**
|
|
152
|
+
* Your all-in VWAP: notional plus your whole fee for a buy, minus it for a
|
|
153
|
+
* sell, over the executed quantity. Absent when nothing filled.
|
|
154
|
+
*/
|
|
155
|
+
allInVwap?: string;
|
|
135
156
|
}
|
|
136
157
|
/** To the taker and every maker that quoted: the RFQ ended. */
|
|
137
158
|
export interface RfqOutcomeEvent {
|
package/dist/wire/schema.d.ts
CHANGED
|
@@ -1953,9 +1953,11 @@ export interface paths {
|
|
|
1953
1953
|
};
|
|
1954
1954
|
/**
|
|
1955
1955
|
* Get my fee tier and pair schedule
|
|
1956
|
-
* @description Return the caller's current fee tier, rolling 14-day volumes,
|
|
1956
|
+
* @description Return the caller's current fee tier, rolling 14-day volumes, the rates that
|
|
1957
|
+
* apply to them on a pair and why, and the pair's schedule.
|
|
1957
1958
|
*
|
|
1958
|
-
* Volumes and the tier are wallet-wide: the caller's wallet total
|
|
1959
|
+
* Volumes and the volume-earned tier are wallet-wide: the caller's wallet total
|
|
1960
|
+
* across every application.
|
|
1959
1961
|
*/
|
|
1960
1962
|
get: operations["get_my_fee_tier"];
|
|
1961
1963
|
put?: never;
|
|
@@ -5268,6 +5270,13 @@ export interface components {
|
|
|
5268
5270
|
* @example 11000
|
|
5269
5271
|
*/
|
|
5270
5272
|
netFlowUsd?: string | null;
|
|
5273
|
+
volumeBySource?: components["schemas"]["VolumeUsdBySource"];
|
|
5274
|
+
/**
|
|
5275
|
+
* Format: int64
|
|
5276
|
+
* @description Accounts registered in the window under one of the builder's applications, whether or not they traded, summed over a group's applications (newTraders counts first trades instead)
|
|
5277
|
+
* @example 12
|
|
5278
|
+
*/
|
|
5279
|
+
newAccounts?: number | null;
|
|
5271
5280
|
};
|
|
5272
5281
|
BuilderSeriesPoint: {
|
|
5273
5282
|
/**
|
|
@@ -5339,6 +5348,13 @@ export interface components {
|
|
|
5339
5348
|
* @example 11000
|
|
5340
5349
|
*/
|
|
5341
5350
|
netFlowUsd?: string | null;
|
|
5351
|
+
volumeBySource?: components["schemas"]["VolumeUsdBySource"];
|
|
5352
|
+
/**
|
|
5353
|
+
* Format: int64
|
|
5354
|
+
* @description Accounts registered in the bucket under one of the builder's applications, whether or not they traded, summed over a group's applications (newTraders counts first trades instead)
|
|
5355
|
+
* @example 2
|
|
5356
|
+
*/
|
|
5357
|
+
newAccounts?: number | null;
|
|
5342
5358
|
};
|
|
5343
5359
|
BuildercodePayout: {
|
|
5344
5360
|
/**
|
|
@@ -6877,6 +6893,13 @@ export interface components {
|
|
|
6877
6893
|
* @example 11000
|
|
6878
6894
|
*/
|
|
6879
6895
|
netFlowUsd?: string | null;
|
|
6896
|
+
volumeBySource?: components["schemas"]["VolumeUsdBySource"];
|
|
6897
|
+
/**
|
|
6898
|
+
* Format: int64
|
|
6899
|
+
* @description Accounts registered in the window under one of the builder's applications, whether or not they traded, summed over a group's applications (newTraders counts first trades instead)
|
|
6900
|
+
* @example 12
|
|
6901
|
+
*/
|
|
6902
|
+
newAccounts?: number | null;
|
|
6880
6903
|
};
|
|
6881
6904
|
GetBuildercodePayoutSummaryResponse: {
|
|
6882
6905
|
/**
|
|
@@ -7334,6 +7357,7 @@ export interface components {
|
|
|
7334
7357
|
* @example 117845632.18
|
|
7335
7358
|
*/
|
|
7336
7359
|
quoteVolume24h?: string | null;
|
|
7360
|
+
volume24hBySource?: components["schemas"]["Volume24hBySource"];
|
|
7337
7361
|
};
|
|
7338
7362
|
/** @description Exchange-wide life-to-date cumulative market statistics across all trading pairs. */
|
|
7339
7363
|
GetMarketStatsResponse: {
|
|
@@ -7386,7 +7410,7 @@ export interface components {
|
|
|
7386
7410
|
GetMyFeeTierResponse: {
|
|
7387
7411
|
/**
|
|
7388
7412
|
* Format: int32
|
|
7389
|
-
* @description Caller's
|
|
7413
|
+
* @description Caller's tier (1–6) on the requested pair: the tier their rates come from, or the tier their wallet's recorded weighted 14-day volume earns when rateSource is custom
|
|
7390
7414
|
* @example 2
|
|
7391
7415
|
*/
|
|
7392
7416
|
currentTierLevel?: number | null;
|
|
@@ -7406,18 +7430,33 @@ export interface components {
|
|
|
7406
7430
|
*/
|
|
7407
7431
|
perpVolume14d?: string | null;
|
|
7408
7432
|
/**
|
|
7409
|
-
* @description Additional weighted volume needed to reach the next tier, counted from the volume the current tier resolved from; omitted at tier 6
|
|
7433
|
+
* @description Additional weighted volume needed to reach the next tier, counted from the volume the current tier resolved from; omitted at tier 6 and unless rateSource is volume
|
|
7410
7434
|
* @example 17500000
|
|
7411
7435
|
*/
|
|
7412
7436
|
volumeToNextTier?: string | null;
|
|
7413
7437
|
/**
|
|
7414
7438
|
* Format: int32
|
|
7415
|
-
* @description Next tier level when not already at 6
|
|
7439
|
+
* @description Next tier level when not already at 6; omitted unless rateSource is volume
|
|
7416
7440
|
* @example 3
|
|
7417
7441
|
*/
|
|
7418
7442
|
nextTierLevel?: number | null;
|
|
7419
7443
|
/** @description Six-row fee schedule for the requested pair, ascending by tier */
|
|
7420
7444
|
feeSchedule?: components["schemas"]["FeeTierScheduleRow"][] | null;
|
|
7445
|
+
/**
|
|
7446
|
+
* @description Why this rate applies: volume (the tier your 14-day volume earns), tier_override (an assigned tier), or custom (custom rates assigned to your wallet). Applies to orders you place now.
|
|
7447
|
+
* @example volume
|
|
7448
|
+
*/
|
|
7449
|
+
rateSource?: string | null;
|
|
7450
|
+
/**
|
|
7451
|
+
* @description Effective maker rate for the requested pair, in decimal basis points; negative is a rebate, positive is a fee
|
|
7452
|
+
* @example -1.15
|
|
7453
|
+
*/
|
|
7454
|
+
makerFeeBps?: string | null;
|
|
7455
|
+
/**
|
|
7456
|
+
* @description Effective taker rate for the requested pair, in decimal basis points
|
|
7457
|
+
* @example 6
|
|
7458
|
+
*/
|
|
7459
|
+
takerFeeBps?: string | null;
|
|
7421
7460
|
};
|
|
7422
7461
|
GetMyReferralDownlineResponse: {
|
|
7423
7462
|
/** @description One page of rows, one per (source account, level, token) the caller earns from, across every reward level, ordered by each source account's own total, largest first. A wallet that traded through several applications has one account per application: its rows within a page are merged into one row at the position of its first (largest) part, so a merged row can sit below a smaller one, and the wallet can appear again on a later page. Paged by `pageSize` / `pageToken`; follow `nextPageToken` for the rest. Comes from the caller's maintained reward totals — no tree walk. */
|
|
@@ -8082,8 +8121,9 @@ export interface components {
|
|
|
8082
8121
|
maintenanceMarginRequired?: string | null;
|
|
8083
8122
|
/**
|
|
8084
8123
|
* @description Initial margin required by this position at mark_price, honoring both its
|
|
8085
|
-
* effective leverage and the market initial-margin floor.
|
|
8086
|
-
* position has no
|
|
8124
|
+
* effective leverage and the market initial-margin floor. Each unit keeps
|
|
8125
|
+
* the leverage of the order that opened it. Zero when the position has no
|
|
8126
|
+
* open exposure.
|
|
8087
8127
|
*/
|
|
8088
8128
|
initialMarginRequired?: string | null;
|
|
8089
8129
|
/**
|
|
@@ -8238,8 +8278,9 @@ export interface components {
|
|
|
8238
8278
|
maintenanceMarginRequired?: string | null;
|
|
8239
8279
|
/**
|
|
8240
8280
|
* @description Initial margin required by this position at mark_price, honoring both its
|
|
8241
|
-
* effective leverage and the market initial-margin floor.
|
|
8242
|
-
* position has no
|
|
8281
|
+
* effective leverage and the market initial-margin floor. Each unit keeps
|
|
8282
|
+
* the leverage of the order that opened it. Zero when the position has no
|
|
8283
|
+
* open exposure.
|
|
8243
8284
|
*/
|
|
8244
8285
|
initialMarginRequired?: string | null;
|
|
8245
8286
|
/**
|
|
@@ -8361,12 +8402,12 @@ export interface components {
|
|
|
8361
8402
|
activeTakers?: number | null;
|
|
8362
8403
|
/**
|
|
8363
8404
|
* Format: int64
|
|
8364
|
-
* @description Wallets whose first trade
|
|
8405
|
+
* @description Wallets whose first trade on the protocol fell in the window, each counted once however many builders it traded through
|
|
8365
8406
|
* @example 27
|
|
8366
8407
|
*/
|
|
8367
8408
|
newTraders?: number | null;
|
|
8368
8409
|
/**
|
|
8369
|
-
* @description Total value locked in USD at the end of the window (the end of the bucket holding endTime): USDC custody
|
|
8410
|
+
* @description Total value locked in USD at the end of the window (the end of the bucket holding endTime): USDC custody (the opening custody plus deposits less initiated withdrawals), valued 1:1. Null when no custody had been folded by then.
|
|
8370
8411
|
* @example 536172600
|
|
8371
8412
|
*/
|
|
8372
8413
|
tvlUsd?: string | null;
|
|
@@ -8396,6 +8437,13 @@ export interface components {
|
|
|
8396
8437
|
* @example 418
|
|
8397
8438
|
*/
|
|
8398
8439
|
activeAccounts?: number | null;
|
|
8440
|
+
volumeBySource?: components["schemas"]["VolumeUsdBySource"];
|
|
8441
|
+
/**
|
|
8442
|
+
* Format: int64
|
|
8443
|
+
* @description Accounts registered in the window: every account with an application, whether or not it traded, all builders included (newTraders counts first trades instead). Every sign-up counts, in buckets without trades too; window=all starts where the analytics history does.
|
|
8444
|
+
* @example 57
|
|
8445
|
+
*/
|
|
8446
|
+
newAccounts?: number | null;
|
|
8399
8447
|
};
|
|
8400
8448
|
GetPulseResponse: {
|
|
8401
8449
|
/**
|
|
@@ -9346,7 +9394,8 @@ export interface components {
|
|
|
9346
9394
|
/**
|
|
9347
9395
|
* @description Displayed builders with figures in the window, largest volume first
|
|
9348
9396
|
* (ties by builder id), up to limit. A builder that only earned maker
|
|
9349
|
-
* add-ons,
|
|
9397
|
+
* add-ons, only took deposits, or only registered accounts, ranks with zero
|
|
9398
|
+
* volume.
|
|
9350
9399
|
*/
|
|
9351
9400
|
rows?: components["schemas"]["BuilderLeaderboardRow"][] | null;
|
|
9352
9401
|
};
|
|
@@ -10054,6 +10103,7 @@ export interface components {
|
|
|
10054
10103
|
* @example 2100
|
|
10055
10104
|
*/
|
|
10056
10105
|
tradesCount?: number | null;
|
|
10106
|
+
volumeBySource?: components["schemas"]["VolumeUsdBySource"];
|
|
10057
10107
|
};
|
|
10058
10108
|
MatchResult: {
|
|
10059
10109
|
/**
|
|
@@ -10637,8 +10687,9 @@ export interface components {
|
|
|
10637
10687
|
maintenanceMarginRequired?: string | null;
|
|
10638
10688
|
/**
|
|
10639
10689
|
* @description Initial margin required by this position at mark_price, honoring both its
|
|
10640
|
-
* effective leverage and the market initial-margin floor.
|
|
10641
|
-
* position has no
|
|
10690
|
+
* effective leverage and the market initial-margin floor. Each unit keeps
|
|
10691
|
+
* the leverage of the order that opened it. Zero when the position has no
|
|
10692
|
+
* open exposure.
|
|
10642
10693
|
*/
|
|
10643
10694
|
initialMarginRequired?: string | null;
|
|
10644
10695
|
/**
|
|
@@ -11019,12 +11070,12 @@ export interface components {
|
|
|
11019
11070
|
activeTakers?: number | null;
|
|
11020
11071
|
/**
|
|
11021
11072
|
* Format: int64
|
|
11022
|
-
* @description Wallets whose first trade
|
|
11073
|
+
* @description Wallets whose first trade on the protocol fell in the bucket, each counted once however many builders it traded through
|
|
11023
11074
|
* @example 3
|
|
11024
11075
|
*/
|
|
11025
11076
|
newTraders?: number | null;
|
|
11026
11077
|
/**
|
|
11027
|
-
* @description Total value locked in USD at the end of the bucket: USDC custody
|
|
11078
|
+
* @description Total value locked in USD at the end of the bucket: USDC custody (the opening custody plus deposits less initiated withdrawals), valued 1:1. Carried across buckets without custody movement; null before the first folded custody hour.
|
|
11028
11079
|
* @example 536172600
|
|
11029
11080
|
*/
|
|
11030
11081
|
tvlUsd?: string | null;
|
|
@@ -11043,6 +11094,13 @@ export interface components {
|
|
|
11043
11094
|
* @example 49000
|
|
11044
11095
|
*/
|
|
11045
11096
|
netFlowUsd?: string | null;
|
|
11097
|
+
volumeBySource?: components["schemas"]["VolumeUsdBySource"];
|
|
11098
|
+
/**
|
|
11099
|
+
* Format: int64
|
|
11100
|
+
* @description Accounts registered in the bucket: every account with an application, whether or not it traded, all builders included (newTraders counts first trades instead)
|
|
11101
|
+
* @example 4
|
|
11102
|
+
*/
|
|
11103
|
+
newAccounts?: number | null;
|
|
11046
11104
|
};
|
|
11047
11105
|
PublicHealthCheckResponse: {
|
|
11048
11106
|
/**
|
|
@@ -11524,6 +11582,55 @@ export interface components {
|
|
|
11524
11582
|
*/
|
|
11525
11583
|
available?: string | null;
|
|
11526
11584
|
};
|
|
11585
|
+
/** @description What your view showed on the accepted side when you accepted. */
|
|
11586
|
+
RfqAcceptanceRecord: {
|
|
11587
|
+
/**
|
|
11588
|
+
* Format: int64
|
|
11589
|
+
* @description The view version you accepted
|
|
11590
|
+
*/
|
|
11591
|
+
viewVersion?: number | null;
|
|
11592
|
+
/**
|
|
11593
|
+
* Format: int64
|
|
11594
|
+
* @description When you accepted, Unix milliseconds
|
|
11595
|
+
*/
|
|
11596
|
+
acceptedAtMs?: number | null;
|
|
11597
|
+
/** @description All-in VWAP shown for the accepted side, fees included */
|
|
11598
|
+
vwap?: string | null;
|
|
11599
|
+
/** @description VWAP shown before fees */
|
|
11600
|
+
grossVwap?: string | null;
|
|
11601
|
+
/** @description Quantity the shown allocation filled */
|
|
11602
|
+
availableQuantity?: string | null;
|
|
11603
|
+
/**
|
|
11604
|
+
* Format: int32
|
|
11605
|
+
* @description Your Monaco fee rate frozen at acceptance, in centi-bps
|
|
11606
|
+
*/
|
|
11607
|
+
monacoFeeCbps?: number | null;
|
|
11608
|
+
/**
|
|
11609
|
+
* Format: int32
|
|
11610
|
+
* @description Your builder fee rate frozen at acceptance, in centi-bps
|
|
11611
|
+
*/
|
|
11612
|
+
builderFeeCbps?: number | null;
|
|
11613
|
+
book?: components["schemas"]["RfqBookComparison"];
|
|
11614
|
+
/** @description Whether that snapshot filled the whole size; absent when no snapshot at most 500 ms old was held at acceptance */
|
|
11615
|
+
bookFullSize?: boolean | null;
|
|
11616
|
+
};
|
|
11617
|
+
/** @description The taker's requested size priced against the public order book. */
|
|
11618
|
+
RfqBookComparison: {
|
|
11619
|
+
/** @description All-in book VWAP with the same fee rates as the view: cost per unit when buying, net proceeds per unit when selling */
|
|
11620
|
+
vwap?: string | null;
|
|
11621
|
+
/** @description Book VWAP before fees */
|
|
11622
|
+
grossVwap?: string | null;
|
|
11623
|
+
/**
|
|
11624
|
+
* Format: int64
|
|
11625
|
+
* @description When the book snapshot was read, Unix milliseconds
|
|
11626
|
+
*/
|
|
11627
|
+
asOfMs?: number | null;
|
|
11628
|
+
/**
|
|
11629
|
+
* Format: uint32
|
|
11630
|
+
* @description Price levels the size walked
|
|
11631
|
+
*/
|
|
11632
|
+
levels?: number | null;
|
|
11633
|
+
};
|
|
11527
11634
|
/** @description One fill of an executed RFQ. */
|
|
11528
11635
|
RfqFill: {
|
|
11529
11636
|
executionId?: string | null;
|
|
@@ -11536,6 +11643,22 @@ export interface components {
|
|
|
11536
11643
|
/** @description The builder part of fee */
|
|
11537
11644
|
builderFee?: string | null;
|
|
11538
11645
|
};
|
|
11646
|
+
/** @description One fill of the calling maker's quote. */
|
|
11647
|
+
RfqMakerFill: {
|
|
11648
|
+
/**
|
|
11649
|
+
* Format: uuid
|
|
11650
|
+
* @description The trade id
|
|
11651
|
+
*/
|
|
11652
|
+
executionId?: string | null;
|
|
11653
|
+
price?: string | null;
|
|
11654
|
+
quantity?: string | null;
|
|
11655
|
+
/** @description Your whole fee on this fill as charged: monacoFee plus builderFee; negative for a net rebate. Unset until trade history has the fill */
|
|
11656
|
+
fee?: string | null;
|
|
11657
|
+
/** @description Your Monaco maker fee as charged; negative is a rebate */
|
|
11658
|
+
monacoFee?: string | null;
|
|
11659
|
+
/** @description The builder add-on your frontend charged, as charged (0 when none) */
|
|
11660
|
+
builderFee?: string | null;
|
|
11661
|
+
};
|
|
11539
11662
|
/** @description A selected maker's own part of an acceptance, for answering last look. */
|
|
11540
11663
|
RfqMakerSelection: {
|
|
11541
11664
|
/** Format: uuid */
|
|
@@ -11578,6 +11701,11 @@ export interface components {
|
|
|
11578
11701
|
unfilledQuantity?: string | null;
|
|
11579
11702
|
vwap?: string | null;
|
|
11580
11703
|
fills?: components["schemas"]["RfqFill"][] | null;
|
|
11704
|
+
/** @description Your all-in VWAP: notional plus your whole fee for a buy, minus it for a sell, over the executed quantity. Empty when nothing filled */
|
|
11705
|
+
allInVwap?: string | null;
|
|
11706
|
+
bookAtFill?: components["schemas"]["RfqBookComparison"];
|
|
11707
|
+
/** @description Whether a fresh book snapshot filled the executed quantity then; absent when none was fresh */
|
|
11708
|
+
bookAtFillFullSize?: boolean | null;
|
|
11581
11709
|
};
|
|
11582
11710
|
/** @description A quote's price and capacity. */
|
|
11583
11711
|
RfqQuoteTerms: {
|
|
@@ -11673,6 +11801,7 @@ export interface components {
|
|
|
11673
11801
|
estimatedBuilderFee?: string | null;
|
|
11674
11802
|
/** @description Estimated total taker fee on available_quantity, in the quote asset */
|
|
11675
11803
|
estimatedTotalFee?: string | null;
|
|
11804
|
+
book?: components["schemas"]["RfqBookComparison"];
|
|
11676
11805
|
};
|
|
11677
11806
|
/** @description Authoritative RFQ status. */
|
|
11678
11807
|
RfqStatus: {
|
|
@@ -11697,6 +11826,9 @@ export interface components {
|
|
|
11697
11826
|
outcome?: components["schemas"]["RfqOutcome"];
|
|
11698
11827
|
/** Format: int64 */
|
|
11699
11828
|
durableSequence?: number | null;
|
|
11829
|
+
/** @description Maker only: your own fills once the RFQ settled, never another maker's */
|
|
11830
|
+
ownFills?: components["schemas"]["RfqMakerFill"][] | null;
|
|
11831
|
+
acceptance?: components["schemas"]["RfqAcceptanceRecord"];
|
|
11700
11832
|
};
|
|
11701
11833
|
/** @description The taker's current view of the quotes. */
|
|
11702
11834
|
RfqView: {
|
|
@@ -12011,7 +12143,7 @@ export interface components {
|
|
|
12011
12143
|
*/
|
|
12012
12144
|
monacoTakerFee?: string | null;
|
|
12013
12145
|
/**
|
|
12014
|
-
* @description Monaco maker
|
|
12146
|
+
* @description Monaco maker fee in quote token: negative is a rebate, positive is a fee
|
|
12015
12147
|
* @example -5.00
|
|
12016
12148
|
*/
|
|
12017
12149
|
monacoMakerRebate?: string | null;
|
|
@@ -12068,12 +12200,12 @@ export interface components {
|
|
|
12068
12200
|
*/
|
|
12069
12201
|
slippageToleranceBps?: number | null;
|
|
12070
12202
|
/**
|
|
12071
|
-
* @description
|
|
12203
|
+
* @description Monaco taker fee rate as a decimal basis-points string — the exact rate the ledger charges this caller, from their tier or the assigned or custom rate on their wallet (equals monaco_taker_fee / notional). Fractional, e.g. "6.5".
|
|
12072
12204
|
* @example 6.5
|
|
12073
12205
|
*/
|
|
12074
12206
|
monacoTakerFeeBpsExact?: string | null;
|
|
12075
12207
|
/**
|
|
12076
|
-
* @description
|
|
12208
|
+
* @description Monaco maker rate as a decimal basis-points string (negative is a rebate, positive is a fee) — the exact rate this caller gets, from their tier or the assigned or custom rate on their wallet. Fractional, e.g. "-1".
|
|
12077
12209
|
* @example -1
|
|
12078
12210
|
*/
|
|
12079
12211
|
monacoMakerRebateBpsExact?: string | null;
|
|
@@ -12511,7 +12643,7 @@ export interface components {
|
|
|
12511
12643
|
/** @description When the sweeper last observed progress on the deposit */
|
|
12512
12644
|
updatedAt?: string | null;
|
|
12513
12645
|
};
|
|
12514
|
-
/** @description What the vault holds of one token. Amounts are raw token units. Withdrawals count when initiated; the vault's physical balance is custodyRaw plus pendingWithdrawalsRaw. Custody is folded from the trade and transfer stream into the aux database while pendingWithdrawalsRaw is read from core, so the two can disagree briefly while the fold lags. */
|
|
12646
|
+
/** @description What the vault holds of one token. Amounts are raw token units. Custody is openingRaw plus depositedRaw less withdrawnRaw. Withdrawals count when initiated; the vault's physical balance is custodyRaw plus pendingWithdrawalsRaw. Custody is folded from the trade and transfer stream into the aux database while pendingWithdrawalsRaw is read from core, so the two can disagree briefly while the fold lags. */
|
|
12515
12647
|
TokenCustody: {
|
|
12516
12648
|
/**
|
|
12517
12649
|
* Format: uuid
|
|
@@ -12542,12 +12674,12 @@ export interface components {
|
|
|
12542
12674
|
*/
|
|
12543
12675
|
contractAddress?: string | null;
|
|
12544
12676
|
/**
|
|
12545
|
-
* @description
|
|
12677
|
+
* @description Deposits since the explorer's history starts, in raw token units
|
|
12546
12678
|
* @example 536172601000000
|
|
12547
12679
|
*/
|
|
12548
12680
|
depositedRaw?: string | null;
|
|
12549
12681
|
/**
|
|
12550
|
-
* @description
|
|
12682
|
+
* @description Withdrawals initiated since the explorer's history starts, in raw token units
|
|
12551
12683
|
* @example 1000000
|
|
12552
12684
|
*/
|
|
12553
12685
|
withdrawnRaw?: string | null;
|
|
@@ -12564,7 +12696,7 @@ export interface components {
|
|
|
12564
12696
|
*/
|
|
12565
12697
|
withdrawalsCount?: number | null;
|
|
12566
12698
|
/**
|
|
12567
|
-
* @description
|
|
12699
|
+
* @description openingRaw plus deposits less initiated withdrawals, in raw token units; null when not positive (never zero: a token held in no amount and one not indexed are different facts)
|
|
12568
12700
|
* @example 536172600000000
|
|
12569
12701
|
*/
|
|
12570
12702
|
custodyRaw?: string | null;
|
|
@@ -12588,6 +12720,11 @@ export interface components {
|
|
|
12588
12720
|
* @example true
|
|
12589
12721
|
*/
|
|
12590
12722
|
countsTowardTvl?: boolean | null;
|
|
12723
|
+
/**
|
|
12724
|
+
* @description What the vault held before the explorer's history starts, in raw token units: 0 where the history starts at the exchange's first event, the measured balance carried in where it starts later
|
|
12725
|
+
* @example 924746312510000
|
|
12726
|
+
*/
|
|
12727
|
+
openingRaw?: string | null;
|
|
12591
12728
|
};
|
|
12592
12729
|
TpSlLeg: {
|
|
12593
12730
|
triggerPrice?: string | null;
|
|
@@ -13896,6 +14033,48 @@ export interface components {
|
|
|
13896
14033
|
*/
|
|
13897
14034
|
referralNotAppliedReason?: "REFERRAL_NOT_APPLIED_REASON_UNSPECIFIED" | "REFERRAL_NOT_APPLIED_REASON_ALREADY_REFERRED" | "REFERRAL_NOT_APPLIED_REASON_UNKNOWN_CODE" | "REFERRAL_NOT_APPLIED_REASON_SELF_REFERRAL" | null;
|
|
13898
14035
|
};
|
|
14036
|
+
/**
|
|
14037
|
+
* @description A market's rolling 24h volume split by execution source (RFQ-17). Each
|
|
14038
|
+
* total is the order-book part plus the RFQ part.
|
|
14039
|
+
*/
|
|
14040
|
+
Volume24hBySource: {
|
|
14041
|
+
/**
|
|
14042
|
+
* @description Base-token volume filled on the order book in the last 24 hours
|
|
14043
|
+
* @example 1200.50000000
|
|
14044
|
+
*/
|
|
14045
|
+
orderBookBaseVolume?: string | null;
|
|
14046
|
+
/**
|
|
14047
|
+
* @description Base-token volume filled by RFQ block trades in the last 24 hours
|
|
14048
|
+
* @example 34.00000000
|
|
14049
|
+
*/
|
|
14050
|
+
rfqBaseVolume?: string | null;
|
|
14051
|
+
/**
|
|
14052
|
+
* @description Quote-token volume filled on the order book in the last 24 hours; null when the 24h quote volume is unavailable
|
|
14053
|
+
* @example 91000000.00
|
|
14054
|
+
*/
|
|
14055
|
+
orderBookQuoteVolume?: string | null;
|
|
14056
|
+
/**
|
|
14057
|
+
* @description Quote-token volume filled by RFQ block trades in the last 24 hours; null when the 24h quote volume is unavailable
|
|
14058
|
+
* @example 2580000.00
|
|
14059
|
+
*/
|
|
14060
|
+
rfqQuoteVolume?: string | null;
|
|
14061
|
+
};
|
|
14062
|
+
/**
|
|
14063
|
+
* @description A USD volume split by how it executed (RFQ-17): the order-book part and the
|
|
14064
|
+
* RFQ part add back exactly to the volumeUsd beside it.
|
|
14065
|
+
*/
|
|
14066
|
+
VolumeUsdBySource: {
|
|
14067
|
+
/**
|
|
14068
|
+
* @description The part of volumeUsd filled on the order book: volumeUsd less rfqVolumeUsd
|
|
14069
|
+
* @example 1180000.5
|
|
14070
|
+
*/
|
|
14071
|
+
orderBookVolumeUsd?: string | null;
|
|
14072
|
+
/**
|
|
14073
|
+
* @description The part of volumeUsd filled by RFQ block trades
|
|
14074
|
+
* @example 70000
|
|
14075
|
+
*/
|
|
14076
|
+
rfqVolumeUsd?: string | null;
|
|
14077
|
+
};
|
|
13899
14078
|
/** @description A wallet's figures through one displayed builder. A display group's applications fold into one row under the group. */
|
|
13900
14079
|
WalletBuilderVolume: {
|
|
13901
14080
|
/** @description The builder the figures are reported under; applications is empty. */
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@0xmonaco/types",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.8",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"homepage": "https://docs.0xmonaco.com/sdk/typescript",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
"lint": "biome lint ."
|
|
17
17
|
},
|
|
18
18
|
"dependencies": {
|
|
19
|
-
"@0xmonaco/contracts": "1.1.
|
|
19
|
+
"@0xmonaco/contracts": "1.1.8",
|
|
20
20
|
"zod": "^4.6.7"
|
|
21
21
|
},
|
|
22
22
|
"peerDependencies": {
|