@augustdigital/sdk 4.2.0-alpha → 4.2.0-beta

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 (114) hide show
  1. package/lib/__tests__/adapter.e2e.test.d.ts +1 -0
  2. package/lib/__tests__/adapter.e2e.test.js +94 -0
  3. package/lib/__tests__/adapter.e2e.test.js.map +1 -0
  4. package/lib/abis/PoolAdapter.d.ts +36 -76
  5. package/lib/abis/PoolAdapter.js +18 -379
  6. package/lib/abis/PoolAdapter.js.map +1 -1
  7. package/lib/abis/WrapperAdapter.d.ts +71 -60
  8. package/lib/abis/WrapperAdapter.js +41 -114
  9. package/lib/abis/WrapperAdapter.js.map +1 -1
  10. package/lib/abis/index.d.ts +3 -0
  11. package/lib/abis/index.js +3 -0
  12. package/lib/abis/index.js.map +1 -1
  13. package/lib/adapters/evm/getters.d.ts +1 -1
  14. package/lib/adapters/evm/getters.js +21 -22
  15. package/lib/adapters/evm/getters.js.map +1 -1
  16. package/lib/adapters/solana/getters.js +8 -10
  17. package/lib/adapters/solana/getters.js.map +1 -1
  18. package/lib/adapters/solana/index.d.ts +25 -1
  19. package/lib/adapters/solana/utils.d.ts +13 -1
  20. package/lib/adapters/solana/utils.js +72 -17
  21. package/lib/adapters/solana/utils.js.map +1 -1
  22. package/lib/adapters/sui/constants.d.ts +13 -0
  23. package/lib/adapters/sui/constants.js +17 -0
  24. package/lib/adapters/sui/constants.js.map +1 -0
  25. package/lib/adapters/sui/getters.d.ts +3 -0
  26. package/lib/adapters/sui/getters.js +53 -0
  27. package/lib/adapters/sui/getters.js.map +1 -0
  28. package/lib/adapters/sui/index.d.ts +30 -0
  29. package/lib/adapters/sui/index.js +83 -0
  30. package/lib/adapters/sui/index.js.map +1 -1
  31. package/lib/adapters/sui/transformer.d.ts +4 -0
  32. package/lib/adapters/sui/transformer.js +97 -0
  33. package/lib/adapters/sui/transformer.js.map +1 -0
  34. package/lib/adapters/sui/types.d.ts +62 -0
  35. package/lib/adapters/sui/types.js +3 -0
  36. package/lib/adapters/sui/types.js.map +1 -0
  37. package/lib/adapters/sui/utils.d.ts +4 -0
  38. package/lib/adapters/sui/utils.js +27 -0
  39. package/lib/adapters/sui/utils.js.map +1 -0
  40. package/lib/core/auth/verify.js +2 -2
  41. package/lib/core/auth/verify.js.map +1 -1
  42. package/lib/core/constants.adapters.d.ts +89 -0
  43. package/lib/core/constants.adapters.js +160 -0
  44. package/lib/core/constants.adapters.js.map +1 -0
  45. package/lib/core/constants.core.d.ts +66 -0
  46. package/lib/core/constants.core.js +70 -0
  47. package/lib/core/constants.core.js.map +1 -0
  48. package/lib/core/constants.vaults.d.ts +19 -0
  49. package/lib/core/constants.vaults.js +132 -0
  50. package/lib/core/constants.vaults.js.map +1 -0
  51. package/lib/core/constants.web3.d.ts +30 -0
  52. package/lib/core/constants.web3.js +95 -0
  53. package/lib/core/constants.web3.js.map +1 -0
  54. package/lib/core/fetcher.d.ts +1 -1
  55. package/lib/core/fetcher.js +93 -79
  56. package/lib/core/fetcher.js.map +1 -1
  57. package/lib/core/helpers.adapters.d.ts +4 -0
  58. package/lib/core/helpers.adapters.js +28 -0
  59. package/lib/core/helpers.adapters.js.map +1 -0
  60. package/lib/core/helpers.core.d.ts +23 -0
  61. package/lib/core/helpers.core.js +210 -0
  62. package/lib/core/helpers.core.js.map +1 -0
  63. package/lib/core/helpers.vaults.d.ts +15 -0
  64. package/lib/core/helpers.vaults.js +123 -0
  65. package/lib/core/helpers.vaults.js.map +1 -0
  66. package/lib/core/helpers.web3.d.ts +29 -0
  67. package/lib/core/helpers.web3.js +365 -0
  68. package/lib/core/helpers.web3.js.map +1 -0
  69. package/lib/core/index.d.ts +8 -3
  70. package/lib/core/index.js +8 -3
  71. package/lib/core/index.js.map +1 -1
  72. package/lib/core/logger/slack.js +3 -3
  73. package/lib/core/vault.utils.d.ts +4 -0
  74. package/lib/core/vault.utils.js +35 -0
  75. package/lib/core/vault.utils.js.map +1 -0
  76. package/lib/core/web3.helpers.d.ts +1 -0
  77. package/lib/core/web3.helpers.js +32 -3
  78. package/lib/core/web3.helpers.js.map +1 -1
  79. package/lib/index.d.ts +2 -1
  80. package/lib/index.js +10 -2
  81. package/lib/index.js.map +1 -1
  82. package/lib/main.d.ts +10 -2
  83. package/lib/main.js +6 -1
  84. package/lib/main.js.map +1 -1
  85. package/lib/modules/vaults/adapter.helpers.d.ts +46 -0
  86. package/lib/modules/vaults/adapter.helpers.js +149 -0
  87. package/lib/modules/vaults/adapter.helpers.js.map +1 -0
  88. package/lib/modules/vaults/constants.d.ts +7 -7
  89. package/lib/modules/vaults/constants.js +9 -15
  90. package/lib/modules/vaults/constants.js.map +1 -1
  91. package/lib/modules/vaults/fetcher.js +1 -1
  92. package/lib/modules/vaults/fetcher.js.map +1 -1
  93. package/lib/modules/vaults/getters.d.ts +22 -2
  94. package/lib/modules/vaults/getters.js +269 -72
  95. package/lib/modules/vaults/getters.js.map +1 -1
  96. package/lib/modules/vaults/index.d.ts +1 -1
  97. package/lib/modules/vaults/index.js +1 -1
  98. package/lib/modules/vaults/index.js.map +1 -1
  99. package/lib/modules/vaults/main.d.ts +9 -4
  100. package/lib/modules/vaults/main.js +49 -12
  101. package/lib/modules/vaults/main.js.map +1 -1
  102. package/lib/modules/vaults/utils.d.ts +1 -4
  103. package/lib/modules/vaults/utils.js +42 -51
  104. package/lib/modules/vaults/utils.js.map +1 -1
  105. package/lib/modules/vaults/write.actions.d.ts +3 -0
  106. package/lib/modules/vaults/write.actions.js +174 -26
  107. package/lib/modules/vaults/write.actions.js.map +1 -1
  108. package/lib/services/debank/utils.js +4 -4
  109. package/lib/services/subgraph/fetcher.js +3 -2
  110. package/lib/services/subgraph/fetcher.js.map +1 -1
  111. package/lib/services/subgraph/vaults.js +25 -27
  112. package/lib/services/subgraph/vaults.js.map +1 -1
  113. package/lib/types/vaults.d.ts +15 -1
  114. package/package.json +2 -1
