@ember-finance/sdk 2.10.3 → 2.11.0-ccip.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 (42) hide show
  1. package/dist/src/abis/AtomicLiquidity.json +36 -46
  2. package/dist/src/abis/CcipRouter.json +58 -0
  3. package/dist/src/abis/index.d.ts +3 -1
  4. package/dist/src/abis/index.js +4 -1
  5. package/dist/src/api/v2/apis/vaults-api.d.ts +42 -0
  6. package/dist/src/api/v2/apis/vaults-api.js +87 -0
  7. package/dist/src/api/v2/models/chain.d.ts +6 -0
  8. package/dist/src/api/v2/models/coin-placement.d.ts +113 -0
  9. package/dist/src/api/v2/models/coin-placement.js +17 -0
  10. package/dist/src/api/v2/models/coin-placements-response.d.ts +25 -0
  11. package/dist/src/api/v2/models/coin-placements-response.js +14 -0
  12. package/dist/src/api/v2/models/evm-ccip-lane.d.ts +73 -0
  13. package/dist/src/api/v2/models/evm-ccip-lane.js +14 -0
  14. package/dist/src/api/v2/models/evm-ccip-rate-limits.d.ts +36 -0
  15. package/dist/src/api/v2/models/evm-ccip-rate-limits.js +14 -0
  16. package/dist/src/api/v2/models/evm-ccip-token-pool.d.ts +122 -0
  17. package/dist/src/api/v2/models/evm-ccip-token-pool.js +17 -0
  18. package/dist/src/api/v2/models/evm-contracts.d.ts +9 -0
  19. package/dist/src/api/v2/models/evm-oftadapter.d.ts +11 -0
  20. package/dist/src/api/v2/models/evm-oftadapter.js +4 -1
  21. package/dist/src/api/v2/models/evm-oftpeer.d.ts +12 -0
  22. package/dist/src/api/v2/models/index.d.ts +6 -0
  23. package/dist/src/api/v2/models/index.js +6 -0
  24. package/dist/src/api/v2/models/instant-withdraw-config.d.ts +21 -2
  25. package/dist/src/api/v2/models/poc-report-protocol-asset.d.ts +60 -0
  26. package/dist/src/api/v2/models/poc-report-protocol-asset.js +18 -0
  27. package/dist/src/api/v2/models/poc-report-protocol.d.ts +13 -0
  28. package/dist/src/api/v2/models/transparency-row.d.ts +1 -1
  29. package/dist/src/evm-vaults/interfaces/index.d.ts +39 -0
  30. package/dist/src/evm-vaults/on-chain-calls/tx-builder.d.ts +17 -11
  31. package/dist/src/evm-vaults/on-chain-calls/tx-builder.js +39 -12
  32. package/dist/src/evm-vaults/on-chain-calls/user.d.ts +35 -31
  33. package/dist/src/evm-vaults/on-chain-calls/user.js +69 -43
  34. package/dist/src/evm-vaults/on-chain-calls/vault-reader.d.ts +14 -1
  35. package/dist/src/evm-vaults/on-chain-calls/vault-reader.js +30 -0
  36. package/dist/src/evm-vaults/utils/ccip.d.ts +23 -0
  37. package/dist/src/evm-vaults/utils/ccip.js +32 -0
  38. package/dist/src/evm-vaults/utils/deployment-parser.d.ts +27 -1
  39. package/dist/src/evm-vaults/utils/deployment-parser.js +37 -0
  40. package/dist/src/evm-vaults/utils/index.d.ts +1 -0
  41. package/dist/src/evm-vaults/utils/index.js +1 -0
  42. package/package.json +2 -6
