@lifi/types 10.0.0-beta.1 → 10.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.
Files changed (153) hide show
  1. package/README.md +5 -27
  2. package/{src/_types → dist}/api.d.ts +23 -52
  3. package/{src/_esm → dist}/api.js +0 -1
  4. package/{src/_types/errors.d.ts → dist/apiErrors.d.ts} +9 -1
  5. package/{src/_esm/errors.js → dist/apiErrors.js} +0 -1
  6. package/dist/base.d.ts +231 -0
  7. package/{src/_esm/chains → dist}/base.js +63 -1
  8. package/dist/bridges.d.ts +34 -0
  9. package/dist/bridges.js +167 -0
  10. package/{src/_types → dist}/chains/Chain.d.ts +1 -3
  11. package/{src/_esm → dist}/chains/Chain.js +0 -3
  12. package/{src/_types → dist}/chains/EVMChain.d.ts +2 -2
  13. package/dist/chains/EVMChain.js +4 -0
  14. package/{src/_types → dist}/chains/SolanaChain.d.ts +2 -3
  15. package/dist/chains/SolanaChain.js +1 -0
  16. package/dist/chains/chain.utils.d.ts +4 -0
  17. package/dist/chains/chain.utils.js +21 -0
  18. package/dist/chains/index.d.ts +5 -0
  19. package/dist/chains/index.js +5 -0
  20. package/dist/chains/supported.chains.d.ts +5 -0
  21. package/dist/chains/supported.chains.js +1208 -0
  22. package/dist/cjs/api.d.ts +355 -0
  23. package/{src/_cjs → dist/cjs}/api.js +17 -1
  24. package/dist/cjs/apiErrors.d.ts +23 -0
  25. package/{src/_cjs/errors.js → dist/cjs/apiErrors.js} +2 -2
  26. package/dist/cjs/base.d.ts +231 -0
  27. package/{src/_cjs/chains → dist/cjs}/base.js +68 -4
  28. package/dist/cjs/bridges.d.ts +34 -0
  29. package/dist/cjs/bridges.js +170 -0
  30. package/dist/cjs/chains/Chain.d.ts +15 -0
  31. package/{src/_cjs → dist/cjs}/chains/Chain.js +2 -2
  32. package/dist/cjs/chains/EVMChain.d.ts +19 -0
  33. package/dist/cjs/chains/EVMChain.js +8 -0
  34. package/dist/cjs/chains/SolanaChain.d.ts +7 -0
  35. package/{src/_cjs/tokens/token.js → dist/cjs/chains/SolanaChain.js} +0 -1
  36. package/dist/cjs/chains/chain.utils.d.ts +4 -0
  37. package/dist/cjs/chains/chain.utils.js +26 -0
  38. package/dist/cjs/chains/index.d.ts +5 -0
  39. package/dist/cjs/chains/index.js +21 -0
  40. package/dist/cjs/chains/supported.chains.d.ts +5 -0
  41. package/dist/cjs/chains/supported.chains.js +1211 -0
  42. package/dist/cjs/coins.d.ts +9 -0
  43. package/dist/cjs/coins.js +1898 -0
  44. package/dist/cjs/exchanges.d.ts +50 -0
  45. package/dist/cjs/exchanges.js +1104 -0
  46. package/dist/cjs/index.d.ts +10 -0
  47. package/dist/cjs/index.js +26 -0
  48. package/dist/cjs/multicall.d.ts +3 -0
  49. package/dist/cjs/multicall.js +80 -0
  50. package/{src/_types → dist/cjs}/quests.d.ts +0 -1
  51. package/{src/_cjs → dist/cjs}/quests.js +0 -1
  52. package/{src/_types → dist/cjs}/step.d.ts +14 -13
  53. package/{src/_cjs → dist/cjs}/step.js +1 -1
  54. package/dist/coins.d.ts +9 -0
  55. package/dist/coins.js +1891 -0
  56. package/dist/exchanges.d.ts +50 -0
  57. package/dist/exchanges.js +1100 -0
  58. package/dist/index.d.ts +10 -0
  59. package/dist/index.js +10 -0
  60. package/dist/multicall.d.ts +3 -0
  61. package/dist/multicall.js +77 -0
  62. package/{src/quests.ts → dist/quests.d.ts} +15 -21
  63. package/dist/quests.js +1 -0
  64. package/dist/step.d.ts +129 -0
  65. package/{src/_esm → dist}/step.js +0 -1
  66. package/package.json +74 -22
  67. package/src/_cjs/api.js.map +0 -1
  68. package/src/_cjs/bridges.js +0 -3
  69. package/src/_cjs/bridges.js.map +0 -1
  70. package/src/_cjs/chains/Chain.js.map +0 -1
  71. package/src/_cjs/chains/EVMChain.js +0 -3
  72. package/src/_cjs/chains/EVMChain.js.map +0 -1
  73. package/src/_cjs/chains/SolanaChain.js +0 -3
  74. package/src/_cjs/chains/SolanaChain.js.map +0 -1
  75. package/src/_cjs/chains/base.js.map +0 -1
  76. package/src/_cjs/chains/index.js +0 -8
  77. package/src/_cjs/chains/index.js.map +0 -1
  78. package/src/_cjs/errors.js.map +0 -1
  79. package/src/_cjs/exchanges.js +0 -3
  80. package/src/_cjs/exchanges.js.map +0 -1
  81. package/src/_cjs/index.js +0 -12
  82. package/src/_cjs/index.js.map +0 -1
  83. package/src/_cjs/package.json +0 -1
  84. package/src/_cjs/quests.js.map +0 -1
  85. package/src/_cjs/step.js.map +0 -1
  86. package/src/_cjs/tokens/base.js +0 -63
  87. package/src/_cjs/tokens/base.js.map +0 -1
  88. package/src/_cjs/tokens/index.js +0 -6
  89. package/src/_cjs/tokens/index.js.map +0 -1
  90. package/src/_cjs/tokens/token.js.map +0 -1
  91. package/src/_esm/api.js.map +0 -1
  92. package/src/_esm/bridges.js +0 -2
  93. package/src/_esm/bridges.js.map +0 -1
  94. package/src/_esm/chains/Chain.js.map +0 -1
  95. package/src/_esm/chains/EVMChain.js +0 -2
  96. package/src/_esm/chains/EVMChain.js.map +0 -1
  97. package/src/_esm/chains/SolanaChain.js +0 -2
  98. package/src/_esm/chains/SolanaChain.js.map +0 -1
  99. package/src/_esm/chains/base.js.map +0 -1
  100. package/src/_esm/chains/index.js +0 -5
  101. package/src/_esm/chains/index.js.map +0 -1
  102. package/src/_esm/errors.js.map +0 -1
  103. package/src/_esm/exchanges.js +0 -2
  104. package/src/_esm/exchanges.js.map +0 -1
  105. package/src/_esm/index.js +0 -9
  106. package/src/_esm/index.js.map +0 -1
  107. package/src/_esm/package.json +0 -1
  108. package/src/_esm/quests.js +0 -2
  109. package/src/_esm/quests.js.map +0 -1
  110. package/src/_esm/step.js.map +0 -1
  111. package/src/_esm/tokens/base.js +0 -64
  112. package/src/_esm/tokens/base.js.map +0 -1
  113. package/src/_esm/tokens/index.js +0 -3
  114. package/src/_esm/tokens/index.js.map +0 -1
  115. package/src/_esm/tokens/token.js +0 -3
  116. package/src/_esm/tokens/token.js.map +0 -1
  117. package/src/_types/api.d.ts.map +0 -1
  118. package/src/_types/bridges.d.ts +0 -29
  119. package/src/_types/bridges.d.ts.map +0 -1
  120. package/src/_types/chains/Chain.d.ts.map +0 -1
  121. package/src/_types/chains/EVMChain.d.ts.map +0 -1
  122. package/src/_types/chains/SolanaChain.d.ts.map +0 -1
  123. package/src/_types/chains/base.d.ts +0 -125
  124. package/src/_types/chains/base.d.ts.map +0 -1
  125. package/src/_types/chains/index.d.ts +0 -5
  126. package/src/_types/chains/index.d.ts.map +0 -1
  127. package/src/_types/errors.d.ts.map +0 -1
  128. package/src/_types/exchanges.d.ts +0 -25
  129. package/src/_types/exchanges.d.ts.map +0 -1
  130. package/src/_types/index.d.ts +0 -9
  131. package/src/_types/index.d.ts.map +0 -1
  132. package/src/_types/quests.d.ts.map +0 -1
  133. package/src/_types/step.d.ts.map +0 -1
  134. package/src/_types/tokens/base.d.ts +0 -59
  135. package/src/_types/tokens/base.d.ts.map +0 -1
  136. package/src/_types/tokens/index.d.ts +0 -3
  137. package/src/_types/tokens/index.d.ts.map +0 -1
  138. package/src/_types/tokens/token.d.ts +0 -30
  139. package/src/_types/tokens/token.d.ts.map +0 -1
  140. package/src/api.ts +0 -510
  141. package/src/bridges.ts +0 -30
  142. package/src/chains/Chain.ts +0 -20
  143. package/src/chains/EVMChain.ts +0 -25
  144. package/src/chains/SolanaChain.ts +0 -8
  145. package/src/chains/base.ts +0 -129
  146. package/src/chains/index.ts +0 -4
  147. package/src/errors.ts +0 -15
  148. package/src/exchanges.ts +0 -27
  149. package/src/index.ts +0 -8
  150. package/src/step.ts +0 -192
  151. package/src/tokens/base.ts +0 -66
  152. package/src/tokens/index.ts +0 -2
  153. package/src/tokens/token.ts +0 -34
