@lifi/perps-sdk-provider-ondo 20.2.0 → 21.0.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/dist/cjs/OndoProvider.d.ts.map +1 -1
- package/dist/cjs/OndoProvider.js +4 -4
- package/dist/cjs/OndoProvider.js.map +1 -1
- package/dist/cjs/accountConfig.d.ts +2 -2
- package/dist/cjs/accountConfig.d.ts.map +1 -1
- package/dist/cjs/accountConfig.js +6 -3
- package/dist/cjs/accountConfig.js.map +1 -1
- package/dist/cjs/auth/OndoApiKeyStore.d.ts +1 -0
- package/dist/cjs/auth/OndoApiKeyStore.d.ts.map +1 -1
- package/dist/cjs/auth/OndoApiKeyStore.js +4 -1
- package/dist/cjs/auth/OndoApiKeyStore.js.map +1 -1
- package/dist/cjs/auth/signActions.d.ts.map +1 -1
- package/dist/cjs/auth/signActions.js +26 -4
- package/dist/cjs/auth/signActions.js.map +1 -1
- package/dist/cjs/constants.d.ts.map +1 -1
- package/dist/cjs/constants.js +1 -1
- package/dist/cjs/constants.js.map +1 -1
- package/dist/cjs/types/wire.d.ts +1 -1
- package/dist/cjs/types/wire.d.ts.map +1 -1
- package/dist/cjs/utils/mapActivity.d.ts.map +1 -1
- package/dist/cjs/utils/mapActivity.js +2 -0
- package/dist/cjs/utils/mapActivity.js.map +1 -1
- package/dist/esm/OndoProvider.d.ts.map +1 -1
- package/dist/esm/OndoProvider.js +5 -5
- package/dist/esm/OndoProvider.js.map +1 -1
- package/dist/esm/accountConfig.d.ts +5 -7
- package/dist/esm/accountConfig.d.ts.map +1 -1
- package/dist/esm/accountConfig.js +10 -9
- package/dist/esm/accountConfig.js.map +1 -1
- package/dist/esm/auth/OndoApiKeyStore.d.ts +2 -0
- package/dist/esm/auth/OndoApiKeyStore.d.ts.map +1 -1
- package/dist/esm/auth/OndoApiKeyStore.js +3 -0
- package/dist/esm/auth/OndoApiKeyStore.js.map +1 -1
- package/dist/esm/auth/signActions.d.ts.map +1 -1
- package/dist/esm/auth/signActions.js +35 -8
- package/dist/esm/auth/signActions.js.map +1 -1
- package/dist/esm/constants.d.ts +2 -1
- package/dist/esm/constants.d.ts.map +1 -1
- package/dist/esm/constants.js +3 -2
- package/dist/esm/constants.js.map +1 -1
- package/dist/esm/types/wire.d.ts +6 -2
- package/dist/esm/types/wire.d.ts.map +1 -1
- package/dist/esm/utils/mapActivity.d.ts.map +1 -1
- package/dist/esm/utils/mapActivity.js +2 -0
- package/dist/esm/utils/mapActivity.js.map +1 -1
- package/dist/types/OndoProvider.d.ts.map +1 -1
- package/dist/types/accountConfig.d.ts +5 -7
- package/dist/types/accountConfig.d.ts.map +1 -1
- package/dist/types/auth/OndoApiKeyStore.d.ts +2 -0
- package/dist/types/auth/OndoApiKeyStore.d.ts.map +1 -1
- package/dist/types/auth/signActions.d.ts.map +1 -1
- package/dist/types/constants.d.ts +2 -1
- package/dist/types/constants.d.ts.map +1 -1
- package/dist/types/types/wire.d.ts +6 -2
- package/dist/types/types/wire.d.ts.map +1 -1
- package/dist/types/utils/mapActivity.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/OndoProvider.ts +6 -8
- package/src/accountConfig.ts +11 -12
- package/src/auth/OndoApiKeyStore.ts +5 -0
- package/src/auth/signActions.ts +52 -8
- package/src/constants.ts +3 -2
- package/src/types/wire.ts +7 -1
- package/src/utils/mapActivity.ts +2 -0
|
@@ -268,8 +268,12 @@ export interface OndoWalletDeposit {
|
|
|
268
268
|
/** Disambiguates two deposits carried by one transaction. */
|
|
269
269
|
logIndex?: string;
|
|
270
270
|
}
|
|
271
|
-
/**
|
|
272
|
-
|
|
271
|
+
/**
|
|
272
|
+
* The REST spec lists the lowercase values. The live API sends the
|
|
273
|
+
* `WITHDRAWAL_`-prefixed values.
|
|
274
|
+
* @public
|
|
275
|
+
*/
|
|
276
|
+
export type OndoWithdrawalStatus = 'WITHDRAWAL_PENDING' | 'WITHDRAWAL_SUCCESS' | 'complete' | 'failure' | 'pending' | 'cancelled' | 'unknown';
|
|
273
277
|
/**
|
|
274
278
|
* Mirrors Ondo's `WalletWithdrawal` (the `GET /v1/wallet/withdrawals` result).
|
|
275
279
|
* @public
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wire.d.ts","sourceRoot":"","sources":["../../../src/types/wire.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"wire.d.ts","sourceRoot":"","sources":["../../../src/types/wire.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mapActivity.d.ts","sourceRoot":"","sources":["../../../src/utils/mapActivity.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAGnB,MAAM,iBAAiB,CAAA;AACxB,OAAO,KAAK,EACV,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,kBAAkB,EACnB,MAAM,mBAAmB,CAAA;AAG1B,OAAO,KAAK,EACV,sBAAsB,EACtB,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,EACrB,MAAM,kBAAkB,CAAA;AAEzB;;;;;;;;GAQG;AACH,eAAO,MAAM,kBAAkB,GAC7B,UAAU,sBAAsB,EAChC,QAAQ,aAAa,KACpB,eAYF,CAAA;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,sBAAsB,GACjC,OAAO,oBAAoB,EAC3B,eAAe,CAAC,MAAM,EAAE,MAAM,KAAK,aAAa,GAAG,SAAS,KAC3D,mBAAmB,GAAG,IAoBxB,CAAA;AAmCD,8FAA8F;AAC9F,eAAO,MAAM,kBAAkB,GAC7B,SAAS,iBAAiB,EAC1B,eAAe,aAAa,KAC3B,eAcF,CAAA;
|
|
1
|
+
{"version":3,"file":"mapActivity.d.ts","sourceRoot":"","sources":["../../../src/utils/mapActivity.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAGnB,MAAM,iBAAiB,CAAA;AACxB,OAAO,KAAK,EACV,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,kBAAkB,EACnB,MAAM,mBAAmB,CAAA;AAG1B,OAAO,KAAK,EACV,sBAAsB,EACtB,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,EACrB,MAAM,kBAAkB,CAAA;AAEzB;;;;;;;;GAQG;AACH,eAAO,MAAM,kBAAkB,GAC7B,UAAU,sBAAsB,EAChC,QAAQ,aAAa,KACpB,eAYF,CAAA;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,sBAAsB,GACjC,OAAO,oBAAoB,EAC3B,eAAe,CAAC,MAAM,EAAE,MAAM,KAAK,aAAa,GAAG,SAAS,KAC3D,mBAAmB,GAAG,IAoBxB,CAAA;AAmCD,8FAA8F;AAC9F,eAAO,MAAM,kBAAkB,GAC7B,SAAS,iBAAiB,EAC1B,eAAe,aAAa,KAC3B,eAcF,CAAA;AAaD;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,GAChC,YAAY,oBAAoB,EAChC,eAAe,aAAa,KAC3B,kBAAkB,GAAG,IAuBvB,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lifi/perps-sdk-provider-ondo",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "21.0.0",
|
|
4
4
|
"description": "Ondo Perps provider plugin for @lifi/perps-sdk",
|
|
5
5
|
"homepage": "https://github.com/lifinance/perps-sdk",
|
|
6
6
|
"bugs": {
|
|
@@ -44,10 +44,10 @@
|
|
|
44
44
|
"dependencies": {
|
|
45
45
|
"big.js": "^7.0.1",
|
|
46
46
|
"viem": "^2.55.18",
|
|
47
|
-
"@lifi/perps-types": "^
|
|
47
|
+
"@lifi/perps-types": "^17.0.0"
|
|
48
48
|
},
|
|
49
49
|
"peerDependencies": {
|
|
50
|
-
"@lifi/perps-sdk": "^
|
|
50
|
+
"@lifi/perps-sdk": "^19.0.0"
|
|
51
51
|
},
|
|
52
52
|
"publishConfig": {
|
|
53
53
|
"access": "public"
|
package/src/OndoProvider.ts
CHANGED
|
@@ -58,8 +58,8 @@ import type {
|
|
|
58
58
|
PortfolioHistoryResponse,
|
|
59
59
|
Position,
|
|
60
60
|
PositionsResponse,
|
|
61
|
-
ProviderAction,
|
|
62
61
|
Quote,
|
|
62
|
+
SetupAction,
|
|
63
63
|
SignedActionStep,
|
|
64
64
|
SigningMethod,
|
|
65
65
|
WithdrawalActivity,
|
|
@@ -69,7 +69,7 @@ import type Big from 'big.js'
|
|
|
69
69
|
import { type Address, getAddress } from 'viem'
|
|
70
70
|
import { projectOndoConfigSettings } from './accountConfig.js'
|
|
71
71
|
import { getAccountSummary } from './accountSummary.js'
|
|
72
|
-
import { OndoApiKeyStore } from './auth/OndoApiKeyStore.js'
|
|
72
|
+
import { hasOndoApiKeyScopes, OndoApiKeyStore } from './auth/OndoApiKeyStore.js'
|
|
73
73
|
import { OndoTokenStore } from './auth/OndoTokenStore.js'
|
|
74
74
|
import { ondoSignActions } from './auth/signActions.js'
|
|
75
75
|
import {
|
|
@@ -299,8 +299,6 @@ export const ondoProvider = (
|
|
|
299
299
|
return {
|
|
300
300
|
type: ONDO_PROVIDER_KEY,
|
|
301
301
|
|
|
302
|
-
internalSetupActions: [ActionType.SET_REFERRAL],
|
|
303
|
-
|
|
304
302
|
bind(client: PerpsSDKClient): void {
|
|
305
303
|
boundClient = client
|
|
306
304
|
},
|
|
@@ -309,7 +307,8 @@ export const ondoProvider = (
|
|
|
309
307
|
params: ProviderGetAccountParams,
|
|
310
308
|
opts?: SDKRequestOptions
|
|
311
309
|
): Promise<AccountResponse> {
|
|
312
|
-
const
|
|
310
|
+
const apiKey = await apiKeyStore.get(params.address)
|
|
311
|
+
const apiKeyRegistered = apiKey !== null && hasOndoApiKeyScopes(apiKey)
|
|
313
312
|
return withSession(
|
|
314
313
|
params.address,
|
|
315
314
|
() => {
|
|
@@ -1086,10 +1085,9 @@ export const ondoProvider = (
|
|
|
1086
1085
|
|
|
1087
1086
|
projectConfig(
|
|
1088
1087
|
config: AccountConfig,
|
|
1089
|
-
setup:
|
|
1090
|
-
configOptions: ProviderAction[]
|
|
1088
|
+
setup: SetupAction[]
|
|
1091
1089
|
): AccountConfigSetting[] {
|
|
1092
|
-
return projectOndoConfigSettings(config, setup
|
|
1090
|
+
return projectOndoConfigSettings(config, setup)
|
|
1093
1091
|
},
|
|
1094
1092
|
|
|
1095
1093
|
async resolveActionRequest(
|
package/src/accountConfig.ts
CHANGED
|
@@ -4,6 +4,7 @@ import type {
|
|
|
4
4
|
AccountConfigSetting,
|
|
5
5
|
OndoAccountConfig,
|
|
6
6
|
ProviderAction,
|
|
7
|
+
SetupAction,
|
|
7
8
|
} from '@lifi/perps-types'
|
|
8
9
|
import { ActionType, PerpsErrorCode } from '@lifi/perps-types'
|
|
9
10
|
|
|
@@ -25,7 +26,7 @@ function assertNever(value: never): never {
|
|
|
25
26
|
*
|
|
26
27
|
* The switch is exhaustive over `ActionType` so enum additions force a
|
|
27
28
|
* compile error in the `default` arm. ActionTypes that are not valid on
|
|
28
|
-
* `Provider.setup`
|
|
29
|
+
* `Provider.setup` throw at runtime.
|
|
29
30
|
*/
|
|
30
31
|
function projectOndoDescriptor(
|
|
31
32
|
descriptor: ProviderAction,
|
|
@@ -96,11 +97,14 @@ function projectOndoDescriptor(
|
|
|
96
97
|
case ActionType.META_CREATE_REFERRAL_CODE:
|
|
97
98
|
case ActionType.ADD_WITHDRAWAL_ADDRESS:
|
|
98
99
|
case ActionType.SYNC_FEE_ATTRIBUTION:
|
|
100
|
+
case ActionType.REVOKE_BUILDER_FEE:
|
|
101
|
+
case ActionType.REVOKE_SESSION_AGENT:
|
|
102
|
+
case ActionType.REVOKE_INTEGRATOR:
|
|
99
103
|
throw new PerpsError(
|
|
100
104
|
PerpsErrorCode.SDKError,
|
|
101
105
|
`Ondo account-config mapper has no projection for descriptor type ` +
|
|
102
106
|
`'${descriptor.type}' — this ActionType is not valid on ` +
|
|
103
|
-
`Provider.setup
|
|
107
|
+
`Provider.setup for Ondo.`
|
|
104
108
|
)
|
|
105
109
|
|
|
106
110
|
default:
|
|
@@ -109,19 +113,16 @@ function projectOndoDescriptor(
|
|
|
109
113
|
}
|
|
110
114
|
|
|
111
115
|
/**
|
|
112
|
-
* Project the
|
|
113
|
-
*
|
|
114
|
-
*
|
|
116
|
+
* Project the Ondo setup descriptors against the typed `OndoAccountConfig`.
|
|
117
|
+
* Produces exactly one `AccountConfigSetting` per descriptor, in
|
|
118
|
+
* `Provider.setup` order.
|
|
115
119
|
*
|
|
116
120
|
* @param config Typed account state; a non-`ondo` config throws `SDKError`.
|
|
117
|
-
* @param setup `Provider.setup` array as emitted by `/providers`.
|
|
118
|
-
* @param options `Provider.options` array as emitted by `/providers`.
|
|
119
121
|
* @public
|
|
120
122
|
*/
|
|
121
123
|
export function projectOndoConfigSettings(
|
|
122
124
|
config: AccountConfig,
|
|
123
|
-
setup:
|
|
124
|
-
options: ProviderAction[]
|
|
125
|
+
setup: SetupAction[]
|
|
125
126
|
): AccountConfigSetting[] {
|
|
126
127
|
if (config.provider !== 'ondo') {
|
|
127
128
|
throw new PerpsError(
|
|
@@ -129,7 +130,5 @@ export function projectOndoConfigSettings(
|
|
|
129
130
|
`Ondo account-config mapper received a '${config.provider}' config.`
|
|
130
131
|
)
|
|
131
132
|
}
|
|
132
|
-
return
|
|
133
|
-
projectOndoDescriptor(descriptor, config)
|
|
134
|
-
)
|
|
133
|
+
return setup.map((descriptor) => projectOndoDescriptor(descriptor, config))
|
|
135
134
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { readValidatedRecord, type StorageAdapter } from '@lifi/perps-sdk'
|
|
2
2
|
import type { Address } from 'viem'
|
|
3
|
+
import { ONDO_API_KEY_SCOPES } from '../constants.js'
|
|
3
4
|
import type { OndoApiKey } from '../types/auth.js'
|
|
4
5
|
|
|
5
6
|
// Keys are namespaced by environment host as well as address: a production
|
|
@@ -29,6 +30,10 @@ export const isOndoApiKey = (value: unknown): value is OndoApiKey => {
|
|
|
29
30
|
)
|
|
30
31
|
}
|
|
31
32
|
|
|
33
|
+
/** @internal */
|
|
34
|
+
export const hasOndoApiKeyScopes = (apiKey: OndoApiKey): boolean =>
|
|
35
|
+
ONDO_API_KEY_SCOPES.every((scope) => apiKey.scopes.includes(scope))
|
|
36
|
+
|
|
32
37
|
/**
|
|
33
38
|
* Persists the Ondo trading API key per wallet address and environment via a
|
|
34
39
|
* `StorageAdapter`, mirroring {@link OndoTokenStore}. The record holds the
|
package/src/auth/signActions.ts
CHANGED
|
@@ -32,7 +32,11 @@ import {
|
|
|
32
32
|
type OndoSiweChallenge,
|
|
33
33
|
} from './completeSiweLogin.js'
|
|
34
34
|
import { hmacSignRequest } from './hmac.js'
|
|
35
|
-
import {
|
|
35
|
+
import {
|
|
36
|
+
hasOndoApiKeyScopes,
|
|
37
|
+
isOndoApiKey,
|
|
38
|
+
type OndoApiKeyStore,
|
|
39
|
+
} from './OndoApiKeyStore.js'
|
|
36
40
|
import type { OndoTokenStore } from './OndoTokenStore.js'
|
|
37
41
|
|
|
38
42
|
/** @internal */
|
|
@@ -80,7 +84,7 @@ function toStoredApiKey(created: OndoCreatedApiKey): OndoApiKey {
|
|
|
80
84
|
createdAt: created.createdAt,
|
|
81
85
|
scopes: created.scopes,
|
|
82
86
|
}
|
|
83
|
-
if (!isOndoApiKey(record)) {
|
|
87
|
+
if (!isOndoApiKey(record) || !hasOndoApiKeyScopes(record)) {
|
|
84
88
|
throw new OndoApiError(
|
|
85
89
|
`Ondo POST /v1/api_keys returned an unusable key record: ${JSON.stringify({ ...created, secretKey: '[REDACTED]' }).slice(0, 200)}`
|
|
86
90
|
)
|
|
@@ -88,17 +92,45 @@ function toStoredApiKey(created: OndoCreatedApiKey): OndoApiKey {
|
|
|
88
92
|
return record
|
|
89
93
|
}
|
|
90
94
|
|
|
95
|
+
const pendingApiKeys = new WeakMap<
|
|
96
|
+
OndoApiKeyStore,
|
|
97
|
+
Map<string, Promise<OndoApiKey>>
|
|
98
|
+
>()
|
|
99
|
+
|
|
100
|
+
/**
|
|
101
|
+
* Fetch the stored trading API key, or create one. Concurrent calls for one
|
|
102
|
+
* address share one creation, so the venue never holds a duplicate key.
|
|
103
|
+
*/
|
|
104
|
+
function ensureApiKey(
|
|
105
|
+
deps: OndoSignActionsDeps,
|
|
106
|
+
address: Address
|
|
107
|
+
): Promise<OndoApiKey> {
|
|
108
|
+
const pending = pendingApiKeys.get(deps.apiKeyStore) ?? new Map()
|
|
109
|
+
pendingApiKeys.set(deps.apiKeyStore, pending)
|
|
110
|
+
const pendingKey = address.toLowerCase()
|
|
111
|
+
const inFlight = pending.get(pendingKey)
|
|
112
|
+
if (inFlight !== undefined) {
|
|
113
|
+
return inFlight
|
|
114
|
+
}
|
|
115
|
+
const request = resolveApiKey(deps, address).finally(() => {
|
|
116
|
+
pending.delete(pendingKey)
|
|
117
|
+
})
|
|
118
|
+
pending.set(pendingKey, request)
|
|
119
|
+
return request
|
|
120
|
+
}
|
|
121
|
+
|
|
91
122
|
/**
|
|
92
|
-
*
|
|
93
|
-
* registry
|
|
94
|
-
*
|
|
123
|
+
* Return the stored key when it holds every required scope. Otherwise list
|
|
124
|
+
* the venue registry, revoke the stored key when the venue still lists it,
|
|
125
|
+
* and reclaim the oldest LI.FI-owned slot if the account is at capacity. The
|
|
126
|
+
* replacement secret is stored immediately after creation.
|
|
95
127
|
*/
|
|
96
|
-
async function
|
|
128
|
+
async function resolveApiKey(
|
|
97
129
|
deps: OndoSignActionsDeps,
|
|
98
130
|
address: Address
|
|
99
131
|
): Promise<OndoApiKey> {
|
|
100
132
|
const existing = await deps.apiKeyStore.get(address)
|
|
101
|
-
if (existing !== null) {
|
|
133
|
+
if (existing !== null && hasOndoApiKeyScopes(existing)) {
|
|
102
134
|
return existing
|
|
103
135
|
}
|
|
104
136
|
const token = await deps.tokenStore.get(address)
|
|
@@ -107,10 +139,22 @@ async function ensureApiKey(
|
|
|
107
139
|
`No valid Ondo session token stored for ${address}. Run the SIWE login first.`
|
|
108
140
|
)
|
|
109
141
|
}
|
|
110
|
-
const
|
|
142
|
+
const listedKeys =
|
|
111
143
|
(await deps.client.get<OndoApiKeyInfo[] | null>('/v1/api_keys', {
|
|
112
144
|
authToken: token.token,
|
|
113
145
|
})) ?? []
|
|
146
|
+
const superseded =
|
|
147
|
+
existing === null
|
|
148
|
+
? undefined
|
|
149
|
+
: listedKeys.find((key) => key.keyId === existing.keyId)
|
|
150
|
+
if (superseded !== undefined) {
|
|
151
|
+
await deps.client.send(
|
|
152
|
+
'DELETE',
|
|
153
|
+
`/v1/api_keys/${encodeURIComponent(superseded.keyId)}`,
|
|
154
|
+
{ authToken: token.token }
|
|
155
|
+
)
|
|
156
|
+
}
|
|
157
|
+
const configuredKeys = listedKeys.filter((key) => key !== superseded)
|
|
114
158
|
if (configuredKeys.length >= ONDO_API_KEY_LIMIT) {
|
|
115
159
|
let staleKey: OndoApiKeyInfo | undefined
|
|
116
160
|
let staleKeyCreatedAtMs = Number.POSITIVE_INFINITY
|
package/src/constants.ts
CHANGED
|
@@ -45,11 +45,12 @@ export const ONDO_BASE_FEE_TIER = {
|
|
|
45
45
|
export const ONDO_API_KEY_NAME = 'lifi-perps'
|
|
46
46
|
|
|
47
47
|
/**
|
|
48
|
-
* Scopes requested when
|
|
48
|
+
* Scopes requested when creating the trading API key. `POST /v1/withdraw`
|
|
49
|
+
* needs `transfer`; the SDK replaces a stored key without every scope.
|
|
49
50
|
*
|
|
50
51
|
* @public
|
|
51
52
|
*/
|
|
52
|
-
export const ONDO_API_KEY_SCOPES = ['trade']
|
|
53
|
+
export const ONDO_API_KEY_SCOPES = ['trade', 'transfer']
|
|
53
54
|
|
|
54
55
|
/**
|
|
55
56
|
* Terms-of-Service version accepted at first login. Venue-owned; current value.
|
package/src/types/wire.ts
CHANGED
|
@@ -308,8 +308,14 @@ export interface OndoWalletDeposit {
|
|
|
308
308
|
logIndex?: string
|
|
309
309
|
}
|
|
310
310
|
|
|
311
|
-
/**
|
|
311
|
+
/**
|
|
312
|
+
* The REST spec lists the lowercase values. The live API sends the
|
|
313
|
+
* `WITHDRAWAL_`-prefixed values.
|
|
314
|
+
* @public
|
|
315
|
+
*/
|
|
312
316
|
export type OndoWithdrawalStatus =
|
|
317
|
+
| 'WITHDRAWAL_PENDING'
|
|
318
|
+
| 'WITHDRAWAL_SUCCESS'
|
|
313
319
|
| 'complete'
|
|
314
320
|
| 'failure'
|
|
315
321
|
| 'pending'
|