@@ -0,0 +1,58 @@
1
+ {
2
+ "abi": [
3
+ {
4
+ "type": "function",
5
+ "name": "getFee",
6
+ "stateMutability": "view",
7
+ "inputs": [
8
+ { "name": "destChainSelector", "type": "uint64" },
9
+ {
10
+ "name": "message",
11
+ "type": "tuple",
12
+ "components": [
13
+ { "name": "receiver", "type": "bytes" },
14
+ { "name": "data", "type": "bytes" },
15
+ {
16
+ "name": "tokenAmounts",
17
+ "type": "tuple[]",
18
+ "components": [
19
+ { "name": "token", "type": "address" },
20
+ { "name": "amount", "type": "uint256" }
21
+ ]
22
+ },
23
+ { "name": "feeToken", "type": "address" },
24
+ { "name": "extraArgs", "type": "bytes" }
25
+ ]
26
+ }
27
+ ],
28
+ "outputs": [{ "name": "fee", "type": "uint256" }]
29
+ },
30
+ {
31
+ "type": "function",
32
+ "name": "ccipSend",
33
+ "stateMutability": "payable",
34
+ "inputs": [
35
+ { "name": "destinationChainSelector", "type": "uint64" },
36
+ {
37
+ "name": "message",
38
+ "type": "tuple",
39
+ "components": [
40
+ { "name": "receiver", "type": "bytes" },
41
+ { "name": "data", "type": "bytes" },
42
+ {
43
+ "name": "tokenAmounts",
44
+ "type": "tuple[]",
45
+ "components": [
46
+ { "name": "token", "type": "address" },
47
+ { "name": "amount", "type": "uint256" }
48
+ ]
49
+ },
50
+ { "name": "feeToken", "type": "address" },
51
+ { "name": "extraArgs", "type": "bytes" }
52
+ ]
53
+ }
54
+ ],
55
+ "outputs": [{ "name": "messageId", "type": "bytes32" }]
56
+ }
57
+ ]
58
+ }
@@ -3,6 +3,7 @@ import EmberProtocolConfigABI from "./EmberProtocolConfig.json";
3
3
  import ERC20TokenABI from "./ERC20Token.json";
4
4
  import EmberVaultOFTAdapterABI from "./EmberVaultMintBurnOFTAdapter.json";
5
5
  import OpenCoverVaultABI from "./OpenCoverVault.json";
6
+ import CcipRouterABI from "./CcipRouter.json";
6
7
  import { Interface } from "ethers";
7
8
  declare const EmberVault: Interface;
8
9
  declare const EmberProtocolConfig: Interface;
@@ -10,4 +11,5 @@ declare const ERC20Token: Interface;
10
11
  declare const EmberETHVault: Interface;
11
12
  declare const EmberVaultOFTAdapter: Interface;
12
13
  declare const OpenCoverVault: Interface;
13
- export { EmberVaultABI, EmberProtocolConfigABI, ERC20TokenABI, EmberVault, EmberProtocolConfig, ERC20Token, EmberETHVault, EmberVaultOFTAdapterABI, EmberVaultOFTAdapter, OpenCoverVaultABI, OpenCoverVault };
14
+ declare const CcipRouter: Interface;
15
+ export { EmberVaultABI, EmberProtocolConfigABI, ERC20TokenABI, EmberVault, EmberProtocolConfig, ERC20Token, EmberETHVault, EmberVaultOFTAdapterABI, EmberVaultOFTAdapter, OpenCoverVaultABI, OpenCoverVault, CcipRouterABI, CcipRouter };
@@ -4,6 +4,7 @@ import ERC20TokenABI from "./ERC20Token.json" with { type: "json" };
4
4
  import EmberETHVaultABI from "./EmberETHVault.json" with { type: "json" };
5
5
  import EmberVaultOFTAdapterABI from "./EmberVaultMintBurnOFTAdapter.json" with { type: "json" };
6
6
  import OpenCoverVaultABI from "./OpenCoverVault.json" with { type: "json" };
7
+ import CcipRouterABI from "./CcipRouter.json" with { type: "json" };
7
8
  import { Interface } from "ethers";
8
9
  const EmberVault = new Interface(EmberVaultABI.abi);
9
10
  const EmberProtocolConfig = new Interface(EmberProtocolConfigABI.abi);
@@ -11,4 +12,6 @@ const ERC20Token = new Interface(ERC20TokenABI.abi);
11
12
  const EmberETHVault = new Interface(EmberETHVaultABI.abi);
12
13
  const EmberVaultOFTAdapter = new Interface(EmberVaultOFTAdapterABI.abi);
13
14
  const OpenCoverVault = new Interface(OpenCoverVaultABI.abi);