@@ -1,4 +0,0 @@
1
- export * from './Chain.js'
2
- export * from './EVMChain.js'
3
- export * from './SolanaChain.js'
4
- export * from './base.js'
package/src/errors.ts DELETED
@@ -1,15 +0,0 @@
1
- // Error codes emitted by the LI.FI API
2
- export enum ErrorCode {
3
- DefaultError = 1000,
4
- FailedToBuildTransactionError = 1001,
5
- NoQuoteError = 1002,
6
- NotFoundError = 1003,
7
- NotProcessableError = 1004,
8
- RateLimitError = 1005,
9
- ServerError = 1006,
10
- SlippageError = 1007,
11
- ThirdPartyError = 1008,
12
- TimeoutError = 1009,
13
- UnauthorizedError = 1010,
14
- ValidationError = 1011,
15
- }
package/src/exchanges.ts DELETED
@@ -1,27 +0,0 @@
1
- import type { StaticToken } from './tokens/token.js'
2
-
3
- export interface ExchangeAggregator {
4
- key: string
5
- name: string
6
- logoURI: string
7
- webUrl: string
8
- }
9
-
10
- export interface Exchange {
11
- key: string
12
- name: string
13
- chainId: number
14
- logoURI: string
15
- webUrl: string
16
- graph?: string
17
- tokenlistUrl: string
18
- routerAddress: string
19
- factoryAddress: string
20
- initCodeHash: string
21
- baseTokens: readonly StaticToken[]
22
- }
23
-
24
- export interface ExchangeDefinition {
25
- tool: string
26
- chains: number[]
27
- }
package/src/index.ts DELETED
@@ -1,8 +0,0 @@
1
- export * from './api.js'
2
- export * from './bridges.js'
3
- export * from './chains/index.js'
4
- export * from './errors.js'
5
- export * from './exchanges.js'
6
- export * from './quests.js'
7
- export * from './step.js'
8
- export * from './tokens/index.js'
package/src/step.ts DELETED
@@ -1,192 +0,0 @@
1
- import type { Substatus, TransactionRequest } from './api.js'
2
- import type { Token } from './tokens/index.js'
3
-
4
- export interface FeeCost {
5
- name: string
6
- description: string
7
- percentage: string
8
- token: Token
9
- amount: string
10
- amountUSD: string
11
- included: boolean
12
- }
13
-
14
- export interface GasCost {
15
- type: 'SUM' | 'APPROVE' | 'SEND' | 'FEE'
16
- price: string // suggested current standard price for chain
17
- estimate: string // estimate how much gas will be needed
18
- limit: string // suggested gas limit (estimate +25%)
19
- amount: string // estimate * price = amount of tokens that will be needed
20
- amountUSD: string // usd value of token amount
21
- token: Token // the used gas token
22
- }
23
-
24
- // ACTION
25
- export interface Action {
26
- fromChainId: number
27
- fromAmount: string
28
- fromToken: Token
29
- fromAddress?: string
30
-
31
- toChainId: number
32
- toToken: Token
33
- toAddress?: string
34
-
35
- slippage: number
36
- }
37
-
38
- // ESTIMATE
39
- export interface Estimate {
40
- tool: string
41
- fromAmount: string
42
- fromAmountUSD?: string
43
- toAmount: string
44
- toAmountMin: string
45
- toAmountUSD?: string
46
- approvalAddress: string
47
- feeCosts?: FeeCost[]
48
- // This is a list to account for approval gas costs and transaction gas costs. However, approval gas costs are not used at the moment
49
- gasCosts?: GasCost[]
50
- // estimated duration in seconds
51
- executionDuration: number
52
- }
53
-
54
- // EXECUTION
55
- export type Status =
56
- | 'NOT_STARTED'
57
- | 'STARTED'
58
- | 'ACTION_REQUIRED'
59
- | 'CHAIN_SWITCH_REQUIRED'
60
- | 'PENDING'
61
- | 'FAILED'
62
- | 'DONE'
63
- | 'RESUME'
64
- | 'CANCELLED'
65
-
66
- export type ProcessType =
67
- | 'TOKEN_ALLOWANCE'
68
- | 'SWITCH_CHAIN'
69
- | 'SWAP'
70
- | 'CROSS_CHAIN'
71
- | 'RECEIVING_CHAIN'
72
- | 'TRANSACTION'
73
-
74
- export interface Process {
75
- startedAt: number
76
- doneAt?: number
77
- failedAt?: number
78
- type: ProcessType
79
- status: Status
80
- substatus?: Substatus
81
- message?: string
82
- txHash?: string
83
- txLink?: string
84
- multisigTxHash?: string
85
- error?: {
86
- code: string | number
87
- message: string
88
- htmlMessage?: string
89
- }
90
-
91
- // additional information
92
- [key: string]: any
93
- }
94
-
95
- export interface Execution {
96
- status: Status
97
- process: Array<Process>
98
- fromAmount?: string
99
- toAmount?: string
100
- toToken?: Token
101
- feeCosts?: FeeCost[]
102
- gasCosts?: GasCost[]
103
- }
104
-
105
- export const emptyExecution: Execution = {
106
- status: 'NOT_STARTED',
107
- process: [],
108
- }
109
-
110
- // STEP
111
- export const _StepType = [
112
- 'lifi',
113
- 'swap',
114
- 'cross',
115
- 'protocol',
116
- 'custom',
117
- ] as const
118
- export type StepType = (typeof _StepType)[number]
119
- export type StepTool = string
120
- export type StepToolDetails = {
121
- key: string
122
- name: string
123
- logoURI: string
124
- }
125
-
126
- export interface StepBase {
127
- id: string
128
- type: StepType
129
- tool: StepTool
130
- toolDetails: StepToolDetails
131
- integrator?: string
132
- referrer?: string
133
- action: Action
134
- estimate?: Estimate
135
- transactionRequest?: TransactionRequest
136
- }
137
-
138
- export interface DestinationCallInfo {
139
- toContractAddress: string
140
- toContractCallData: string
141
- toFallbackAddress: string
142
- callDataGasLimit: string
143
- }
144
-
145
- export type CallAction = Action & DestinationCallInfo
146
-
147
- export interface SwapStep extends StepBase {
148
- type: 'swap'
149
- action: Action
150
- estimate: Estimate
151
- }
152
-
153
- export interface CrossStep extends StepBase {
154
- type: 'cross'
155
- action: Action
156
- estimate: Estimate
157
- }
158
-
159
- export interface ProtocolStep extends StepBase {
160
- type: 'protocol'
161
- action: Action
162
- estimate: Estimate
163
- }
164
-
165
- export interface CustomStep extends StepBase {
166
- type: 'custom'
167
- action: CallAction
168
- estimate: Estimate
169
- }
170
-
171
- export type Step = SwapStep | CrossStep | CustomStep | ProtocolStep
172
-
173
- export interface LiFiStep extends Omit<Step, 'type'> {
174
- type: 'lifi'
175
- includedSteps: Step[]
176
- }
177
-
178
- export function isSwapStep(step: Step): step is SwapStep {
179
- return step.type === 'swap'
180
- }
181
-
182
- export function isCrossStep(step: Step): step is CrossStep {
183
- return step.type === 'cross'
184
- }
185
-
186
- export function isProtocolStep(step: Step): step is ProtocolStep {
187
- return step.type === 'protocol'
188
- }
189
-
190
- export function isCustomStep(step: Step): step is CustomStep {
191
- return step.type === 'custom'
192
- }
@@ -1,66 +0,0 @@
1
- export enum CoinKey {
2
- ETH = 'ETH',
3
- MATIC = 'MATIC',
4
- BNB = 'BNB',
5
- DAI = 'DAI',
6
- FTM = 'FTM',
7
- OKT = 'OKT',
8
- AVAX = 'AVAX',
9
- HT = 'HT',
10
- ONE = 'ONE',
11
- FSN = 'FSN',
12
- MOVR = 'MOVR',
13
- EXP = 'EXP',
14
- TCH = 'TCH',
15
- UBQ = 'UBQ',
16
- META = 'META',
17
- DIODE = 'DIODE',
18
- CELO = 'CELO',
19
- FUSE = 'FUSE',
20
- TLOS = 'TLOS',
21
- CRO = 'CRO',
22
- SHIB = 'SHIB',
23
- L1 = 'L1',
24
- RBTC = 'RBTC',
25
- TBG = 'TBG',
26
- VLX = 'VLX',
27
- GLMR = 'GLMR',
28
- METIS = 'METIS',
29
- SOL = 'SOL',
30
- EVM = 'EVM',
31
-
32
- // Stable coins
33
- USDT = 'USDT',
34
- USDC = 'USDC',
35
- cbtUSDC = 'cbtUSDC', // cBridge testnet USDC
36
- cbtUSDT = 'cbtUSDT', // cBridge testnet USDT
37
- cbtWUSDT = 'cbtWUSDT', // cBridge testnet wrapped USDT
38
- cbtWUSDC = 'cbtWUSDC', // cBridge testnet wrapped USDC
39
- cbtCELR = 'cbtCELR', // cBridge testnet CELR
40
- BUSD = 'BUSD',
41
- USDCe = 'USDCe',
42
-
43
- // Testnet
44
- TEST = 'TEST',
45
- KAL = 'KAL',
46
- SDIODE = 'SDIODE',
47
- SPARK = 'SPARK',
48
- TRBTC = 'TRBTC',
49
- CXTT = 'CXTT', // Connext Test token
50
-
51
- // stargate testnet tokens
52
- sgMETIS = 'sgMETIS', // sgMETIS test token
53
- sgWOO = 'sgWOO', // sgWOO test token
54
- sgUSDT = 'sgUSDT', // sgUSDT test token
55
- sgBUSD = 'sgBUSD', // sgBUSD test token
56
- sgUSDC = 'sgUSDC', // sgUSDC test token
57
-
58
- // Other tokens
59
- WBTC = 'WBTC',
60
- WETH = 'WETH',
61
- SUSHI = 'SUSHI',
62
- DODO = 'DODO',
63
- MCB = 'MCB',
64
- CELR = 'CELR',
65
- IF = 'IF',
66
- }
@@ -1,2 +0,0 @@
1
- export * from './base.js'
2
- export * from './token.js'
@@ -1,34 +0,0 @@
1
- import { ChainId } from '../chains/base.js'
2
- import { CoinKey } from './base.js'
3
-
4
- export interface BaseToken {
5
- chainId: ChainId
6
- address: string
7
- }
8
-
9
- export interface StaticToken extends BaseToken {
10
- symbol: string
11
- decimals: number
12
- name: string
13
- coinKey?: CoinKey
14
- logoURI?: string
15
- }
16
-
17
- export interface Token extends StaticToken {
18
- priceUSD: string
19
- }
20
-
21
- export interface TokenAmount extends Token {
22
- amount?: bigint
23
- blockNumber?: bigint
24
- }
25
-
26
- export interface Coin {
27
- key: CoinKey
28
- name: string
29
- logoURI: string
30
- verified: boolean
31
- chains: {
32
- [ChainId: string]: StaticToken
33
- }
34
- }