@0xsquid/squid-types 0.1.6 → 0.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.
@@ -1,12 +1,12 @@
1
- import { StringOrNumber } from "../index";
2
1
  export declare enum ChainType {
3
2
  EVM = "evm",
4
3
  COSMOS = "cosmos"
5
4
  }
6
5
  export type BaseChain = {
7
- chainId: StringOrNumber;
6
+ chainId: string;
8
7
  chainType: ChainType;
9
- chainName: ChainName;
8
+ axelarChainName: ChainName;
9
+ networkIdentifier: NetworkIdentifier;
10
10
  networkName: string;
11
11
  rpc: string;
12
12
  internalRpc: string;
@@ -127,3 +127,43 @@ export declare enum ChainName {
127
127
  TERRA2 = "terra-2",
128
128
  UMEE = "umee"
129
129
  }
130
+ export declare enum NetworkIdentifier {
131
+ ETHEREUM = "Ethereum",
132
+ AVALANCHE = "Avalanche",
133
+ POLYGON = "Polygon",
134
+ MOONBEAM = "Moonbeam",
135
+ ARBITRUM = "Arbitrum",
136
+ AURORA = "Aurora",
137
+ BASE = "Base",
138
+ BINANCE = "Binance",
139
+ CELO = "Celo",
140
+ FANTOM = "Fantom",
141
+ FILECOIN = "Filecoin",
142
+ KAVA = "Kava",
143
+ OPTIMISM = "Optimism",
144
+ LINEA = "Linea",
145
+ AGORIC = "agoric",
146
+ ASSETMANTLE = "assetmantle",
147
+ AURA = "Aura",
148
+ AXELARNET = "Axelarnet",
149
+ CARBON = "Carbon",
150
+ COMDEX = "Comdex",
151
+ COSMOS = "Cosmoshub",
152
+ CRESCENT = "Crescent",
153
+ EMONEY = "E-money",
154
+ EVMOS = "Evmos",
155
+ FETCH = "Fetch",
156
+ INJECTIVE = "Injective",
157
+ JUNO = "Juno",
158
+ KI = "Ki",
159
+ KUJIRA = "Kujira",
160
+ OSMOSIS = "Osmosis",
161
+ REGEN = "Regen",
162
+ SEI = "Sei",
163
+ SECRET = "Secret",
164
+ SECRETSNIP = "Secret-snip",
165
+ STARGAZE = "Stargaze",
166
+ STRIDE = "Stride",
167
+ TERRA2 = "Terra-2",
168
+ UMEE = "Umee"
169
+ }
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ChainName = exports.ChainType = void 0;
3
+ exports.NetworkIdentifier = exports.ChainName = exports.ChainType = void 0;
4
4
  var ChainType;
5
5
  (function (ChainType) {
6
6
  ChainType["EVM"] = "evm";
@@ -51,4 +51,47 @@ var ChainName;
51
51
  ChainName["TERRA2"] = "terra-2";
52
52
  ChainName["UMEE"] = "umee";
53
53
  })(ChainName = exports.ChainName || (exports.ChainName = {}));
54
+ var NetworkIdentifier;
55
+ (function (NetworkIdentifier) {
56
+ // EVM
57
+ NetworkIdentifier["ETHEREUM"] = "Ethereum";
58
+ NetworkIdentifier["AVALANCHE"] = "Avalanche";
59
+ NetworkIdentifier["POLYGON"] = "Polygon";
60
+ NetworkIdentifier["MOONBEAM"] = "Moonbeam";
61
+ NetworkIdentifier["ARBITRUM"] = "Arbitrum";
62
+ NetworkIdentifier["AURORA"] = "Aurora";
63
+ NetworkIdentifier["BASE"] = "Base";
64
+ NetworkIdentifier["BINANCE"] = "Binance";
65
+ NetworkIdentifier["CELO"] = "Celo";
66
+ NetworkIdentifier["FANTOM"] = "Fantom";
67
+ NetworkIdentifier["FILECOIN"] = "Filecoin";
68
+ NetworkIdentifier["KAVA"] = "Kava";
69
+ NetworkIdentifier["OPTIMISM"] = "Optimism";
70
+ NetworkIdentifier["LINEA"] = "Linea";
71
+ // COSMOS
72
+ NetworkIdentifier["AGORIC"] = "agoric";
73
+ NetworkIdentifier["ASSETMANTLE"] = "assetmantle";
74
+ NetworkIdentifier["AURA"] = "Aura";
75
+ NetworkIdentifier["AXELARNET"] = "Axelarnet";
76
+ NetworkIdentifier["CARBON"] = "Carbon";
77
+ NetworkIdentifier["COMDEX"] = "Comdex";
78
+ NetworkIdentifier["COSMOS"] = "Cosmoshub";
79
+ NetworkIdentifier["CRESCENT"] = "Crescent";
80
+ NetworkIdentifier["EMONEY"] = "E-money";
81
+ NetworkIdentifier["EVMOS"] = "Evmos";
82
+ NetworkIdentifier["FETCH"] = "Fetch";
83
+ NetworkIdentifier["INJECTIVE"] = "Injective";
84
+ NetworkIdentifier["JUNO"] = "Juno";
85
+ NetworkIdentifier["KI"] = "Ki";
86
+ NetworkIdentifier["KUJIRA"] = "Kujira";
87
+ NetworkIdentifier["OSMOSIS"] = "Osmosis";
88
+ NetworkIdentifier["REGEN"] = "Regen";
89
+ NetworkIdentifier["SEI"] = "Sei";
90
+ NetworkIdentifier["SECRET"] = "Secret";
91
+ NetworkIdentifier["SECRETSNIP"] = "Secret-snip";
92
+ NetworkIdentifier["STARGAZE"] = "Stargaze";
93
+ NetworkIdentifier["STRIDE"] = "Stride";
94
+ NetworkIdentifier["TERRA2"] = "Terra-2";
95
+ NetworkIdentifier["UMEE"] = "Umee";
96
+ })(NetworkIdentifier = exports.NetworkIdentifier || (exports.NetworkIdentifier = {}));
54
97
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/chains/index.ts"],"names":[],"mappings":";;;AAEA,IAAY,SAGX;AAHD,WAAY,SAAS;IACnB,wBAAW,CAAA;IACX,8BAAiB,CAAA;AACnB,CAAC,EAHW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAGpB;AA2FD,IAAY,SA4CX;AA5CD,WAAY,SAAS;IACnB,kCAAqB,CAAA;IACrB,mCAAsB,CAAA;IACtB,8BAAiB,CAAA;IACjB,oCAAuB,CAAA;IACvB,0BAAa,CAAA;IACb,gCAAmB,CAAA;IACnB,0BAAa,CAAA;IACb,kCAAqB,CAAA;IACrB,qCAAwB,CAAA;IACxB,8BAAiB,CAAA;IACjB,kCAAqB,CAAA;IACrB,0BAAa,CAAA;IACb,kCAAqB,CAAA;IACrB,kCAAqB,CAAA;IACrB,gCAAmB,CAAA;IACnB,4BAAe,CAAA;IAEf,SAAS;IACT,8BAAiB,CAAA;IACjB,wCAA2B,CAAA;IAC3B,0BAAa,CAAA;IACb,oCAAuB,CAAA;IACvB,8BAAiB,CAAA;IACjB,8BAAiB,CAAA;IACjB,iCAAoB,CAAA;IACpB,kCAAqB,CAAA;IACrB,+BAAkB,CAAA;IAClB,4BAAe,CAAA;IACf,4BAAe,CAAA;IACf,oCAAuB,CAAA;IACvB,0BAAa,CAAA;IACb,sBAAS,CAAA;IACT,8BAAiB,CAAA;IACjB,gCAAmB,CAAA;IACnB,mCAAsB,CAAA;IACtB,4BAAe,CAAA;IACf,wBAAW,CAAA;IACX,8BAAiB,CAAA;IACjB,uCAA0B,CAAA;IAC1B,kCAAqB,CAAA;IACrB,8BAAiB,CAAA;IACjB,+BAAkB,CAAA;IAClB,0BAAa,CAAA;AACf,CAAC,EA5CW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QA4CpB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/chains/index.ts"],"names":[],"mappings":";;;AAAA,IAAY,SAGX;AAHD,WAAY,SAAS;IACnB,wBAAW,CAAA;IACX,8BAAiB,CAAA;AACnB,CAAC,EAHW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAGpB;AA4FD,IAAY,SA4CX;AA5CD,WAAY,SAAS;IACnB,kCAAqB,CAAA;IACrB,mCAAsB,CAAA;IACtB,8BAAiB,CAAA;IACjB,oCAAuB,CAAA;IACvB,0BAAa,CAAA;IACb,gCAAmB,CAAA;IACnB,0BAAa,CAAA;IACb,kCAAqB,CAAA;IACrB,qCAAwB,CAAA;IACxB,8BAAiB,CAAA;IACjB,kCAAqB,CAAA;IACrB,0BAAa,CAAA;IACb,kCAAqB,CAAA;IACrB,kCAAqB,CAAA;IACrB,gCAAmB,CAAA;IACnB,4BAAe,CAAA;IAEf,SAAS;IACT,8BAAiB,CAAA;IACjB,wCAA2B,CAAA;IAC3B,0BAAa,CAAA;IACb,oCAAuB,CAAA;IACvB,8BAAiB,CAAA;IACjB,8BAAiB,CAAA;IACjB,iCAAoB,CAAA;IACpB,kCAAqB,CAAA;IACrB,+BAAkB,CAAA;IAClB,4BAAe,CAAA;IACf,4BAAe,CAAA;IACf,oCAAuB,CAAA;IACvB,0BAAa,CAAA;IACb,sBAAS,CAAA;IACT,8BAAiB,CAAA;IACjB,gCAAmB,CAAA;IACnB,mCAAsB,CAAA;IACtB,4BAAe,CAAA;IACf,wBAAW,CAAA;IACX,8BAAiB,CAAA;IACjB,uCAA0B,CAAA;IAC1B,kCAAqB,CAAA;IACrB,8BAAiB,CAAA;IACjB,+BAAkB,CAAA;IAClB,0BAAa,CAAA;AACf,CAAC,EA5CW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QA4CpB;AAED,IAAY,iBA0CX;AA1CD,WAAY,iBAAiB;IAC3B,MAAM;IACN,0CAAqB,CAAA;IACrB,4CAAuB,CAAA;IACvB,wCAAmB,CAAA;IACnB,0CAAqB,CAAA;IACrB,0CAAqB,CAAA;IACrB,sCAAiB,CAAA;IACjB,kCAAa,CAAA;IACb,wCAAmB,CAAA;IACnB,kCAAa,CAAA;IACb,sCAAiB,CAAA;IACjB,0CAAqB,CAAA;IACrB,kCAAa,CAAA;IACb,0CAAqB,CAAA;IACrB,oCAAe,CAAA;IAEf,SAAS;IACT,sCAAiB,CAAA;IACjB,gDAA2B,CAAA;IAC3B,kCAAa,CAAA;IACb,4CAAuB,CAAA;IACvB,sCAAiB,CAAA;IACjB,sCAAiB,CAAA;IACjB,yCAAoB,CAAA;IACpB,0CAAqB,CAAA;IACrB,uCAAkB,CAAA;IAClB,oCAAe,CAAA;IACf,oCAAe,CAAA;IACf,4CAAuB,CAAA;IACvB,kCAAa,CAAA;IACb,8BAAS,CAAA;IACT,sCAAiB,CAAA;IACjB,wCAAmB,CAAA;IACnB,oCAAe,CAAA;IACf,gCAAW,CAAA;IACX,sCAAiB,CAAA;IACjB,+CAA0B,CAAA;IAC1B,0CAAqB,CAAA;IACrB,sCAAiB,CAAA;IACjB,uCAAkB,CAAA;IAClB,kCAAa,CAAA;AACf,CAAC,EA1CW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QA0C5B"}
@@ -1,13 +1,13 @@
1
- import { StringOrNumber } from "index";
2
1
  export interface Dex {
3
2
  name: DexName;
4
- chainId: StringOrNumber;
3
+ chainId: string;
5
4
  type: DexType;
6
5
  properties: Record<string, any>;
7
6
  }
8
7
  export declare enum DexName {
9
8
  APESWAP = "Apeswap",
10
9
  APESWAP_V3 = "Apeswap-v3",
10
+ BEAMSWAP = "Beamswap",
11
11
  CURVE_V2 = "Curve-v2",
12
12
  ELLIPSIS = "Ellipsis",
13
13
  EQUILIBRE = "Equilibre",
@@ -6,6 +6,7 @@ var DexName;
6
6
  (function (DexName) {
7
7
  DexName["APESWAP"] = "Apeswap";
8
8
  DexName["APESWAP_V3"] = "Apeswap-v3";
9
+ DexName["BEAMSWAP"] = "Beamswap";
9
10
  DexName["CURVE_V2"] = "Curve-v2";
10
11
  DexName["ELLIPSIS"] = "Ellipsis";
11
12
  DexName["EQUILIBRE"] = "Equilibre";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/dexes/index.ts"],"names":[],"mappings":";;;AASA,wBAAwB;AACxB,IAAY,OAqCX;AArCD,WAAY,OAAO;IACjB,8BAAmB,CAAA;IACnB,oCAAyB,CAAA;IACzB,gCAAqB,CAAA;IACrB,gCAAqB,CAAA;IACrB,kCAAuB,CAAA;IACvB,kCAAuB,CAAA;IACvB,sBAAW,CAAA;IACX,kCAAuB,CAAA;IACvB,wDAA6C,CAAA;IAC7C,kCAAuB,CAAA;IACvB,8BAAmB,CAAA;IACnB,sCAA2B,CAAA;IAC3B,4CAAiC,CAAA;IACjC,oDAAyC,CAAA;IACzC,gCAAqB,CAAA;IACrB,gCAAqB,CAAA;IACrB,kCAAuB,CAAA;IACvB,wCAA6B,CAAA;IAC7B,oCAAyB,CAAA;IACzB,oCAAyB,CAAA;IACzB,0CAA+B,CAAA;IAC/B,kDAAuC,CAAA;IACvC,kCAAuB,CAAA;IACvB,wCAA6B,CAAA;IAC7B,0BAAe,CAAA;IACf,gCAAqB,CAAA;IACrB,kCAAuB,CAAA;IACvB,8BAAmB,CAAA;IACnB,8BAAmB,CAAA;IACnB,oCAAyB,CAAA;IACzB,oCAAyB,CAAA;IACzB,oCAAyB,CAAA;IACzB,4BAAiB,CAAA;IACjB,kCAAuB,CAAA;IACvB,kCAAuB,CAAA;IACvB,wCAA6B,CAAA;AAC/B,CAAC,EArCW,OAAO,GAAP,eAAO,KAAP,eAAO,QAqClB;AAED,2BAA2B;AAC3B,IAAY,OAqBX;AArBD,WAAY,OAAO;IACjB,MAAM;IACN,8BAAmB,CAAA;IACnB,0BAAe,CAAA;IACf,sBAAW,CAAA;IACX,kDAAuC,CAAA;IACvC,gCAAqB,CAAA;IACrB,oDAAyC,CAAA;IACzC,4BAAiB,CAAA;IACjB,8BAAmB,CAAA;IACnB,8BAAmB,CAAA;IACnB,4BAAiB,CAAA;IACjB,oCAAyB,CAAA;IACzB,oCAAyB,CAAA;IACzB,SAAS;IACT,8BAAmB,CAAA;IAEnB,0DAA0D;IAC1D;;MAEE;AACJ,CAAC,EArBW,OAAO,GAAP,eAAO,KAAP,eAAO,QAqBlB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/dexes/index.ts"],"names":[],"mappings":";;;AAOA,wBAAwB;AACxB,IAAY,OAsCX;AAtCD,WAAY,OAAO;IACjB,8BAAmB,CAAA;IACnB,oCAAyB,CAAA;IACzB,gCAAqB,CAAA;IACrB,gCAAqB,CAAA;IACrB,gCAAqB,CAAA;IACrB,kCAAuB,CAAA;IACvB,kCAAuB,CAAA;IACvB,sBAAW,CAAA;IACX,kCAAuB,CAAA;IACvB,wDAA6C,CAAA;IAC7C,kCAAuB,CAAA;IACvB,8BAAmB,CAAA;IACnB,sCAA2B,CAAA;IAC3B,4CAAiC,CAAA;IACjC,oDAAyC,CAAA;IACzC,gCAAqB,CAAA;IACrB,gCAAqB,CAAA;IACrB,kCAAuB,CAAA;IACvB,wCAA6B,CAAA;IAC7B,oCAAyB,CAAA;IACzB,oCAAyB,CAAA;IACzB,0CAA+B,CAAA;IAC/B,kDAAuC,CAAA;IACvC,kCAAuB,CAAA;IACvB,wCAA6B,CAAA;IAC7B,0BAAe,CAAA;IACf,gCAAqB,CAAA;IACrB,kCAAuB,CAAA;IACvB,8BAAmB,CAAA;IACnB,8BAAmB,CAAA;IACnB,oCAAyB,CAAA;IACzB,oCAAyB,CAAA;IACzB,oCAAyB,CAAA;IACzB,4BAAiB,CAAA;IACjB,kCAAuB,CAAA;IACvB,kCAAuB,CAAA;IACvB,wCAA6B,CAAA;AAC/B,CAAC,EAtCW,OAAO,GAAP,eAAO,KAAP,eAAO,QAsClB;AAED,2BAA2B;AAC3B,IAAY,OAqBX;AArBD,WAAY,OAAO;IACjB,MAAM;IACN,8BAAmB,CAAA;IACnB,0BAAe,CAAA;IACf,sBAAW,CAAA;IACX,kDAAuC,CAAA;IACvC,gCAAqB,CAAA;IACrB,oDAAyC,CAAA;IACzC,4BAAiB,CAAA;IACjB,8BAAmB,CAAA;IACnB,8BAAmB,CAAA;IACnB,4BAAiB,CAAA;IACjB,oCAAyB,CAAA;IACzB,oCAAyB,CAAA;IACzB,SAAS;IACT,8BAAmB,CAAA;IAEnB,0DAA0D;IAC1D;;MAEE;AACJ,CAAC,EArBW,OAAO,GAAP,eAAO,KAAP,eAAO,QAqBlB"}
@@ -0,0 +1,26 @@
1
+ import { Token } from "tokens";
2
+ export declare enum FeeType {
3
+ AXELAR_FEE = "Axelar Fee",
4
+ GAS_RECEIVER_FEE = "Gas Receiver Fee",
5
+ EXPRESS_FEE = "Express Fee"
6
+ }
7
+ export declare enum GasCostType {
8
+ EXECUTE_CALL = "executeCall"
9
+ }
10
+ export type FeeCost = {
11
+ name: FeeType;
12
+ description: string;
13
+ percentage: string;
14
+ gasLimit?: number;
15
+ gasMultiplier?: number;
16
+ token: Token;
17
+ amount: string;
18
+ amountUSD: string;
19
+ };
20
+ export type GasCost = {
21
+ type: GasCostType;
22
+ token: Token;
23
+ gasLimit: string;
24
+ amount: string;
25
+ amountUSD: string;
26
+ };
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GasCostType = exports.FeeType = void 0;
4
+ var FeeType;
5
+ (function (FeeType) {
6
+ FeeType["AXELAR_FEE"] = "Axelar Fee";
7
+ FeeType["GAS_RECEIVER_FEE"] = "Gas Receiver Fee";
8
+ FeeType["EXPRESS_FEE"] = "Express Fee";
9
+ })(FeeType = exports.FeeType || (exports.FeeType = {}));
10
+ var GasCostType;
11
+ (function (GasCostType) {
12
+ GasCostType["EXECUTE_CALL"] = "executeCall";
13
+ })(GasCostType = exports.GasCostType || (exports.GasCostType = {}));
14
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fees/index.ts"],"names":[],"mappings":";;;AAEA,IAAY,OAIX;AAJD,WAAY,OAAO;IACjB,oCAAyB,CAAA;IACzB,gDAAqC,CAAA;IACrC,sCAA2B,CAAA;AAC7B,CAAC,EAJW,OAAO,GAAP,eAAO,KAAP,eAAO,QAIlB;AAED,IAAY,WAEX;AAFD,WAAY,WAAW;IACrB,2CAA4B,CAAA;AAC9B,CAAC,EAFW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAEtB"}
package/dist/index.d.ts CHANGED
@@ -1,4 +1,6 @@
1
1
  export * from "./chains";
2
2
  export * from "./dexes";
3
3
  export * from "./tokens";
4
- export type StringOrNumber = string | number;
4
+ export * from "./routes";
5
+ export * from "./fees";
6
+ export * from "./squid";
package/dist/index.js CHANGED
@@ -17,4 +17,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./chains"), exports);
18
18
  __exportStar(require("./dexes"), exports);
19
19
  __exportStar(require("./tokens"), exports);
20
+ __exportStar(require("./routes"), exports);
21
+ __exportStar(require("./fees"), exports);
22
+ __exportStar(require("./squid"), exports);
20
23
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,0CAAwB;AACxB,2CAAyB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,0CAAwB;AACxB,2CAAyB;AACzB,2CAAyB;AACzB,yCAAuB;AACvB,0CAAwB"}
@@ -0,0 +1,140 @@
1
+ import { ChainData, ChainType } from "chains";
2
+ import { Dex, DexName } from "dexes";
3
+ import { FeeCost, GasCost } from "fees";
4
+ import { ChainCall, EvmContractCall, SquidData } from "squid";
5
+ import { Token } from "tokens";
6
+ export declare enum ActionType {
7
+ SWAP = "swap",
8
+ WRAP = "wrap",
9
+ BRIDGE = "bridge",
10
+ IBC_TRANSFER = "ibc-transfer",
11
+ CUSTOM = "custom"
12
+ }
13
+ export declare enum ActionStage {
14
+ EVM_SOURCE = 0,
15
+ EVM_DESTINATION = 1,
16
+ EVM_TRANSIENT = 2,
17
+ EVM_ONLY = 3,
18
+ COSMOS_SOURCE = 4,
19
+ COSMOS_DESTINATION = 5,
20
+ COSMOS_TRANSIENT = 6,
21
+ COSMOS_ONLY = 7
22
+ }
23
+ export interface RouteRequest {
24
+ fromChain: string;
25
+ toChain: string;
26
+ fromToken: string;
27
+ toToken: string;
28
+ fromAmount: string;
29
+ fromAddress?: string;
30
+ toAddress?: string;
31
+ slippage: number;
32
+ quoteOnly?: boolean;
33
+ enableExpress?: boolean;
34
+ appendCustomContractCalls?: ChainCall[];
35
+ prefer?: DexName[];
36
+ receiveGasOnDestination?: boolean;
37
+ }
38
+ export interface Route {
39
+ actions: RouteAction[];
40
+ fromAmount: string;
41
+ toAmount: string;
42
+ toAmountMin: string;
43
+ sendAmount: string;
44
+ exchangeRate: string;
45
+ aggregatePriceImpact: string;
46
+ estimatedRouteDuration: number;
47
+ fromAmountUSD?: string;
48
+ toAmountUSD?: string;
49
+ isExpressSupported: boolean;
50
+ gasCosts: GasCost[];
51
+ feeCosts: FeeCost[];
52
+ }
53
+ export interface StageContext {
54
+ stage: ActionStage;
55
+ isSourceNative: boolean;
56
+ isDestinationNative: boolean;
57
+ isEvm: boolean;
58
+ isCosmos: boolean;
59
+ toAddress: string;
60
+ receiver: string;
61
+ isFirstAction?: boolean;
62
+ isLastAction?: boolean;
63
+ hasDestinationCalls?: boolean;
64
+ }
65
+ export interface RouteRequestPopulated {
66
+ fromChain: ChainData;
67
+ toChain: ChainData;
68
+ fromToken: Token;
69
+ toToken: Token;
70
+ fromAmount: string;
71
+ fromAddress?: string;
72
+ toAddress?: string;
73
+ slippage: number;
74
+ quoteOnly?: boolean;
75
+ enableForecall?: boolean;
76
+ enableExpress?: boolean;
77
+ prependCustomContractCalls?: ChainCall[];
78
+ appendCustomContractCalls?: ChainCall[];
79
+ prefer?: DexName[];
80
+ receiveGasOnDestination?: boolean;
81
+ }
82
+ export interface RouteResponse {
83
+ route: {
84
+ estimate: Estimate;
85
+ transactionRequest: SquidData;
86
+ params: RouteRequest;
87
+ };
88
+ }
89
+ export interface Estimate extends Route {
90
+ actions: SimpleRouteAction[];
91
+ }
92
+ export interface RouteAction {
93
+ type: ActionType;
94
+ chainType: ChainType;
95
+ fromChainId: string;
96
+ toChainId: string;
97
+ stage?: ActionStage;
98
+ details: SwapDetails | BridgeDetails | CustomCallDetails | IbcTransferDetails;
99
+ }
100
+ export interface SimpleRouteAction extends RouteAction {
101
+ details: SimpleSwapDetails | BridgeDetails | CustomCallDetails | IbcTransferDetails;
102
+ }
103
+ export interface BaseSwapDetails {
104
+ target: string;
105
+ path: string[];
106
+ swapType: string;
107
+ fromToken: Token;
108
+ toToken: Token;
109
+ fromAmount: string;
110
+ toAmount: string;
111
+ toAmountMin: string;
112
+ exchangeRate: string;
113
+ priceImpact: string;
114
+ isWrappedNative?: boolean;
115
+ dynamicSlippage?: number;
116
+ }
117
+ export interface SwapDetails extends BaseSwapDetails {
118
+ dex: Dex;
119
+ calls: ChainCall[];
120
+ custom?: Record<string, any>;
121
+ }
122
+ export interface SimpleSwapDetails extends BaseSwapDetails {
123
+ dexName: DexName;
124
+ }
125
+ export interface BridgeDetails {
126
+ target: string;
127
+ bridgeProvider: string;
128
+ bridgeName: string;
129
+ fromToken: Token;
130
+ toToken: Token;
131
+ sendAmount: string;
132
+ receiveAmount: string;
133
+ exchangeRate: string;
134
+ }
135
+ export interface CustomCallDetails {
136
+ name: string;
137
+ calls: EvmContractCall[];
138
+ }
139
+ export interface IbcTransferDetails {
140
+ }
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ActionStage = exports.ActionType = void 0;
4
+ var ActionType;
5
+ (function (ActionType) {
6
+ ActionType["SWAP"] = "swap";
7
+ ActionType["WRAP"] = "wrap";
8
+ ActionType["BRIDGE"] = "bridge";
9
+ ActionType["IBC_TRANSFER"] = "ibc-transfer";
10
+ ActionType["CUSTOM"] = "custom";
11
+ })(ActionType = exports.ActionType || (exports.ActionType = {}));
12
+ var ActionStage;
13
+ (function (ActionStage) {
14
+ ActionStage[ActionStage["EVM_SOURCE"] = 0] = "EVM_SOURCE";
15
+ ActionStage[ActionStage["EVM_DESTINATION"] = 1] = "EVM_DESTINATION";
16
+ ActionStage[ActionStage["EVM_TRANSIENT"] = 2] = "EVM_TRANSIENT";
17
+ ActionStage[ActionStage["EVM_ONLY"] = 3] = "EVM_ONLY";
18
+ ActionStage[ActionStage["COSMOS_SOURCE"] = 4] = "COSMOS_SOURCE";
19
+ ActionStage[ActionStage["COSMOS_DESTINATION"] = 5] = "COSMOS_DESTINATION";
20
+ ActionStage[ActionStage["COSMOS_TRANSIENT"] = 6] = "COSMOS_TRANSIENT";
21
+ ActionStage[ActionStage["COSMOS_ONLY"] = 7] = "COSMOS_ONLY";
22
+ })(ActionStage = exports.ActionStage || (exports.ActionStage = {}));
23
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/routes/index.ts"],"names":[],"mappings":";;;AAMA,IAAY,UAMX;AAND,WAAY,UAAU;IACpB,2BAAa,CAAA;IACb,2BAAa,CAAA;IACb,+BAAiB,CAAA;IACjB,2CAA6B,CAAA;IAC7B,+BAAiB,CAAA;AACnB,CAAC,EANW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAMrB;AAED,IAAY,WASX;AATD,WAAY,WAAW;IACrB,yDAAU,CAAA;IACV,mEAAe,CAAA;IACf,+DAAa,CAAA;IACb,qDAAQ,CAAA;IACR,+DAAa,CAAA;IACb,yEAAkB,CAAA;IAClB,qEAAgB,CAAA;IAChB,2DAAW,CAAA;AACb,CAAC,EATW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAStB"}
@@ -0,0 +1,48 @@
1
+ import { ChainType } from "chains";
2
+ export declare enum SquidRouteType {
3
+ CALL_BRIDGE_CALL = "CALL_BRIDGE_CALL",
4
+ CALL_BRIDGE = "CALL_BRIDGE",
5
+ BRIDGE_CALL = "BRIDGE_CALL",
6
+ BRIDGE = "BRIDGE",
7
+ EVM_ONLY = "EVM_ONLY",
8
+ COSMOS_ONLY = "COSMOS_ONLY"
9
+ }
10
+ export interface SquidData {
11
+ routeType: SquidRouteType;
12
+ target: string;
13
+ data: string;
14
+ value: string;
15
+ gasLimit?: string;
16
+ gasPrice?: string;
17
+ maxFeePerGas?: string;
18
+ maxPriorityFeePerGas?: string;
19
+ }
20
+ export type ChainCall = EvmContractCall | CosmosContractCall;
21
+ export interface EvmContractCall {
22
+ chainType: ChainType.EVM;
23
+ callType: SquidCallType;
24
+ target: string;
25
+ value?: string;
26
+ callData: string;
27
+ payload?: {
28
+ tokenAddress: string;
29
+ inputPos: number;
30
+ };
31
+ estimatedGas: string;
32
+ }
33
+ export declare enum SquidCallType {
34
+ DEFAULT = 0,
35
+ FULL_TOKEN_BALANCE = 1,
36
+ FULL_NATIVE_BALANCE = 2,
37
+ COLLECT_TOKEN_BALANCE = 3
38
+ }
39
+ export type SquidCallData = {
40
+ callType: SquidCallType;
41
+ target: string;
42
+ value: string;
43
+ callData: string;
44
+ payload: string;
45
+ };
46
+ export interface CosmosContractCall {
47
+ chainType: ChainType.COSMOS;
48
+ }
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SquidCallType = exports.SquidRouteType = void 0;
4
+ var SquidRouteType;
5
+ (function (SquidRouteType) {
6
+ SquidRouteType["CALL_BRIDGE_CALL"] = "CALL_BRIDGE_CALL";
7
+ SquidRouteType["CALL_BRIDGE"] = "CALL_BRIDGE";
8
+ SquidRouteType["BRIDGE_CALL"] = "BRIDGE_CALL";
9
+ SquidRouteType["BRIDGE"] = "BRIDGE";
10
+ SquidRouteType["EVM_ONLY"] = "EVM_ONLY";
11
+ SquidRouteType["COSMOS_ONLY"] = "COSMOS_ONLY";
12
+ })(SquidRouteType = exports.SquidRouteType || (exports.SquidRouteType = {}));
13
+ var SquidCallType;
14
+ (function (SquidCallType) {
15
+ SquidCallType[SquidCallType["DEFAULT"] = 0] = "DEFAULT";
16
+ SquidCallType[SquidCallType["FULL_TOKEN_BALANCE"] = 1] = "FULL_TOKEN_BALANCE";
17
+ SquidCallType[SquidCallType["FULL_NATIVE_BALANCE"] = 2] = "FULL_NATIVE_BALANCE";
18
+ SquidCallType[SquidCallType["COLLECT_TOKEN_BALANCE"] = 3] = "COLLECT_TOKEN_BALANCE";
19
+ })(SquidCallType = exports.SquidCallType || (exports.SquidCallType = {}));
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/squid/index.ts"],"names":[],"mappings":";;;AAEA,IAAY,cAOX;AAPD,WAAY,cAAc;IACxB,uDAAqC,CAAA;IACrC,6CAA2B,CAAA;IAC3B,6CAA2B,CAAA;IAC3B,mCAAiB,CAAA;IACjB,uCAAqB,CAAA;IACrB,6CAA2B,CAAA;AAC7B,CAAC,EAPW,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAOzB;AA4BD,IAAY,aAKX;AALD,WAAY,aAAa;IACvB,uDAAW,CAAA;IACX,6EAAsB,CAAA;IACtB,+EAAuB,CAAA;IACvB,mFAAyB,CAAA;AAC3B,CAAC,EALW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAKxB"}
@@ -1,7 +1,7 @@
1
- import { ChainType, StringOrNumber } from "../index";
1
+ import { ChainType } from "../index";
2
2
  export interface Token {
3
3
  type: ChainType;
4
- chainId: StringOrNumber;
4
+ chainId: string;
5
5
  name: string;
6
6
  address: string;
7
7
  symbol: string;
@@ -13,6 +13,7 @@ export interface Token {
13
13
  usdPrice?: number;
14
14
  ibcDenom?: string;
15
15
  bridgeOnly?: boolean;
16
+ isWrappedNative?: boolean;
16
17
  feeOnTransfer?: boolean;
17
18
  }
18
19
  export interface CosmosToken extends Token {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@0xsquid/squid-types",
3
- "version": "0.1.6",
3
+ "version": "0.1.8",
4
4
  "description": "JS and TS types relating to 0xsquid related projects.",
5
5
  "main": "dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -38,9 +38,9 @@
38
38
  "license": "Apache-2.0",
39
39
  "devDependencies": {
40
40
  "@typescript-eslint/eslint-plugin": "^5.59.8",
41
- "typescript": "^4.9.5",
42
41
  "eslint": "^8.41.0",
43
- "eslint-config-prettier": "^8.8.0"
42
+ "eslint-config-prettier": "^8.8.0",
43
+ "typescript": "^4.9.5"
44
44
  },
45
45
  "peerDependencies": {
46
46
  "typescript": ">=4.0.0"
@@ -64,5 +64,6 @@
64
64
  "npm": {
65
65
  "publish": false
66
66
  }
67
- }
67
+ },
68
+ "dependencies": {}
68
69
  }