14
- export { EmberVaultABI, EmberProtocolConfigABI, ERC20TokenABI, EmberVault, EmberProtocolConfig, ERC20Token, EmberETHVault, EmberVaultOFTAdapterABI, EmberVaultOFTAdapter, OpenCoverVaultABI, OpenCoverVault };
15
+ // Chainlink's Router, trimmed to what a bridge send needs: quote, then send.
16
+ const CcipRouter = new Interface(CcipRouterABI.abi);
17
+ export { EmberVaultABI, EmberProtocolConfigABI, ERC20TokenABI, EmberVault, EmberProtocolConfig, ERC20Token, EmberETHVault, EmberVaultOFTAdapterABI, EmberVaultOFTAdapter, OpenCoverVaultABI, OpenCoverVault, CcipRouterABI, CcipRouter };
@@ -15,6 +15,7 @@ import { type RequestArgs, BaseAPI } from "../base.js";
15
15
  import type { AggregatedProofOfCapitalReport } from "../models/index.js";
16
16
  import type { ApyHistoryResponse } from "../models/index.js";
17
17
  import type { Chain } from "../models/index.js";
18
+ import type { CoinPlacementsResponse } from "../models/index.js";
18
19
  import type { CoinPrice } from "../models/index.js";
19
20
  import type { Fees } from "../models/index.js";
20
21
  import type { HistoryInterval } from "../models/index.js";
@@ -44,6 +45,16 @@ export declare const VaultsApiAxiosParamCreator: (configuration?: Configuration)
44
45
  * @throws {RequiredError}
45
46
  */