@@ -42,7 +42,7 @@ declare function getVaultMints({ vaultProgramId, connection, idl, }: {
42
42
  depositMint: string;
43
43
  shareMint: string;
44
44
  }>;
45
- declare function getToken({ mintAddress, endpoint, }: {
45
+ declare function getToken({ mintAddress, endpoint, connection, }: {
46
46
  mintAddress: string | PublicKey;
47
47
  } & ISolanaConnectionOptions): Promise<{
48
48
  address: any;
@@ -54,6 +54,18 @@ declare function getToken({ mintAddress, endpoint, }: {
54
54
  mintAuthority: any;
55
55
  freezeAuthority: any;
56
56
  supply: any;
57
+ shareMintAddress?: undefined;
58
+ } | {
59
+ address: string;
60
+ symbol: any;
61
+ decimals: number;
62
+ name: any;
63
+ image: any;
64
+ program: any;
65
+ mintAuthority: any;
66
+ freezeAuthority: any;
67
+ supply: string;
68
+ shareMintAddress: string;
57
69
  }>;
58
70
  declare function getTokenSymbol({ endpoint, mintAddress, }: {
59
71
  mintAddress: string | PublicKey;
@@ -14,7 +14,13 @@ function isSolanaAddress(address) {
14
14
  return false;
15
15
  if ((0, ethers_1.isAddress)(address))
16
16
  return false;
17
- return web3_js_1.PublicKey.isOnCurve(new web3_js_1.PublicKey(address).toBytes());
17
+ try {
18
+ const pk = new web3_js_1.PublicKey(address);
19
+ return web3_js_1.PublicKey.isOnCurve(pk.toBytes());
20
+ }
21
+ catch (_e) {
22
+ return false;
23
+ }
18
24
  }
19
25
  function isSolana(signature) {
20
26
  if (!signature || typeof signature !== 'string')
@@ -93,21 +99,21 @@ function deriveVaultStatePda(vaultProgramId) {
93
99
  if (!vaultProgramId)
94
100
  throw new Error('Vault program ID missing');
95
101
  const _vaultProgramId = new web3_js_1.PublicKey(vaultProgramId);
96
- const [pda] = web3_js_1.PublicKey.findProgramAddressSync([Buffer.from('VAULT_STATE')], _vaultProgramId);
102
+ const [pda] = web3_js_1.PublicKey.findProgramAddressSync([new TextEncoder().encode('VAULT_STATE')], _vaultProgramId);
97
103
  return pda;
98
104
  }
99
105
  function deriveShareMintPda(vaultProgramId) {
100
106
  if (!vaultProgramId)
101
107
  throw new Error('Vault program ID missing');
102
108
  const _vaultProgramId = new web3_js_1.PublicKey(vaultProgramId);
103
- const [pda] = web3_js_1.PublicKey.findProgramAddressSync([Buffer.from('mint')], _vaultProgramId);
109
+ const [pda] = web3_js_1.PublicKey.findProgramAddressSync([new TextEncoder().encode('mint')], _vaultProgramId);
104
110
  return pda;
105
111
  }
106
112
  function deriveVaultTokenAtaPda(vaultProgramId, depositMint) {
107
113
  if (!(vaultProgramId && depositMint))
108
114
  throw new Error('Vault program ID or deposit mint missing');
109
115
  const _vaultProgramId = new web3_js_1.PublicKey(vaultProgramId);
110
- const [pda] = web3_js_1.PublicKey.findProgramAddressSync([Buffer.from('token_vault'), depositMint.toBuffer()], _vaultProgramId);
116
+ const [pda] = web3_js_1.PublicKey.findProgramAddressSync([new TextEncoder().encode('token_vault'), depositMint.toBuffer()], _vaultProgramId);
111
117
  return pda;
112
118
  }
113
119
  async function getVaultState({ provider, connection, vaultProgramId, idl, }) {
@@ -258,7 +264,7 @@ async function getVaultMints({ vaultProgramId, connection, idl, }) {
258
264
  };
259
265
  }
260
266
  }
261
- async function getToken({ mintAddress, endpoint, }) {
267
+ async function getToken({ mintAddress, endpoint, connection, }) {
262
268
  try {
263
269
  const response = await fetch(endpoint, {
264
270
  method: 'POST',
@@ -273,20 +279,69 @@ async function getToken({ mintAddress, endpoint, }) {
273
279
  }),
274
280
  });
275
281
  const data = (await response.json());
276
- return {
277
- address: data?.result?.id,
278
- symbol: data.result?.content?.metadata?.symbol || 'N/A',
279
- decimals: data.result?.token_info?.decimals,
280
- name: data.result?.content?.metadata?.name || 'Unknown',
281
- image: data.result?.content.metadata?.image,
282
- program: data.result?.token_info?.token_program,
283
- mintAuthority: data.result?.token_info?.mint_authority,
284
- freezeAuthority: data.result?.token_info?.freeze_authority,
285
- supply: data.result?.token_info?.supply,
286
- };
282
+ if (data.result?.token_info?.decimals !== undefined) {
283
+ return {
284
+ address: data?.result?.id,
285
+ symbol: data.result?.content?.metadata?.symbol || 'N/A',
286
+ decimals: data.result?.token_info?.decimals,
287
+ name: data.result?.content?.metadata?.name || 'Unknown',
288
+ image: data.result?.content.metadata?.image,
289
+ program: data.result?.token_info?.token_program,
290
+ mintAuthority: data.result?.token_info?.mint_authority,
291
+ freezeAuthority: data.result?.token_info?.freeze_authority,
292
+ supply: data.result?.token_info?.supply,
293
+ };
294
+ }
295
+ if (connection) {
296
+ try {
297
+ const vaultProgramId = new web3_js_1.PublicKey(mintAddress);
298
+ const vaultState = await getVaultStateReadOnly({
299
+ vaultProgramId,
300
+ connection,
301
+ idl: constants_1.vaultIdl,
302
+ });
303
+ if (vaultState.vaultState) {
304
+ const shareMintPda = deriveShareMintPda(vaultProgramId);
305
+ const shareMintInfo = await connection.getParsedAccountInfo(shareMintPda);
306
+ if (shareMintInfo.value) {
307
+ const parsedData = shareMintInfo.value.data;
308
+ const shareMintMetadata = await fetch(endpoint, {
309
+ method: 'POST',
310
+ headers: {
311
+ 'Content-Type': 'application/json',
312
+ },
313
+ body: JSON.stringify({
314
+ jsonrpc: '2.0',
315
+ id: 'text',
316
+ method: 'getAsset',
317
+ params: { id: shareMintPda.toString() },
318
+ }),
319
+ });
320
+ const shareMintData = (await shareMintMetadata.json());
321
+ return {
322
+ address: mintAddress.toString(),
323
+ symbol: shareMintData.result?.content?.metadata?.symbol || 'N/A',
324
+ decimals: parsedData.parsed.info.decimals,
325
+ name: shareMintData.result?.content?.metadata?.name ||
326
+ 'Vault Share Token',
327
+ image: shareMintData.result?.content?.metadata?.image,
328
+ program: shareMintData.result?.token_info?.token_program,
329
+ mintAuthority: shareMintData.result?.token_info?.mint_authority,
330
+ freezeAuthority: shareMintData.result?.token_info?.freeze_authority,
331
+ supply: parsedData.parsed.info.supply,
332
+ shareMintAddress: shareMintPda.toString(),
333
+ };
334
+ }
335
+ }
336
+ }
337
+ catch (vaultError) {
338
+ console.log('Not a vault program or error querying vault:', vaultError);
339
+ }
340
+ }
341
+ return null;
287
342
  }
288
343
  catch (error) {
289
- console.error('Error fetching token symbol:', error);
344
+ console.error('Error fetching token metadata:', error);
290
345
  return null;
291
346
  }
292
347
  }
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src.ts/adapters/solana/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src.ts/adapters/solana/utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ export declare const SUI_CHAIN_ID = 101;
2
+ export declare const EMBER_API_BASE_URL = "https://vaults.api.sui-prod.bluefin.io/api/v1/vaults";
3
+ export declare const EMBER_ENDPOINTS: {
4
+ readonly VAULTS: "/";
5
+ readonly TVL: "/tvl-history";
6
+ };
7
+ export declare const EMBER_DEFAULTS: {
8
+ readonly DECIMALS: 18;
9
+ readonly USD_DECIMALS: 6;
10
+ readonly E9_DIVISOR: 1000000000;
11
+ readonly BPS_TO_PERCENT: 100;
12
+ readonly VERSION: "sui-0";
13
+ };
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EMBER_DEFAULTS = exports.EMBER_ENDPOINTS = exports.EMBER_API_BASE_URL = exports.SUI_CHAIN_ID = void 0;
4
+ exports.SUI_CHAIN_ID = 101;
5
+ exports.EMBER_API_BASE_URL = 'https://vaults.api.sui-prod.bluefin.io/api/v1/vaults';
6
+ exports.EMBER_ENDPOINTS = {
7
+ VAULTS: '/',
8
+ TVL: '/tvl-history',
9
+ };
10
+ exports.EMBER_DEFAULTS = {
11
+ DECIMALS: 18,
12
+ USD_DECIMALS: 6,
13
+ E9_DIVISOR: 1e9,
14
+ BPS_TO_PERCENT: 100,
15
+ VERSION: 'sui-0',
16
+ };
17
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src.ts/adapters/sui/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,YAAY,GAAG,GAAG,CAAC;AAEnB,QAAA,kBAAkB,GAC7B,sDAAsD,CAAC;AAE5C,QAAA,eAAe,GAAG;IAC7B,MAAM,EAAE,GAAG;IACX,GAAG,EAAE,cAAc;CACX,CAAC;AAEE,QAAA,cAAc,GAAG;IAC5B,QAAQ,EAAE,EAAE;IACZ,YAAY,EAAE,CAAC;IACf,UAAU,EAAE,GAAG;IACf,cAAc,EAAE,GAAG;IACnB,OAAO,EAAE,OAAO;CACR,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { IEmberVault, IFetchEmberVaultsOptions } from './types';
2
+ export declare function getEmberVaults(options?: IFetchEmberVaultsOptions): Promise<IEmberVault[]>;
3
+ export declare function getEmberTVL(limit?: number): Promise<number>;
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getEmberVaults = getEmberVaults;
4
+ exports.getEmberTVL = getEmberTVL;
5
+ const constants_1 = require("./constants");
6
+ const core_1 = require("../../core");
7
+ async function getEmberVaults(options) {
8
+ try {
9
+ const params = new URLSearchParams();
10
+ if (options?.limit)
11
+ params.append('limit', options.limit.toString());
12
+ if (options?.offset)
13
+ params.append('offset', options.offset.toString());
14
+ if (options?.status)
15
+ params.append('status', options.status);
16
+ const queryString = params.toString();
17
+ const url = `${constants_1.EMBER_API_BASE_URL}${queryString ? `?${queryString}` : ''}`;
18
+ const response = await fetch(url, core_1.DEFAULT_FETCH_OPTIONS);
19
+ if (!response.ok) {
20
+ throw new Error(`HTTP error! status: ${response.status}`);
21
+ }
22
+ const data = await response.json();
23
+ return Array.isArray(data) ? data : [];
24
+ }
25
+ catch (error) {
26
+ console.error('Error fetching Ember vaults:', error);
27
+ return [];
28
+ }
29
+ }
30
+ async function getEmberTVL(limit = 1) {
31
+ try {
32
+ const params = new URLSearchParams();
33
+ if (limit)
34
+ params.append('limit', limit.toString());
35
+ const queryString = params.toString();
36
+ const url = `${constants_1.EMBER_API_BASE_URL}${constants_1.EMBER_ENDPOINTS.TVL}${queryString ? `?${queryString}` : ''}`;
37
+ const response = await fetch(url, core_1.DEFAULT_FETCH_OPTIONS);
38
+ if (!response.ok) {
39
+ throw new Error(`HTTP error! status: ${response.status}`);
40
+ }
41
+ const result = await response.json();
42
+ if (Array.isArray(result) && result.length > 0) {
43
+ const latestEntry = result[0];
44
+ return Number(latestEntry.tvlE9) / constants_1.EMBER_DEFAULTS.E9_DIVISOR;
45
+ }
46
+ return 0;
47
+ }
48
+ catch (error) {
49
+ console.error('Error fetching Ember TVL:', error);
50
+ return 0;
51
+ }
52
+ }
53
+ //# sourceMappingURL=getters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getters.js","sourceRoot":"","sources":["../../../src.ts/adapters/sui/getters.ts"],"names":[],"mappings":";;AAWA,wCAyBC;AAKD,kCA0BC;AAlED,2CAIqB;AACrB,qCAAmD;AAK5C,KAAK,UAAU,cAAc,CAClC,OAAkC;IAElC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QAErC,IAAI,OAAO,EAAE,KAAK;YAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;QACrE,IAAI,OAAO,EAAE,MAAM;YAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;QACxE,IAAI,OAAO,EAAE,MAAM;YAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QAE7D,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QACtC,MAAM,GAAG,GAAG,GAAG,8BAAkB,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QAE3E,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,4BAAqB,CAAC,CAAC;QAEzD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,uBAAuB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QAC5D,CAAC;QAED,MAAM,IAAI,GAAkB,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAClD,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACzC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAC;QACrD,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAKM,KAAK,UAAU,WAAW,CAAC,QAAgB,CAAC;IACjD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QACrC,IAAI,KAAK;YAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;QAEpD,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QACtC,MAAM,GAAG,GAAG,GAAG,8BAAkB,GAAG,2BAAe,CAAC,GAAG,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QAEjG,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,4BAAqB,CAAC,CAAC;QAEzD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,uBAAuB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QAC5D,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAErC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/C,MAAM,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YAC9B,OAAO,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,0BAAc,CAAC,UAAU,CAAC;QAC/D,CAAC;QAED,OAAO,CAAC,CAAC;IACX,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAC;QAClD,OAAO,CAAC,CAAC;IACX,CAAC;AACH,CAAC"}
@@ -0,0 +1,30 @@
1
+ import * as SuiConstants from './constants';
2
+ import * as SuiGetters from './getters';
3
+ import * as SuiUtils from './utils';
4
+ import { transformEmberVaultToIVault, transformEmberVaultsToIVaults } from './transformer';
5
+ import { IEmberVault, IFetchEmberVaultsOptions } from './types';
6
+ export declare const Sui: {
7
+ utils: typeof SuiUtils;
8
+ constants: typeof SuiConstants;
9
+ getters: typeof SuiGetters;
10
+ transformer: {
11
+ transformEmberVaultToIVault: typeof transformEmberVaultToIVault;
12
+ transformEmberVaultsToIVaults: typeof transformEmberVaultsToIVaults;
13
+ };
14
+ };
15
+ declare class SuiAdapter {
16
+ private _apiBaseUrl;
17
+ private _chainId;
18
+ constructor(apiBaseUrl?: string, chainId?: number);
19
+ get apiBaseUrl(): string;
20
+ get chainId(): number;
21
+ getEmberVaults(options?: IFetchEmberVaultsOptions): Promise<IEmberVault[]>;
22
+ getEmberTVL(limit?: number): Promise<number>;
23
+ convertFromE9(value: string | number): number;
24
+ calculateUtilization(current: string | number, maximum: string | number): number;
25
+ isSuiAddress(address: string): boolean;
26
+ isSuiVault(chainId: number): boolean;
27
+ transformEmberVaultToIVault(emberVault: IEmberVault): import("../..").IVault;
28
+ transformEmberVaultsToIVaults(emberVaults: IEmberVault[]): import("../..").IVault[];
29
+ }
30
+ export default SuiAdapter;
@@ -1 +1,84 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.Sui = void 0;
37
+ const SuiConstants = __importStar(require("./constants"));
38
+ const SuiGetters = __importStar(require("./getters"));
39
+ const SuiUtils = __importStar(require("./utils"));
40
+ const transformer_1 = require("./transformer");
41
+ exports.Sui = {
42
+ utils: SuiUtils,
43
+ constants: SuiConstants,
44
+ getters: SuiGetters,
45
+ transformer: { transformEmberVaultToIVault: transformer_1.transformEmberVaultToIVault, transformEmberVaultsToIVaults: transformer_1.transformEmberVaultsToIVaults },
46
+ };
47
+ class SuiAdapter {
48
+ constructor(apiBaseUrl = SuiConstants.EMBER_API_BASE_URL, chainId = SuiConstants.SUI_CHAIN_ID) {
49
+ this._apiBaseUrl = apiBaseUrl;
50
+ this._chainId = chainId;
51
+ }
52
+ get apiBaseUrl() {
53
+ return this._apiBaseUrl;
54
+ }
55
+ get chainId() {
56
+ return this._chainId;
57
+ }
58
+ async getEmberVaults(options) {
59
+ return await SuiGetters.getEmberVaults(options);
60
+ }
61
+ async getEmberTVL(limit = 1) {
62
+ return await SuiGetters.getEmberTVL(limit);
63
+ }
64
+ convertFromE9(value) {
65
+ return SuiUtils.convertFromE9(value);
66
+ }
67
+ calculateUtilization(current, maximum) {
68
+ return SuiUtils.calculateUtilization(current, maximum);
69
+ }
70
+ isSuiAddress(address) {
71
+ return SuiUtils.isSuiAddress(address);
72
+ }
73
+ isSuiVault(chainId) {
74
+ return SuiUtils.isSuiVault(chainId);
75
+ }
76
+ transformEmberVaultToIVault(emberVault) {
77
+ return (0, transformer_1.transformEmberVaultToIVault)(emberVault);
78
+ }
79
+ transformEmberVaultsToIVaults(emberVaults) {
80
+ return (0, transformer_1.transformEmberVaultsToIVaults)(emberVaults);
81
+ }
82
+ }
83
+ exports.default = SuiAdapter;
1
84
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src.ts/adapters/sui/index.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src.ts/adapters/sui/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAA4C;AAC5C,sDAAwC;AACxC,kDAAoC;AACpC,+CAGuB;AAGV,QAAA,GAAG,GAAG;IACjB,KAAK,EAAE,QAAQ;IACf,SAAS,EAAE,YAAY;IACvB,OAAO,EAAE,UAAU;IACnB,WAAW,EAAE,EAAE,2BAA2B,EAA3B,yCAA2B,EAAE,6BAA6B,EAA7B,2CAA6B,EAAE;CAC5E,CAAC;AAEF,MAAM,UAAU;IAId,YACE,aAAqB,YAAY,CAAC,kBAAkB,EACpD,UAAkB,YAAY,CAAC,YAAY;QAE3C,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAC9B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,cAAc,CAClB,OAAkC;QAElC,OAAO,MAAM,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,QAAgB,CAAC;QACjC,OAAO,MAAM,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAC7C,CAAC;IAED,aAAa,CAAC,KAAsB;QAClC,OAAO,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;IAED,oBAAoB,CAClB,OAAwB,EACxB,OAAwB;QAExB,OAAO,QAAQ,CAAC,oBAAoB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACzD,CAAC;IAED,YAAY,CAAC,OAAe;QAC1B,OAAO,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IACxC,CAAC;IAED,UAAU,CAAC,OAAe;QACxB,OAAO,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IAED,2BAA2B,CAAC,UAAuB;QACjD,OAAO,IAAA,yCAA2B,EAAC,UAAU,CAAC,CAAC;IACjD,CAAC;IAED,6BAA6B,CAAC,WAA0B;QACtD,OAAO,IAAA,2CAA6B,EAAC,WAAW,CAAC,CAAC;IACpD,CAAC;CACF;AAED,kBAAe,UAAU,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { IVault } from '../../types';
2
+ import { IEmberVault } from './types';
3
+ export declare function transformEmberVaultToIVault(emberVault: IEmberVault): IVault;
4
+ export declare function transformEmberVaultsToIVaults(emberVaults: IEmberVault[]): IVault[];
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.transformEmberVaultToIVault = transformEmberVaultToIVault;
4
+ exports.transformEmberVaultsToIVaults = transformEmberVaultsToIVaults;
5
+ const core_1 = require("../../core");
6
+ const constants_1 = require("./constants");
7
+ const utils_1 = require("./utils");
8
+ const ethers_1 = require("ethers");
9
+ function transformEmberVaultToIVault(emberVault) {
10
+ const depositTokenDecimals = emberVault.depositCoin?.decimals || constants_1.EMBER_DEFAULTS.DECIMALS;
11
+ const receiptTokenDecimals = emberVault.receiptCoin?.decimals || constants_1.EMBER_DEFAULTS.DECIMALS;
12
+ return {
13
+ address: emberVault.address,
14
+ name: emberVault.name,
15
+ chainId: constants_1.SUI_CHAIN_ID,
16
+ logoUrl: emberVault.logoUrl || '',
17
+ receipt: {
18
+ address: emberVault.receiptCoin?.address,
19
+ symbol: emberVault.receiptCoin?.symbol || '',
20
+ decimals: receiptTokenDecimals,
21
+ },
22
+ description: emberVault.description || '',
23
+ startDatetime: new Date(emberVault.createdAt || Date.now()).toISOString(),
24
+ status: emberVault.status === 'deprecated' ? 'closed' : 'active',
25
+ version: constants_1.EMBER_DEFAULTS.VERSION,
26
+ tags: ['Sui DeFi', emberVault.publicType].filter(Boolean),
27
+ isFeatured: false,
28
+ isVisible: emberVault.status === 'active' || emberVault.status === 'beta',
29
+ reserveTarget: 0,
30
+ reserveTolerance: 0,
31
+ decimals: receiptTokenDecimals,
32
+ totalAssets: {
33
+ normalized: (0, ethers_1.formatUnits)(BigInt(emberVault.totalDeposits || 0), depositTokenDecimals),
34
+ raw: (emberVault.totalDeposits || '0').toString(),
35
+ },
36
+ totalSupply: {
37
+ normalized: (0, ethers_1.formatUnits)(BigInt(emberVault.totalDeposits || 0), receiptTokenDecimals),
38
+ raw: (emberVault.totalDeposits || '0').toString(),
39
+ },
40
+ maxSupply: {
41
+ normalized: (0, ethers_1.formatUnits)(BigInt(emberVault.maxDepositsAllowed || 0), depositTokenDecimals),
42
+ raw: (emberVault.maxDepositsAllowed || '0').toString(),
43
+ },
44
+ depositAssets: [
45
+ {
46
+ address: emberVault.depositCoin?.address,
47
+ symbol: emberVault.depositCoin?.symbol || '',
48
+ decimals: depositTokenDecimals,
49
+ },
50
+ ],
51
+ apy: {
52
+ apy: (0, utils_1.convertFromE9)(emberVault.reportedApy?.apyE9 || 0) * 100,
53
+ explainer: '',
54
+ liquidApy: 0,
55
+ rewardsClaimable: 0,
56
+ rewardsCompounded: 0,
57
+ underlyingApy: (0, utils_1.convertFromE9)(emberVault.reportedApy?.apyE9 || 0) * 100,
58
+ },
59
+ operator: '',
60
+ rewards: {
61
+ points: '5x Upshift Points',
62
+ multiplier: 5,
63
+ multipliers: [
64
+ {
65
+ timestamp: 1759444200,
66
+ value: 5,
67
+ },
68
+ ],
69
+ additionalPoints: ['5x Upshift Points'],
70
+ },
71
+ strategists: (emberVault.managers ||
72
+ emberVault.subAccounts?.map((s) => s.manager) ||
73
+ []).map((manager) => ({
74
+ address: manager?.id || '',
75
+ logo: manager?.logoUrl || '',
76
+ name: manager?.name || 'Unknown',
77
+ })),
78
+ fees: {
79
+ management: (0, utils_1.convertFromE9)(emberVault.managementFeePercentE9 || 0) * 100,
80
+ isManagementWaived: false,
81
+ performance: (0, utils_1.convertFromE9)(emberVault.weeklyPerformanceFeeBpsE9 || 0) /
82
+ constants_1.EMBER_DEFAULTS.BPS_TO_PERCENT,
83
+ isPerformanceWaived: false,
84
+ },
85
+ lagDuration: 0,
86
+ maxDailyDrawdown: 0,
87
+ risk: 'medium',
88
+ isWithdrawalPaused: emberVault.status === 'deprecated',
89
+ isDepositPaused: emberVault.status === 'deprecated',
90
+ idleAssets: (0, core_1.toNormalizedBn)('0', receiptTokenDecimals),
91
+ linkOnly: true,
92
+ };
93
+ }
94
+ function transformEmberVaultsToIVaults(emberVaults) {
95
+ return emberVaults.map(transformEmberVaultToIVault);
96
+ }
97
+ //# sourceMappingURL=transformer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transformer.js","sourceRoot":"","sources":["../../../src.ts/adapters/sui/transformer.ts"],"names":[],"mappings":";;AAUA,kEA8GC;AAKD,sEAIC;AAhID,qCAA4C;AAE5C,2CAA2D;AAC3D,mCAAwC;AACxC,mCAAqC;AAKrC,SAAgB,2BAA2B,CAAC,UAAuB;IACjE,MAAM,oBAAoB,GACxB,UAAU,CAAC,WAAW,EAAE,QAAQ,IAAI,0BAAc,CAAC,QAAQ,CAAC;IAC9D,MAAM,oBAAoB,GACxB,UAAU,CAAC,WAAW,EAAE,QAAQ,IAAI,0BAAc,CAAC,QAAQ,CAAC;IAE9D,OAAO;QACL,OAAO,EAAE,UAAU,CAAC,OAAmB;QACvC,IAAI,EAAE,UAAU,CAAC,IAAI;QACrB,OAAO,EAAE,wBAAY;QACrB,OAAO,EAAE,UAAU,CAAC,OAAO,IAAI,EAAE;QAEjC,OAAO,EAAE;YACP,OAAO,EAAE,UAAU,CAAC,WAAW,EAAE,OAAmB;YACpD,MAAM,EAAE,UAAU,CAAC,WAAW,EAAE,MAAM,IAAI,EAAE;YAC5C,QAAQ,EAAE,oBAAoB;SAC/B;QAED,WAAW,EAAE,UAAU,CAAC,WAAW,IAAI,EAAE;QACzC,aAAa,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,WAAW,EAAE;QACzE,MAAM,EAAE,UAAU,CAAC,MAAM,KAAK,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ;QAChE,OAAO,EAAE,0BAAc,CAAC,OAAO;QAC/B,IAAI,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QACzD,UAAU,EAAE,KAAK;QACjB,SAAS,EAAE,UAAU,CAAC,MAAM,KAAK,QAAQ,IAAI,UAAU,CAAC,MAAM,KAAK,MAAM;QACzE,aAAa,EAAE,CAAC;QAChB,gBAAgB,EAAE,CAAC;QACnB,QAAQ,EAAE,oBAAoB;QAE9B,WAAW,EAAE;YACX,UAAU,EAAE,IAAA,oBAAW,EACrB,MAAM,CAAC,UAAU,CAAC,aAAa,IAAI,CAAC,CAAC,EACrC,oBAAoB,CACrB;YACD,GAAG,EAAE,CAAC,UAAU,CAAC,aAAa,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE;SAClD;QACD,WAAW,EAAE;YACX,UAAU,EAAE,IAAA,oBAAW,EACrB,MAAM,CAAC,UAAU,CAAC,aAAa,IAAI,CAAC,CAAC,EACrC,oBAAoB,CACrB;YACD,GAAG,EAAE,CAAC,UAAU,CAAC,aAAa,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE;SAClD;QACD,SAAS,EAAE;YACT,UAAU,EAAE,IAAA,oBAAW,EACrB,MAAM,CAAC,UAAU,CAAC,kBAAkB,IAAI,CAAC,CAAC,EAC1C,oBAAoB,CACrB;YACD,GAAG,EAAE,CAAC,UAAU,CAAC,kBAAkB,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE;SACvD;QAED,aAAa,EAAE;YACb;gBACE,OAAO,EAAE,UAAU,CAAC,WAAW,EAAE,OAAmB;gBACpD,MAAM,EAAE,UAAU,CAAC,WAAW,EAAE,MAAM,IAAI,EAAE;gBAC5C,QAAQ,EAAE,oBAAoB;aAC/B;SACF;QAED,GAAG,EAAE;YACH,GAAG,EAAE,IAAA,qBAAa,EAAC,UAAU,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,CAAC,GAAG,GAAG;YAC5D,SAAS,EAAE,EAAE;YACb,SAAS,EAAE,CAAC;YACZ,gBAAgB,EAAE,CAAC;YACnB,iBAAiB,EAAE,CAAC;YACpB,aAAa,EAAE,IAAA,qBAAa,EAAC,UAAU,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,CAAC,GAAG,GAAG;SACvE;QAED,QAAQ,EAAE,EAAc;QAExB,OAAO,EAAE;YACP,MAAM,EAAE,mBAAmB;YAC3B,UAAU,EAAE,CAAC;YACb,WAAW,EAAE;gBACX;oBACE,SAAS,EAAE,UAAU;oBACrB,KAAK,EAAE,CAAC;iBACT;aACF;YACD,gBAAgB,EAAE,CAAC,mBAAmB,CAAC;SACxC;QAED,WAAW,EAAE,CACX,UAAU,CAAC,QAAQ;YACnB,UAAU,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;YAC7C,EAAE,CACH,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAClB,OAAO,EAAG,OAAO,EAAE,EAAe,IAAK,EAAe;YACtD,IAAI,EAAE,OAAO,EAAE,OAAO,IAAI,EAAE;YAC5B,IAAI,EAAE,OAAO,EAAE,IAAI,IAAI,SAAS;SACjC,CAAC,CAAC;QAEH,IAAI,EAAE;YACJ,UAAU,EAAE,IAAA,qBAAa,EAAC,UAAU,CAAC,sBAAsB,IAAI,CAAC,CAAC,GAAG,GAAG;YACvE,kBAAkB,EAAE,KAAK;YACzB,WAAW,EACT,IAAA,qBAAa,EAAC,UAAU,CAAC,yBAAyB,IAAI,CAAC,CAAC;gBACxD,0BAAc,CAAC,cAAc;YAC/B,mBAAmB,EAAE,KAAK;SAC3B;QAED,WAAW,EAAE,CAAC;QACd,gBAAgB,EAAE,CAAC;QACnB,IAAI,EAAE,QAAQ;QACd,kBAAkB,EAAE,UAAU,CAAC,MAAM,KAAK,YAAY;QACtD,eAAe,EAAE,UAAU,CAAC,MAAM,KAAK,YAAY;QACnD,UAAU,EAAE,IAAA,qBAAc,EAAC,GAAG,EAAE,oBAAoB,CAAC;QAErD,QAAQ,EAAE,IAAI;KACf,CAAC;AACJ,CAAC;AAKD,SAAgB,6BAA6B,CAC3C,WAA0B;IAE1B,OAAO,WAAW,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;AACtD,CAAC"}
@@ -0,0 +1,62 @@
1
+ export interface IEmberVault {
2
+ address: string;
3
+ id: string;
4
+ name: string;
5
+ description: string;
6
+ logoUrl: string;
7
+ status: 'active' | 'beta' | 'deprecated';
8
+ publicType: string;
9
+ strategy: string;
10
+ createdAt: number;
11
+ totalDeposits: string;
12
+ totalDepositsInUsdE9: string;
13
+ maxDepositsAllowed: string;
14
+ rateE9: string;
15
+ managementFeePercentE9: string;
16
+ weeklyPerformanceFeeBpsE9: string;
17
+ withdrawalPeriodDays: number;
18
+ minWithdrawalSharesE9: string;
19
+ depositCoin: {
20
+ address: string;
21
+ symbol: string;
22
+ name: string;
23
+ decimals: number;
24
+ logoUrl: string;
25
+ priceE9: string;
26
+ type: string;
27
+ };
28
+ receiptCoin: {
29
+ address: string;
30
+ symbol: string;
31
+ name: string;
32
+ decimals: number;
33
+ logoUrl: string;
34
+ priceE9: string;
35
+ type: string;
36
+ };
37
+ reportedApy: {
38
+ apyE9: string;
39
+ updatedAt: string;
40
+ };
41
+ managers: Array<{
42
+ id: string;
43
+ name: string;
44
+ logoUrl: string;
45
+ websiteUrl: string;
46
+ }>;
47
+ subAccounts: Array<{
48
+ address: string;
49
+ manager: {
50
+ id: string;
51
+ name: string;
52
+ logoUrl: string;
53
+ websiteUrl: string;
54
+ };
55
+ }>;
56
+ rewards: any[];
57
+ }
58
+ export interface IFetchEmberVaultsOptions {
59
+ limit?: number;
60
+ offset?: number;
61
+ status?: string;
62
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src.ts/adapters/sui/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ export declare function convertFromE9(value: string | number): number;
2
+ export declare function calculateUtilization(current: string | number, maximum: string | number): number;
3
+ export declare function isSuiAddress(address: string): boolean;
4
+ export declare function isSuiVault(chainId: number): boolean;