@skip-go/client 0.4.5 → 0.5.1

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.
@@ -0,0 +1,947 @@
1
+ type AssetsRequestJSON = {
2
+ chain_ids?: string[];
3
+ native_only?: boolean;
4
+ include_no_metadata_assets?: boolean;
5
+ include_cw20_assets?: boolean;
6
+ include_evm_assets?: boolean;
7
+ include_svm_assets?: boolean;
8
+ only_testnets?: boolean;
9
+ /**
10
+ * @deprecated Use `chain_ids` instead
11
+ */
12
+ chain_id?: string;
13
+ };
14
+ type AssetsRequest = {
15
+ chainIDs?: string[];
16
+ nativeOnly?: boolean;
17
+ includeNoMetadataAssets?: boolean;
18
+ includeCW20Assets?: boolean;
19
+ includeEvmAssets?: boolean;
20
+ includeSvmAssets?: boolean;
21
+ onlyTestnets?: boolean;
22
+ /**
23
+ * @deprecated Use `chainIDs` instead
24
+ */
25
+ chainID?: string;
26
+ };
27
+ type AssetsFromSourceRequestJSON = {
28
+ source_asset_denom: string;
29
+ source_asset_chain_id: string;
30
+ allow_multi_tx?: boolean;
31
+ include_cw20_assets: boolean;
32
+ };
33
+ type AssetsFromSourceRequest = {
34
+ sourceAssetDenom: string;
35
+ sourceAssetChainID: string;
36
+ allowMultiTx?: boolean;
37
+ includeCW20Assets: boolean;
38
+ };
39
+ type AssetRecommendation = {
40
+ asset: Asset;
41
+ reason: Reason;
42
+ };
43
+ type AssetRecommendationJSON = {
44
+ asset: AssetJSON;
45
+ reason: Reason;
46
+ };
47
+ type AssetRecommendationRequestJSON = {
48
+ source_asset_denom: string;
49
+ source_asset_chain_id: string;
50
+ dest_chain_id: string;
51
+ reason?: Reason;
52
+ };
53
+ type AssetRecommendationRequest = {
54
+ sourceAssetDenom: string;
55
+ sourceAssetChainID: string;
56
+ destChainID: string;
57
+ reason?: Reason;
58
+ };
59
+ type RecommendAssetsRequestJSON = {
60
+ requests: AssetRecommendationRequestJSON[];
61
+ };
62
+ type RecommendAssetsRequest = {
63
+ requests: AssetRecommendationRequest[];
64
+ };
65
+ type RecommendAssetsResponseJSON = {
66
+ recommendations: AssetRecommendationJSON[];
67
+ recommendation_entries: RecommendationEntryJSON[];
68
+ };
69
+ type RecommendAssetsResponse = {
70
+ recommendations: AssetRecommendation[];
71
+ recommendationEntries: RecommendationEntry[];
72
+ };
73
+ type RecommendationEntryJSON = {
74
+ recommendations: AssetRecommendationJSON[];
75
+ error?: ApiError;
76
+ };
77
+ type RecommendationEntry = {
78
+ recommendations: AssetRecommendation[];
79
+ error?: ApiError;
80
+ };
81
+ type RouteRequestBaseJSON = {
82
+ source_asset_denom: string;
83
+ source_asset_chain_id: string;
84
+ dest_asset_denom: string;
85
+ dest_asset_chain_id: string;
86
+ cumulative_affiliate_fee_bps?: string;
87
+ swap_venue?: SwapVenueRequestJSON;
88
+ swap_venues?: SwapVenueRequestJSON[];
89
+ allow_unsafe?: boolean;
90
+ experimental_features?: ExperimentalFeature[];
91
+ bridges?: BridgeType[];
92
+ allow_multi_tx?: boolean;
93
+ smart_relay?: boolean;
94
+ smart_swap_options?: SmartSwapOptionsJSON;
95
+ allow_swaps?: boolean;
96
+ };
97
+ type RouteRequestGivenInJSON = RouteRequestBaseJSON & {
98
+ amount_in: string;
99
+ amount_out?: never;
100
+ };
101
+ type RouteRequestGivenOutJSON = RouteRequestBaseJSON & {
102
+ amount_in?: never;
103
+ amount_out: string;
104
+ };
105
+ type RouteRequestJSON = RouteRequestGivenInJSON | RouteRequestGivenOutJSON;
106
+ type MsgsDirectResponse = {
107
+ msgs: Msg[];
108
+ txs: Tx[];
109
+ route: RouteResponse;
110
+ warning?: MsgsWarning;
111
+ };
112
+ type MsgsDirectResponseJSON = {
113
+ msgs: MsgJSON[];
114
+ txs: TxJSON[];
115
+ route: RouteResponseJSON;
116
+ warning?: MsgsWarning;
117
+ };
118
+ type RouteRequestBase = {
119
+ sourceAssetDenom: string;
120
+ sourceAssetChainID: string;
121
+ destAssetDenom: string;
122
+ destAssetChainID: string;
123
+ cumulativeAffiliateFeeBPS?: string;
124
+ swapVenue?: SwapVenueRequest;
125
+ swapVenues?: SwapVenueRequest[];
126
+ allowUnsafe?: boolean;
127
+ experimentalFeatures?: ExperimentalFeature[];
128
+ bridges?: BridgeType[];
129
+ allowMultiTx?: boolean;
130
+ smartRelay?: boolean;
131
+ smartSwapOptions?: SmartSwapOptions;
132
+ allowSwaps?: boolean;
133
+ };
134
+ type RouteRequestGivenIn = RouteRequestBase & {
135
+ amountIn: string;
136
+ amountOut?: never;
137
+ };
138
+ type RouteRequestGivenOut = RouteRequestBase & {
139
+ amountIn?: never;
140
+ amountOut: string;
141
+ };
142
+ type RouteRequest = RouteRequestGivenIn | RouteRequestGivenOut;
143
+ type RouteWarningType = 'LOW_INFO_WARNING' | 'BAD_PRICE_WARNING';
144
+ type MsgsWarningType = 'INSUFFICIENT_GAS_AT_DEST_EOA' | 'INSUFFICIENT_GAS_AT_INTERMEDIATE';
145
+ type ExperimentalFeature = 'cctp' | 'hyperlane';
146
+ type RouteWarning = {
147
+ type: RouteWarningType;
148
+ message: string;
149
+ };
150
+ type MsgsWarning = {
151
+ type: MsgsWarningType;
152
+ message: string;
153
+ };
154
+ type FeeType = 'SMART_RELAY';
155
+ type EstimatedFee = {
156
+ feeType: FeeType;
157
+ bridgeID: BridgeType;
158
+ amount: string;
159
+ usdAmount: string;
160
+ originAsset: Asset;
161
+ chainID: string;
162
+ txIndex: number;
163
+ operationIndex?: number;
164
+ };
165
+ type EstimatedFeeJSON = {
166
+ fee_type: FeeType;
167
+ bridge_id: BridgeType;
168
+ amount: string;
169
+ usd_amount: string;
170
+ origin_asset: AssetJSON;
171
+ chain_id: string;
172
+ tx_index: number;
173
+ operation_index?: number;
174
+ };
175
+ type OperationJSON = {
176
+ transfer: TransferJSON;
177
+ tx_index: number;
178
+ amount_in: string;
179
+ amount_out: string;
180
+ } | {
181
+ bank_send: BankSendJSON;
182
+ tx_index: number;
183
+ amount_in: string;
184
+ amount_out: string;
185
+ } | {
186
+ swap: SwapJSON;
187
+ tx_index: number;
188
+ amount_in: string;
189
+ amount_out: string;
190
+ } | {
191
+ axelar_transfer: AxelarTransferJSON;
192
+ tx_index: number;
193
+ amount_in: string;
194
+ amount_out: string;
195
+ } | {
196
+ cctp_transfer: CCTPTransferJSON;
197
+ tx_index: number;
198
+ amount_in: string;
199
+ amount_out: string;
200
+ } | {
201
+ hyperlane_transfer: HyperlaneTransferJSON;
202
+ tx_index: number;
203
+ amount_in: string;
204
+ amount_out: string;
205
+ } | {
206
+ evm_swap: EvmSwapJSON;
207
+ tx_index: number;
208
+ amount_in: string;
209
+ amount_out: string;
210
+ } | {
211
+ op_init_transfer: OPInitTransferJSON;
212
+ tx_index: number;
213
+ amount_in: string;
214
+ amount_out: string;
215
+ };
216
+ type Operation = {
217
+ transfer: Transfer;
218
+ txIndex: number;
219
+ amountIn: string;
220
+ amountOut: string;
221
+ } | {
222
+ bankSend: BankSend;
223
+ txIndex: number;
224
+ amountIn: string;
225
+ amountOut: string;
226
+ } | {
227
+ swap: Swap;
228
+ txIndex: number;
229
+ amountIn: string;
230
+ amountOut: string;
231
+ } | {
232
+ axelarTransfer: AxelarTransfer;
233
+ txIndex: number;
234
+ amountIn: string;
235
+ amountOut: string;
236
+ } | {
237
+ cctpTransfer: CCTPTransfer;
238
+ txIndex: number;
239
+ amountIn: string;
240
+ amountOut: string;
241
+ } | {
242
+ hyperlaneTransfer: HyperlaneTransfer;
243
+ txIndex: number;
244
+ amountIn: string;
245
+ amountOut: string;
246
+ } | {
247
+ evmSwap: EvmSwap;
248
+ txIndex: number;
249
+ amountIn: string;
250
+ amountOut: string;
251
+ } | {
252
+ opInitTransfer: OPInitTransfer;
253
+ txIndex: number;
254
+ amountIn: string;
255
+ amountOut: string;
256
+ };
257
+ type RouteResponseJSON = {
258
+ source_asset_denom: string;
259
+ source_asset_chain_id: string;
260
+ dest_asset_denom: string;
261
+ dest_asset_chain_id: string;
262
+ amount_in: string;
263
+ amount_out: string;
264
+ operations: OperationJSON[];
265
+ chain_ids: string[];
266
+ required_chain_addresses: string[];
267
+ does_swap: boolean;
268
+ estimated_amount_out?: string;
269
+ swap_venues?: SwapVenueJSON[];
270
+ txs_required: number;
271
+ usd_amount_in?: string;
272
+ usd_amount_out?: string;
273
+ swap_price_impact_percent?: string;
274
+ warning?: RouteWarning;
275
+ estimated_fees: EstimatedFeeJSON[];
276
+ estimated_route_duration_seconds: number;
277
+ };
278
+ type RouteResponse = {
279
+ sourceAssetDenom: string;
280
+ sourceAssetChainID: string;
281
+ destAssetDenom: string;
282
+ destAssetChainID: string;
283
+ amountIn: string;
284
+ amountOut: string;
285
+ operations: Operation[];
286
+ chainIDs: string[];
287
+ requiredChainAddresses: string[];
288
+ doesSwap: boolean;
289
+ estimatedAmountOut?: string;
290
+ swapVenues?: SwapVenue[];
291
+ txsRequired: number;
292
+ usdAmountIn?: string;
293
+ usdAmountOut?: string;
294
+ swapPriceImpactPercent?: string;
295
+ warning?: RouteWarning;
296
+ estimatedFees: EstimatedFee[];
297
+ estimatedRouteDurationSeconds: number;
298
+ };
299
+ type MsgsRequestJSON = {
300
+ source_asset_denom: string;
301
+ source_asset_chain_id: string;
302
+ dest_asset_denom: string;
303
+ dest_asset_chain_id: string;
304
+ amount_in: string;
305
+ amount_out: string;
306
+ address_list: string[];
307
+ operations: OperationJSON[];
308
+ estimated_amount_out?: string;
309
+ slippage_tolerance_percent?: string;
310
+ affiliates?: AffiliateJSON[];
311
+ chain_ids_to_affiliates?: Record<string, ChainAffiliatesJSON>;
312
+ post_route_handler?: PostHandlerJSON;
313
+ enable_gas_warnings?: boolean;
314
+ };
315
+ type MsgsRequest = {
316
+ sourceAssetDenom: string;
317
+ sourceAssetChainID: string;
318
+ destAssetDenom: string;
319
+ destAssetChainID: string;
320
+ amountIn: string;
321
+ amountOut: string;
322
+ /**
323
+ * addresses should be in the same order with the `chainIDs` in the `route`
324
+ */
325
+ addressList: string[];
326
+ operations: Operation[];
327
+ estimatedAmountOut?: string;
328
+ slippageTolerancePercent?: string;
329
+ affiliates?: Affiliate[];
330
+ chainIDsToAffiliates?: Record<string, ChainAffiliates>;
331
+ postRouteHandler?: PostHandler;
332
+ enableGasWarnings?: boolean;
333
+ };
334
+ type MsgsDirectRequestJSON = {
335
+ source_asset_denom: string;
336
+ source_asset_chain_id: string;
337
+ dest_asset_denom: string;
338
+ dest_asset_chain_id: string;
339
+ amount_in: string;
340
+ amount_out: string;
341
+ chain_ids_to_addresses: {
342
+ [key: string]: string;
343
+ };
344
+ swap_venue?: SwapVenueJSON;
345
+ swap_venues?: SwapVenueJSON[];
346
+ slippage_tolerance_percent?: string;
347
+ timeout_seconds?: string;
348
+ affiliates?: AffiliateJSON[];
349
+ chain_ids_to_affiliates?: Record<string, ChainAffiliatesJSON>;
350
+ post_route_handler?: PostHandlerJSON;
351
+ allow_unsafe?: boolean;
352
+ experimental_features?: ExperimentalFeature[];
353
+ bridges?: BridgeType[];
354
+ allow_multi_tx?: boolean;
355
+ smart_relay?: boolean;
356
+ smart_swap_options?: SmartSwapOptionsJSON;
357
+ allow_swaps?: boolean;
358
+ enable_gas_warnings?: boolean;
359
+ };
360
+ type MsgsDirectRequest = {
361
+ sourceAssetDenom: string;
362
+ sourceAssetChainID: string;
363
+ destAssetDenom: string;
364
+ destAssetChainID: string;
365
+ amountIn: string;
366
+ amountOut: string;
367
+ chainIdsToAddresses: {
368
+ [key: string]: string;
369
+ };
370
+ swapVenue?: SwapVenue;
371
+ swapVenues?: SwapVenue[];
372
+ slippageTolerancePercent?: string;
373
+ timeoutSeconds?: string;
374
+ affiliates?: Affiliate[];
375
+ chainIDsToAffiliates?: Record<string, ChainAffiliates>;
376
+ postRouteHandler?: PostHandler;
377
+ allowUnsafe?: boolean;
378
+ experimentalFeatures?: ExperimentalFeature[];
379
+ bridges?: BridgeType[];
380
+ allowMultiTx?: boolean;
381
+ smartRelay?: boolean;
382
+ smartSwapOptions?: SmartSwapOptions;
383
+ allowSwaps?: boolean;
384
+ enableGasWarnings?: boolean;
385
+ };
386
+ type MsgJSON = {
387
+ multi_chain_msg: MultiChainMsgJSON;
388
+ } | {
389
+ evm_tx: EvmTxJSON;
390
+ } | {
391
+ svm_tx: SvmTxJSON;
392
+ };
393
+ type Msg = {
394
+ multiChainMsg: MultiChainMsg;
395
+ } | {
396
+ evmTx: EvmTx;
397
+ } | {
398
+ svmTx: SvmTx;
399
+ };
400
+ type TxJSON = {
401
+ cosmos_tx: CosmosTxJSON;
402
+ operations_indices: number[];
403
+ } | {
404
+ evm_tx: EvmTxJSON;
405
+ operations_indices: number[];
406
+ } | {
407
+ svm_tx: SvmTxJSON;
408
+ operations_indices: number[];
409
+ };
410
+ type Tx = {
411
+ cosmosTx: CosmosTx;
412
+ operationsIndices: number[];
413
+ } | {
414
+ evmTx: EvmTx;
415
+ operationsIndices: number[];
416
+ } | {
417
+ svmTx: SvmTx;
418
+ operationsIndices: number[];
419
+ };
420
+ type MsgsResponseJSON = {
421
+ msgs: MsgJSON[];
422
+ estimated_fees: EstimatedFeeJSON[];
423
+ txs: TxJSON[];
424
+ warning?: MsgsWarning;
425
+ };
426
+ type MsgsResponse = {
427
+ /**
428
+ * @deprecated Use `txs` instead
429
+ */
430
+ msgs: Msg[];
431
+ estimatedFees: EstimatedFee[];
432
+ txs: Tx[];
433
+ warning?: MsgsWarning;
434
+ };
435
+ type BridgeType = 'IBC' | 'AXELAR' | 'CCTP' | 'HYPERLANE' | 'OPINIT';
436
+ type AssetBetweenChainsJSON = {
437
+ asset_on_source: AssetJSON;
438
+ asset_on_dest: AssetJSON;
439
+ txs_required: number;
440
+ bridges: BridgeType[];
441
+ };
442
+ type AssetBetweenChains = {
443
+ assetOnSource: Asset;
444
+ assetOnDest: Asset;
445
+ txsRequired: number;
446
+ bridges: BridgeType[];
447
+ };
448
+ type AssetsBetweenChainsRequestJSON = {
449
+ source_chain_id: string;
450
+ dest_chain_id: string;
451
+ include_no_metadata_assets?: boolean;
452
+ include_cw20_assets?: boolean;
453
+ include_evm_assets?: boolean;
454
+ allow_multi_tx?: boolean;
455
+ };
456
+ type AssetsBetweenChainsRequest = {
457
+ sourceChainID: string;
458
+ destChainID: string;
459
+ includeNoMetadataAssets?: boolean;
460
+ includeCW20Assets?: boolean;
461
+ includeEvmAssets?: boolean;
462
+ allowMultiTx?: boolean;
463
+ };
464
+ type AssetsBetweenChainsResponseJSON = {
465
+ assets_between_chains: AssetBetweenChainsJSON[];
466
+ };
467
+ type AssetsBetweenChainsResponse = {
468
+ assetsBetweenChains: AssetBetweenChains[];
469
+ };
470
+ type BridgesResponseJSON = {
471
+ bridges: BridgeJSON[];
472
+ };
473
+ type BridgesResponse = {
474
+ bridges: Bridge[];
475
+ };
476
+ type BridgeJSON = {
477
+ id: BridgeType;
478
+ name: string;
479
+ logo_uri: string;
480
+ };
481
+ type Bridge = {
482
+ id: BridgeType;
483
+ name: string;
484
+ logoURI: string;
485
+ };
486
+
487
+ type IBCAddressJSON = {
488
+ address: string;
489
+ chain_id: string;
490
+ };
491
+ type IBCAddress = {
492
+ address: string;
493
+ chainID: string;
494
+ };
495
+ type AssetJSON = {
496
+ denom: string;
497
+ chain_id: string;
498
+ origin_denom: string;
499
+ origin_chain_id: string;
500
+ trace: string;
501
+ is_cw20: boolean;
502
+ is_evm: boolean;
503
+ is_svm: boolean;
504
+ symbol: string | undefined;
505
+ name: string | undefined;
506
+ logo_uri: string | undefined;
507
+ decimals: number | undefined;
508
+ token_contract: string | undefined;
509
+ description: string | undefined;
510
+ coingecko_id: string | undefined;
511
+ recommended_symbol: string | undefined;
512
+ };
513
+ type Asset = {
514
+ denom: string;
515
+ chainID: string;
516
+ originDenom: string;
517
+ originChainID: string;
518
+ trace: string;
519
+ isCW20: boolean;
520
+ isEVM: boolean;
521
+ isSVM: boolean;
522
+ symbol: string | undefined;
523
+ name: string | undefined;
524
+ logoURI: string | undefined;
525
+ decimals: number | undefined;
526
+ tokenContract: string | undefined;
527
+ description: string | undefined;
528
+ coingeckoID: string | undefined;
529
+ recommendedSymbol: string | undefined;
530
+ };
531
+ type TransferJSON = {
532
+ port: string;
533
+ channel: string;
534
+ from_chain_id: string;
535
+ to_chain_id: string;
536
+ pfm_enabled: boolean;
537
+ supports_memo: boolean;
538
+ denom_in: string;
539
+ denom_out: string;
540
+ fee_amount?: string;
541
+ usd_fee_amount?: string;
542
+ fee_asset?: AssetJSON;
543
+ bridge_id: BridgeType;
544
+ smart_relay: boolean;
545
+ /**
546
+ * @deprecated use `from_chain_id` and `to_chain_id` instead
547
+ */
548
+ chain_id: string;
549
+ /**
550
+ * @deprecated use `denom_out` instead
551
+ */
552
+ dest_denom: string;
553
+ };
554
+ type Transfer = {
555
+ port: string;
556
+ channel: string;
557
+ fromChainID: string;
558
+ toChainID: string;
559
+ pfmEnabled: boolean;
560
+ supportsMemo: boolean;
561
+ denomIn: string;
562
+ denomOut: string;
563
+ feeAmount?: string;
564
+ usdFeeAmount?: string;
565
+ feeAsset?: Asset;
566
+ bridgeID: BridgeType;
567
+ smartRelay: boolean;
568
+ /**
569
+ * @deprecated use `fromChainID` and `toChainID` instead
570
+ */
571
+ chainID: string;
572
+ /**
573
+ * @deprecated use `denomOut` instead
574
+ */
575
+ destDenom: string;
576
+ };
577
+ type AxelarTransferJSON = {
578
+ from_chain: string;
579
+ from_chain_id: string;
580
+ to_chain: string;
581
+ to_chain_id: string;
582
+ asset: string;
583
+ should_unwrap: boolean;
584
+ denom_in: string;
585
+ denom_out: string;
586
+ fee_amount: string;
587
+ usd_fee_amount: string;
588
+ fee_asset: AssetJSON;
589
+ is_testnet: boolean;
590
+ ibc_transfer_to_axelar?: TransferJSON;
591
+ bridge_id: BridgeType;
592
+ smart_relay: boolean;
593
+ };
594
+ type AxelarTransfer = {
595
+ fromChain: string;
596
+ fromChainID: string;
597
+ toChain: string;
598
+ toChainID: string;
599
+ asset: string;
600
+ shouldUnwrap: boolean;
601
+ denomIn: string;
602
+ denomOut: string;
603
+ feeAmount: string;
604
+ usdFeeAmount: string;
605
+ feeAsset: Asset;
606
+ isTestnet: boolean;
607
+ ibcTransferToAxelar?: Transfer;
608
+ bridgeID: BridgeType;
609
+ smartRelay: boolean;
610
+ };
611
+ type BankSendJSON = {
612
+ chain_id: string;
613
+ denom: string;
614
+ };
615
+ type BankSend = {
616
+ chainID: string;
617
+ denom: string;
618
+ };
619
+ type MultiChainMsgJSON = {
620
+ chain_id: string;
621
+ path: string[];
622
+ msg: string;
623
+ msg_type_url: string;
624
+ };
625
+ type MultiChainMsg = {
626
+ chainID: string;
627
+ path: string[];
628
+ msg: string;
629
+ msgTypeURL: string;
630
+ };
631
+ type CosmosMsgJSON = {
632
+ msg: string;
633
+ msg_type_url: string;
634
+ };
635
+ type CosmosMsg = {
636
+ msg: string;
637
+ msgTypeURL: string;
638
+ };
639
+ type CosmosTxJSON = {
640
+ chain_id: string;
641
+ path: string[];
642
+ msgs: CosmosMsgJSON[];
643
+ signer_address: string;
644
+ };
645
+ type CosmosTx = {
646
+ chainID: string;
647
+ path: string[];
648
+ msgs: CosmosMsg[];
649
+ signerAddress: string;
650
+ };
651
+ type CCTPTransferJSON = {
652
+ from_chain_id: string;
653
+ to_chain_id: string;
654
+ burn_token: string;
655
+ bridge_id: BridgeType;
656
+ denom_in: string;
657
+ denom_out: string;
658
+ smart_relay: boolean;
659
+ };
660
+ type CCTPTransfer = {
661
+ fromChainID: string;
662
+ toChainID: string;
663
+ burnToken: string;
664
+ bridgeID: BridgeType;
665
+ denomIn: string;
666
+ denomOut: string;
667
+ smartRelay: boolean;
668
+ };
669
+ type HyperlaneTransferJSON = {
670
+ from_chain_id: string;
671
+ to_chain_id: string;
672
+ denom_in: string;
673
+ denom_out: string;
674
+ hyperlane_contract_address: string;
675
+ fee_amount: string;
676
+ usd_fee_amount?: string;
677
+ fee_asset: AssetJSON;
678
+ bridge_id: BridgeType;
679
+ smart_relay: boolean;
680
+ };
681
+ type HyperlaneTransfer = {
682
+ fromChainID: string;
683
+ toChainID: string;
684
+ denomIn: string;
685
+ denomOut: string;
686
+ hyperlaneContractAddress: string;
687
+ feeAmount: string;
688
+ usdFeeAmount?: string;
689
+ feeAsset: Asset;
690
+ bridgeID: BridgeType;
691
+ smartRelay: boolean;
692
+ };
693
+ type OPInitTransferJSON = {
694
+ from_chain_id: string;
695
+ to_chain_id: string;
696
+ denom_in: string;
697
+ denom_out: string;
698
+ op_init_bridge_id: string;
699
+ bridge_id: BridgeType;
700
+ smart_relay: boolean;
701
+ };
702
+ type OPInitTransfer = {
703
+ fromChainID: string;
704
+ toChainID: string;
705
+ denomIn: string;
706
+ denomOut: string;
707
+ opInitBridgeID: string;
708
+ bridgeID: BridgeType;
709
+ smartRelay: boolean;
710
+ };
711
+ type SwapVenueJSON = {
712
+ name: string;
713
+ chain_id: string;
714
+ logo_uri: string;
715
+ };
716
+ type SwapVenue = {
717
+ name: string;
718
+ chainID: string;
719
+ logoUri: string;
720
+ };
721
+ type SwapVenueRequestJSON = {
722
+ name: string;
723
+ chain_id: string;
724
+ };
725
+ type SwapVenueRequest = {
726
+ name: string;
727
+ chainID: string;
728
+ };
729
+ type SwapOperationJSON = {
730
+ pool: string;
731
+ denom_in: string;
732
+ denom_out: string;
733
+ interface?: string;
734
+ };
735
+ type SwapOperation = {
736
+ pool: string;
737
+ denomIn: string;
738
+ denomOut: string;
739
+ interface?: string;
740
+ };
741
+ type SwapExactCoinOutJSON = {
742
+ swap_venue: SwapVenueJSON;
743
+ swap_operations: SwapOperationJSON[];
744
+ swap_amount_out: string;
745
+ price_impact_percent?: string;
746
+ };
747
+ type SwapExactCoinOut = {
748
+ swapVenue: SwapVenue;
749
+ swapOperations: SwapOperation[];
750
+ swapAmountOut: string;
751
+ priceImpactPercent?: string;
752
+ };
753
+ type SwapExactCoinInJSON = {
754
+ swap_venue: SwapVenueJSON;
755
+ swap_operations: SwapOperationJSON[];
756
+ swap_amount_in?: string;
757
+ price_impact_percent?: string;
758
+ };
759
+ type SwapExactCoinIn = {
760
+ swapVenue: SwapVenue;
761
+ swapOperations: SwapOperation[];
762
+ swapAmountIn?: string;
763
+ priceImpactPercent?: string;
764
+ };
765
+ type SwapRouteJSON = {
766
+ swap_amount_in: string;
767
+ denom_in: string;
768
+ swap_operations: SwapOperationJSON[];
769
+ };
770
+ type SwapRoute = {
771
+ swapAmountIn: string;
772
+ denomIn: string;
773
+ swapOperations: SwapOperation[];
774
+ };
775
+ type SmartSwapExactCoinInJSON = {
776
+ swap_venue: SwapVenueJSON;
777
+ swap_routes: SwapRouteJSON[];
778
+ };
779
+ type SmartSwapExactCoinIn = {
780
+ swapVenue: SwapVenue;
781
+ swapRoutes: SwapRoute[];
782
+ };
783
+ type SwapJSON = ({
784
+ swap_in: SwapExactCoinInJSON;
785
+ } | {
786
+ swap_out: SwapExactCoinOutJSON;
787
+ } | {
788
+ smart_swap_in: SmartSwapExactCoinInJSON;
789
+ }) & {
790
+ estimated_affiliate_fee?: string;
791
+ from_chain_id: string;
792
+ chain_id: string;
793
+ denom_in: string;
794
+ denom_out: string;
795
+ swap_venues: SwapVenueJSON[];
796
+ };
797
+ type Swap = ({
798
+ swapIn: SwapExactCoinIn;
799
+ } | {
800
+ swapOut: SwapExactCoinOut;
801
+ } | {
802
+ smartSwapIn: SmartSwapExactCoinIn;
803
+ }) & {
804
+ estimatedAffiliateFee?: string;
805
+ fromChainID: string;
806
+ chainID: string;
807
+ denomIn: string;
808
+ denomOut: string;
809
+ swapVenues: SwapVenue[];
810
+ };
811
+ type EvmSwapJSON = {
812
+ input_token: string;
813
+ amount_in: string;
814
+ swap_calldata: string;
815
+ amount_out: string;
816
+ from_chain_id: string;
817
+ denom_in: string;
818
+ denom_out: string;
819
+ swap_venues: SwapVenueJSON[];
820
+ };
821
+ type EvmSwap = {
822
+ inputToken: string;
823
+ amountIn: string;
824
+ swapCalldata: string;
825
+ amountOut: string;
826
+ fromChainID: string;
827
+ denomIn: string;
828
+ denomOut: string;
829
+ swapVenues: SwapVenue[];
830
+ };
831
+ type AffiliateJSON = {
832
+ basis_points_fee: string;
833
+ address: string;
834
+ };
835
+ type Affiliate = {
836
+ basisPointsFee: string;
837
+ address: string;
838
+ };
839
+ type ChainAffiliatesJSON = {
840
+ affiliates: AffiliateJSON[];
841
+ };
842
+ type ChainAffiliates = {
843
+ affiliates: Affiliate[];
844
+ };
845
+ type Reason = "UNKNOWN" | "BASE_TOKEN" | "MOST_LIQUID" | "DIRECT";
846
+ type CosmWasmContractMsgJSON = {
847
+ contract_address: string;
848
+ msg: string;
849
+ };
850
+ type CosmWasmContractMsg = {
851
+ contractAddress: string;
852
+ msg: string;
853
+ };
854
+ type AutopilotAction = "LIQUID_STAKE" | "CLAIM";
855
+ type AutopilotMsg = {
856
+ receiver: string;
857
+ action: AutopilotAction;
858
+ };
859
+ type PostHandlerJSON = {
860
+ wasm_msg: CosmWasmContractMsgJSON;
861
+ } | {
862
+ autopilot_msg: AutopilotMsg;
863
+ };
864
+ type PostHandler = {
865
+ wasmMsg: CosmWasmContractMsg;
866
+ } | {
867
+ autopilotMsg: AutopilotMsg;
868
+ };
869
+ type ERC20ApprovalJSON = {
870
+ token_contract: string;
871
+ spender: string;
872
+ amount: string;
873
+ };
874
+ type ERC20Approval = {
875
+ tokenContract: string;
876
+ spender: string;
877
+ amount: string;
878
+ };
879
+ type SvmTxJSON = {
880
+ chain_id: string;
881
+ tx: string;
882
+ signer_address: string;
883
+ };
884
+ type SvmTx = {
885
+ chainID: string;
886
+ tx: string;
887
+ signerAddress: string;
888
+ };
889
+ type EvmTxJSON = {
890
+ chain_id: string;
891
+ to: string;
892
+ value: string;
893
+ data: string;
894
+ required_erc20_approvals: ERC20ApprovalJSON[];
895
+ signer_address: string;
896
+ };
897
+ type EvmTx = {
898
+ chainID: string;
899
+ to: string;
900
+ value: string;
901
+ data: string;
902
+ requiredERC20Approvals: ERC20Approval[];
903
+ signerAddress: string;
904
+ };
905
+ type DenomWithChainIDJSON = {
906
+ denom: string;
907
+ chain_id: string;
908
+ };
909
+ type DenomWithChainID = {
910
+ denom: string;
911
+ chainID: string;
912
+ };
913
+ type ApiError = {
914
+ message: string;
915
+ };
916
+ type AssetOrErrorJSON = {
917
+ asset: AssetJSON;
918
+ } | {
919
+ error: ApiError;
920
+ };
921
+ type AssetOrError = {
922
+ asset: Asset;
923
+ } | {
924
+ error: ApiError;
925
+ };
926
+ type OriginAssetsRequestJSON = {
927
+ assets: DenomWithChainIDJSON[];
928
+ };
929
+ type OriginAssetsRequest = {
930
+ assets: DenomWithChainID[];
931
+ };
932
+ type OriginAssetsResponseJSON = {
933
+ origin_assets: AssetOrErrorJSON[];
934
+ };
935
+ type OriginAssetsResponse = {
936
+ originAssets: AssetOrError[];
937
+ };
938
+ type SmartSwapOptionsJSON = {
939
+ split_routes?: boolean;
940
+ evm_swaps?: boolean;
941
+ };
942
+ type SmartSwapOptions = {
943
+ splitRoutes?: boolean;
944
+ evmSwaps?: boolean;
945
+ };
946
+
947
+ export type { SmartSwapExactCoinIn as $, AssetsRequest as A, Bridge as B, CosmosMsg as C, DenomWithChainID as D, EvmTx as E, CCTPTransfer as F, HyperlaneTransfer as G, HyperlaneTransferJSON as H, IBCAddressJSON as I, OPInitTransfer as J, SwapVenueJSON as K, SwapVenueRequestJSON as L, MultiChainMsg as M, SwapVenueRequest as N, OPInitTransferJSON as O, SwapOperationJSON as P, SwapOperation as Q, RouteResponse as R, SvmTx as S, Tx as T, SwapExactCoinOutJSON as U, SwapExactCoinOut as V, SwapExactCoinInJSON as W, SwapExactCoinIn as X, SwapRouteJSON as Y, SwapRoute as Z, SmartSwapExactCoinInJSON as _, Asset as a, BridgeType as a$, SwapJSON as a0, Swap as a1, EvmSwapJSON as a2, EvmSwap as a3, AffiliateJSON as a4, Affiliate as a5, ChainAffiliatesJSON as a6, ChainAffiliates as a7, Reason as a8, CosmWasmContractMsgJSON as a9, RecommendAssetsResponse as aA, RecommendationEntryJSON as aB, RouteRequestBaseJSON as aC, RouteRequestGivenInJSON as aD, RouteRequestGivenOutJSON as aE, RouteRequestJSON as aF, MsgsDirectResponseJSON as aG, RouteRequestBase as aH, RouteRequestGivenIn as aI, RouteRequestGivenOut as aJ, RouteWarningType as aK, MsgsWarningType as aL, ExperimentalFeature as aM, RouteWarning as aN, MsgsWarning as aO, FeeType as aP, EstimatedFee as aQ, EstimatedFeeJSON as aR, OperationJSON as aS, Operation as aT, RouteResponseJSON as aU, MsgsRequestJSON as aV, MsgsDirectRequestJSON as aW, MsgJSON as aX, Msg as aY, TxJSON as aZ, MsgsResponseJSON as a_, CosmWasmContractMsg as aa, AutopilotAction as ab, AutopilotMsg as ac, PostHandlerJSON as ad, PostHandler as ae, ERC20ApprovalJSON as af, ERC20Approval as ag, SvmTxJSON as ah, EvmTxJSON as ai, DenomWithChainIDJSON as aj, ApiError as ak, AssetOrErrorJSON as al, OriginAssetsRequestJSON as am, OriginAssetsRequest as an, OriginAssetsResponseJSON as ao, OriginAssetsResponse as ap, SmartSwapOptionsJSON as aq, SmartSwapOptions as ar, AssetsRequestJSON as as, AssetsFromSourceRequestJSON as at, AssetRecommendation as au, AssetRecommendationJSON as av, AssetRecommendationRequestJSON as aw, RecommendAssetsRequestJSON as ax, RecommendAssetsRequest as ay, RecommendAssetsResponseJSON as az, AssetsFromSourceRequest as b, AssetBetweenChainsJSON as b0, AssetsBetweenChainsRequestJSON as b1, AssetsBetweenChainsResponseJSON as b2, AssetsBetweenChainsResponse as b3, BridgesResponseJSON as b4, BridgesResponse as b5, BridgeJSON as b6, AssetsBetweenChainsRequest as c, AssetBetweenChains as d, MsgsRequest as e, MsgsResponse as f, RouteRequest as g, MsgsDirectRequest as h, MsgsDirectResponse as i, AssetRecommendationRequest as j, RecommendationEntry as k, AssetOrError as l, SwapVenue as m, IBCAddress as n, AssetJSON as o, TransferJSON as p, Transfer as q, AxelarTransferJSON as r, AxelarTransfer as s, BankSendJSON as t, BankSend as u, MultiChainMsgJSON as v, CosmosMsgJSON as w, CosmosTxJSON as x, CosmosTx as y, CCTPTransferJSON as z };