46
47
  getAllTags: (options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
48
+ /**
49
+ * Pointers only: which protocol venues list the coin. No amounts are returned — clients read those from chain, so a stale row here can drop a venue but can never report a wrong balance.
50
+ * @summary Get venues that list an Ember receipt coin
51
+ * @param {string} coin Sui coin type or EVM token address of the receipt coin
52
+ * @param {string} [protocol] Restrict to one protocol adapter id, e.g. \&quot;bluefin-spot\&quot;
53
+ * @param {string} [chainIdentifier] Narrow to one chain, e.g. \&quot;sui-mainnet\&quot;.
54
+ * @param {*} [options] Override http request option.
55
+ * @throws {RequiredError}
56
+ */
57
+ getCoinPlacements: (coin: string, protocol?: string, chainIdentifier?: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
47
58
  /**
48
59
  *
49
60
  * @summary Get the price of the coins
@@ -201,6 +212,16 @@ export declare const VaultsApiFp: (configuration?: Configuration) => {
201
212
  * @throws {RequiredError}
202
213
  */
203
214
  getAllTags(options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<Array<Tag>>>;
215
+ /**
216
+ * Pointers only: which protocol venues list the coin. No amounts are returned — clients read those from chain, so a stale row here can drop a venue but can never report a wrong balance.
217
+ * @summary Get venues that list an Ember receipt coin
218
+ * @param {string} coin Sui coin type or EVM token address of the receipt coin
219
+ * @param {string} [protocol] Restrict to one protocol adapter id, e.g. \&quot;bluefin-spot\&quot;
220
+ * @param {string} [chainIdentifier] Narrow to one chain, e.g. \&quot;sui-mainnet\&quot;.
221
+ * @param {*} [options] Override http request option.
222
+ * @throws {RequiredError}
223
+ */
224
+ getCoinPlacements(coin: string, protocol?: string, chainIdentifier?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<CoinPlacementsResponse>>;
204
225
  /**
205
226
  *
206
227
  * @summary Get the price of the coins
@@ -358,6 +379,16 @@ export declare const VaultsApiFactory: (configuration?: Configuration, basePath?
358
379
  * @throws {RequiredError}
359
380
  */
360
381
  getAllTags(options?: RawAxiosRequestConfig): AxiosPromise<Array<Tag>>;
382
+ /**
383
+ * Pointers only: which protocol venues list the coin. No amounts are returned — clients read those from chain, so a stale row here can drop a venue but can never report a wrong balance.
384
+ * @summary Get venues that list an Ember receipt coin
385
+ * @param {string} coin Sui coin type or EVM token address of the receipt coin
386
+ * @param {string} [protocol] Restrict to one protocol adapter id, e.g. \&quot;bluefin-spot\&quot;
387
+ * @param {string} [chainIdentifier] Narrow to one chain, e.g. \&quot;sui-mainnet\&quot;.
388
+ * @param {*} [options] Override http request option.
389
+ * @throws {RequiredError}
390
+ */
391
+ getCoinPlacements(coin: string, protocol?: string, chainIdentifier?: string, options?: RawAxiosRequestConfig): AxiosPromise<CoinPlacementsResponse>;
361
392
  /**
362
393
  *
363
394
  * @summary Get the price of the coins
@@ -518,6 +549,17 @@ export declare class VaultsApi extends BaseAPI {
518
549
  * @memberof VaultsApi
519
550
  */
520
551
  getAllTags(options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<Tag[], any, {}>>;
552
+ /**
553
+ * Pointers only: which protocol venues list the coin. No amounts are returned — clients read those from chain, so a stale row here can drop a venue but can never report a wrong balance.
554
+ * @summary Get venues that list an Ember receipt coin
555
+ * @param {string} coin Sui coin type or EVM token address of the receipt coin
556
+ * @param {string} [protocol] Restrict to one protocol adapter id, e.g. \&quot;bluefin-spot\&quot;
557
+ * @param {string} [chainIdentifier] Narrow to one chain, e.g. \&quot;sui-mainnet\&quot;.
558
+ * @param {*} [options] Override http request option.
559
+ * @throws {RequiredError}
560
+ * @memberof VaultsApi
561
+ */
562
+ getCoinPlacements(coin: string, protocol?: string, chainIdentifier?: string, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<CoinPlacementsResponse, any, {}>>;
521
563
  /**
522
564
  *
523
565
  * @summary Get the price of the coins
@@ -52,6 +52,49 @@ export const VaultsApiAxiosParamCreator = function (configuration) {
52
52
  options: localVarRequestOptions
53
53
  };
54
54
  },
55
+ /**
56
+ * Pointers only: which protocol venues list the coin. No amounts are returned — clients read those from chain, so a stale row here can drop a venue but can never report a wrong balance.
57
+ * @summary Get venues that list an Ember receipt coin
58
+ * @param {string} coin Sui coin type or EVM token address of the receipt coin
59
+ * @param {string} [protocol] Restrict to one protocol adapter id, e.g. \&quot;bluefin-spot\&quot;
60
+ * @param {string} [chainIdentifier] Narrow to one chain, e.g. \&quot;sui-mainnet\&quot;.
61
+ * @param {*} [options] Override http request option.
62
+ * @throws {RequiredError}
63
+ */
64
+ getCoinPlacements: async (coin, protocol, chainIdentifier, options = {}) => {
65
+ // verify required parameter 'coin' is not null or undefined
66
+ assertParamExists("getCoinPlacements", "coin", coin);
67
+ const localVarPath = `/api/v2/vaults/placements`;
68
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
69
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
70
+ let baseOptions;
71
+ if (configuration) {
72
+ baseOptions = configuration.baseOptions;
73
+ }
74
+ const localVarRequestOptions = { method: "GET", ...baseOptions, ...options };
75
+ const localVarHeaderParameter = {};
76
+ const localVarQueryParameter = {};
77
+ if (coin !== undefined) {
78
+ localVarQueryParameter["coin"] = coin;
79
+ }
80
+ if (protocol !== undefined) {
81
+ localVarQueryParameter["protocol"] = protocol;
82
+ }
83
+ if (chainIdentifier !== undefined) {
84
+ localVarQueryParameter["chainIdentifier"] = chainIdentifier;
85
+ }
86
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
87
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
88
+ localVarRequestOptions.headers = {
89
+ ...localVarHeaderParameter,
90
+ ...headersFromBaseOptions,
91
+ ...options.headers
92
+ };
93
+ return {
94
+ url: toPathString(localVarUrlObj),
95
+ options: localVarRequestOptions
96
+ };
97
+ },
55
98
  /**
56
99
  *
57
100
  * @summary Get the price of the coins
@@ -667,6 +710,21 @@ export const VaultsApiFp = function (configuration) {
667
710
  ?.url;
668
711
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
669
712
  },
713
+ /**
714
+ * Pointers only: which protocol venues list the coin. No amounts are returned — clients read those from chain, so a stale row here can drop a venue but can never report a wrong balance.
715
+ * @summary Get venues that list an Ember receipt coin
716
+ * @param {string} coin Sui coin type or EVM token address of the receipt coin
717
+ * @param {string} [protocol] Restrict to one protocol adapter id, e.g. \&quot;bluefin-spot\&quot;
718
+ * @param {string} [chainIdentifier] Narrow to one chain, e.g. \&quot;sui-mainnet\&quot;.
719
+ * @param {*} [options] Override http request option.
720
+ * @throws {RequiredError}
721
+ */
722
+ async getCoinPlacements(coin, protocol, chainIdentifier, options) {
723
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getCoinPlacements(coin, protocol, chainIdentifier, options);
724
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
725
+ const localVarOperationServerBasePath = operationServerMap["VaultsApi.getCoinPlacements"]?.[localVarOperationServerIndex]?.url;
726
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
727
+ },
670
728
  /**
671
729
  *
672
730
  * @summary Get the price of the coins
@@ -913,6 +971,20 @@ export const VaultsApiFactory = function (configuration, basePath, axios) {
913
971
  .getAllTags(options)
914
972
  .then(request => request(axios, basePath));
915
973
  },
974
+ /**
975
+ * Pointers only: which protocol venues list the coin. No amounts are returned — clients read those from chain, so a stale row here can drop a venue but can never report a wrong balance.
976
+ * @summary Get venues that list an Ember receipt coin
977
+ * @param {string} coin Sui coin type or EVM token address of the receipt coin
978
+ * @param {string} [protocol] Restrict to one protocol adapter id, e.g. \&quot;bluefin-spot\&quot;
979
+ * @param {string} [chainIdentifier] Narrow to one chain, e.g. \&quot;sui-mainnet\&quot;.
980
+ * @param {*} [options] Override http request option.
981
+ * @throws {RequiredError}
982
+ */
983
+ getCoinPlacements(coin, protocol, chainIdentifier, options) {
984
+ return localVarFp
985
+ .getCoinPlacements(coin, protocol, chainIdentifier, options)
986
+ .then(request => request(axios, basePath));
987
+ },
916
988
  /**
917
989
  *
918
990
  * @summary Get the price of the coins
@@ -1142,6 +1214,21 @@ export class VaultsApi extends BaseAPI {
1142
1214
  .getAllTags(options)
1143
1215
  .then(request => request(this.axios, this.basePath));
1144
1216
  }
1217
+ /**
1218
+ * Pointers only: which protocol venues list the coin. No amounts are returned — clients read those from chain, so a stale row here can drop a venue but can never report a wrong balance.
1219
+ * @summary Get venues that list an Ember receipt coin
1220
+ * @param {string} coin Sui coin type or EVM token address of the receipt coin
1221
+ * @param {string} [protocol] Restrict to one protocol adapter id, e.g. \&quot;bluefin-spot\&quot;
1222
+ * @param {string} [chainIdentifier] Narrow to one chain, e.g. \&quot;sui-mainnet\&quot;.
1223
+ * @param {*} [options] Override http request option.
1224
+ * @throws {RequiredError}
1225
+ * @memberof VaultsApi
1226
+ */
1227
+ getCoinPlacements(coin, protocol, chainIdentifier, options) {
1228
+ return VaultsApiFp(this.configuration)
1229
+ .getCoinPlacements(coin, protocol, chainIdentifier, options)
1230
+ .then(request => request(this.axios, this.basePath));
1231
+ }
1145
1232
  /**
1146
1233
  *
1147
1234
  * @summary Get the price of the coins
@@ -75,6 +75,12 @@ export interface Chain {
75
75
  * @memberof Chain
76
76
  */
77
77
  isHidden: boolean;
78
+ /**
79
+ * A chain RPC endpoint safe to call from a browser, when we publish one. Absent means the caller must supply its own. Placement rows already carry this, but reading a wallet balance has no placement row to borrow one from, so it is exposed here too.
80
+ * @type {string}
81
+ * @memberof Chain
82
+ */
83
+ publicRpcUrl?: string;
78
84
  }
79
85
  export declare const ChainTypeEnum: {
80
86
  readonly Evm: "EVM";
@@ -0,0 +1,113 @@
1
+ /**
2
+ * Ember Protocol Vaults API
3
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
4
+ *
5
+ * The version of the OpenAPI document: 2.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ *
14
+ * @export
15
+ * @interface CoinPlacement
16
+ */
17
+ export interface CoinPlacement {
18
+ /**
19
+ * Stable identity for this placement, for a client to key a list on. A protocol can list the same coin at several venues — the same pair at two fee tiers, or the two tranches of one market — so protocol and label together do not identify a row. Survives a re-sync.
20
+ * @type {string}
21
+ * @memberof CoinPlacement
22
+ */
23
+ id: string;
24
+ /**
25
+ * Adapter id, e.g. \"bluefin-spot\"
26
+ * @type {string}
27
+ * @memberof CoinPlacement
28
+ */
29
+ protocol: string;
30
+ /**
31
+ * The protocol\'s display name, e.g. \"Current Finance\". Absent when the protocol is not in our catalogue yet — render `protocol` then.
32
+ * @type {string}
33
+ * @memberof CoinPlacement
34
+ */
35
+ protocolName?: string;
36
+ /**
37
+ * Icon for the protocol. Absent when the protocol is not in our catalogue yet.
38
+ * @type {string}
39
+ * @memberof CoinPlacement
40
+ */
41
+ protocolLogoUrl?: string;
42
+ /**
43
+ * Chain identifier as catalogued, e.g. \"sui-mainnet\".
44
+ * @type {string}
45
+ * @memberof CoinPlacement
46
+ */
47
+ chainIdentifier: string;
48
+ /**
49
+ * EVM network id. Absent on chains that have none.
50
+ * @type {number}
51
+ * @memberof CoinPlacement
52
+ */
53
+ chainId?: number;
54
+ /**
55
+ * A chain RPC endpoint safe to call from a browser, when we publish one. Absent means the client should use its own configured endpoint.
56
+ * @type {string}
57
+ * @memberof CoinPlacement
58
+ */
59
+ rpcUrl?: string;
60
+ /**
61
+ * Pool, market or vault address. Never a symbol.
62
+ * @type {string}
63
+ * @memberof CoinPlacement
64
+ */
65
+ venue: string;
66
+ /**
67
+ * The token an account holds to represent its position here, when that is not the venue itself. Absent means the venue.
68
+ * @type {string}
69
+ * @memberof CoinPlacement
70
+ */
71
+ shareToken?: string;
72
+ /**
73
+ * Deep link to the venue.
74
+ * @type {string}
75
+ * @memberof CoinPlacement
76
+ */
77
+ url?: string;
78
+ /**
79
+ * The coin in its chain\'s own canonical form, ready to hand to an RPC.
80
+ * @type {string}
81
+ * @memberof CoinPlacement
82
+ */
83
+ coin: string;
84
+ /**
85
+ *
86
+ * @type {number}
87
+ * @memberof CoinPlacement
88
+ */
89
+ decimals: number;
90
+ /**
91
+ * Registry rows come from a protocol\'s own catalogue; Manual rows are hand-maintained for protocols that publish none.
92
+ * @type {string}
93
+ * @memberof CoinPlacement
94
+ */
95
+ source: CoinPlacementSourceEnum;
96
+ /**
97
+ *
98
+ * @type {string}
99
+ * @memberof CoinPlacement
100
+ */
101
+ label?: string;
102
+ /**
103
+ * Last time the venue was confirmed to still list the coin.
104
+ * @type {string}
105
+ * @memberof CoinPlacement
106
+ */
107
+ lastVerifiedAt?: string;
108
+ }
109
+ export declare const CoinPlacementSourceEnum: {
110
+ readonly Registry: "Registry";
111
+ readonly Manual: "Manual";
112
+ };
113
+ export type CoinPlacementSourceEnum = (typeof CoinPlacementSourceEnum)[keyof typeof CoinPlacementSourceEnum];
@@ -0,0 +1,17 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Ember Protocol Vaults API
5
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
6
+ *
7
+ * The version of the OpenAPI document: 2.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ export const CoinPlacementSourceEnum = {
15
+ Registry: "Registry",
16
+ Manual: "Manual"
17
+ };
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Ember Protocol Vaults API
3
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
4
+ *
5
+ * The version of the OpenAPI document: 2.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { CoinPlacement } from "./coin-placement.js";
13
+ /**
14
+ *
15
+ * @export
16
+ * @interface CoinPlacementsResponse
17
+ */
18
+ export interface CoinPlacementsResponse {
19
+ /**
20
+ *
21
+ * @type {Array<CoinPlacement>}
22
+ * @memberof CoinPlacementsResponse
23
+ */
24
+ placements: Array<CoinPlacement>;
25
+ }
@@ -0,0 +1,14 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Ember Protocol Vaults API
5
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
6
+ *
7
+ * The version of the OpenAPI document: 2.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ export {};
@@ -0,0 +1,73 @@
1
+ /**
2
+ * Ember Protocol Vaults API
3
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
4
+ *
5
+ * The version of the OpenAPI document: 2.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { EvmCcipRateLimits } from "./evm-ccip-rate-limits.js";
13
+ /**
14
+ * One configured destination. remoteNetwork and remoteAddress mean the same as on an OFT peer; the rest has no LayerZero equivalent.
15
+ * @export
16
+ * @interface EvmCcipLane
17
+ */
18
+ export interface EvmCcipLane {
19
+ /**
20
+ * The remote chain\'s network name, e.g. atlantic. The map key is a CCIP chain selector, so read this instead.
21
+ * @type {string}
22
+ * @memberof EvmCcipLane
23
+ */
24
+ remoteNetwork?: string;
25
+ /**
26
+ * The bridge contract at the far end, as a plain address. Same meaning as remoteAddress on an OFT peer.
27
+ * @type {string}
28
+ * @memberof EvmCcipLane
29
+ */
30
+ remoteAddress?: string;
31
+ /**
32
+ * The remote chain\'s CCIP selector, carried as a string because it is 64-bit
33
+ * @type {string}
34
+ * @memberof EvmCcipLane
35
+ */
36
+ remoteChainSelector?: string;
37
+ /**
38
+ * The remote CCIP token pool address
39
+ * @type {string}
40
+ * @memberof EvmCcipLane
41
+ */
42
+ remotePool?: string;
43
+ /**
44
+ * The remote receipt token address
45
+ * @type {string}
46
+ * @memberof EvmCcipLane
47
+ */
48
+ remoteToken?: string;
49
+ /**
50
+ *
51
+ * @type {EvmCcipRateLimits}
52
+ * @memberof EvmCcipLane
53
+ */
54
+ rateLimits?: EvmCcipRateLimits;
55
+ /**
56
+ * The timestamp when the lane was configured
57
+ * @type {string}
58
+ * @memberof EvmCcipLane
59
+ */
60
+ configuredAt?: string;
61
+ /**
62
+ * The transaction hash of the lane configuration
63
+ * @type {string}
64
+ * @memberof EvmCcipLane
65
+ */
66
+ txHash?: string;
67
+ /**
68
+ * The block number of the lane configuration
69
+ * @type {number}
70
+ * @memberof EvmCcipLane
71
+ */
72
+ blockNumber?: number;
73
+ }
@@ -0,0 +1,14 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Ember Protocol Vaults API
5
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
6
+ *
7
+ * The version of the OpenAPI document: 2.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ export {};
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Ember Protocol Vaults API
3
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
4
+ *
5
+ * The version of the OpenAPI document: 2.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ * Per-lane outbound rate limiting. Has no LayerZero equivalent, so it is deliberately not flattened into a shared shape.
14
+ * @export
15
+ * @interface EvmCcipRateLimits
16
+ */
17
+ export interface EvmCcipRateLimits {
18
+ /**
19
+ * Whether rate limiting is enforced on this lane
20
+ * @type {boolean}
21
+ * @memberof EvmCcipRateLimits
22
+ */
23
+ enabled?: boolean;
24
+ /**
25
+ * Token bucket capacity, in receipt token base units
26
+ * @type {string}
27
+ * @memberof EvmCcipRateLimits
28
+ */
29
+ capacity?: string;
30
+ /**
31
+ * Refill rate, in receipt token base units per second
32
+ * @type {string}
33
+ * @memberof EvmCcipRateLimits
34
+ */
35
+ rate?: string;
36
+ }
@@ -0,0 +1,14 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Ember Protocol Vaults API
5
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
6
+ *
7
+ * The version of the OpenAPI document: 2.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ export {};