@factordao/governance 1.0.5 → 1.0.7

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.
package/dist/cjs/index.js CHANGED
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FactorEnvironment = void 0;
3
4
  exports.getAvailableVaultsForVoting = getAvailableVaultsForVoting;
4
5
  exports.getVotesForUser = getVotesForUser;
5
6
  exports.getVotesForAllUsers = getVotesForAllUsers;
@@ -7,7 +8,13 @@ exports.getRewardsForVault = getRewardsForVault;
7
8
  exports.getRewardsForAllVaults = getRewardsForAllVaults;
8
9
  exports.getTokenBalancesForUser = getTokenBalancesForUser;
9
10
  exports.getTokenBalancesForAllUsers = getTokenBalancesForAllUsers;
11
+ exports.getVaultsWithFullData = getVaultsWithFullData;
10
12
  const subgraphs_1 = require("./utils/subgraphs");
13
+ const types_1 = require("./types");
14
+ const tokenlist_1 = require("@factordao/tokenlist");
15
+ // Re-export types and enums for consumers
16
+ var types_2 = require("./types");
17
+ Object.defineProperty(exports, "FactorEnvironment", { enumerable: true, get: function () { return types_2.FactorEnvironment; } });
11
18
  async function getAvailableVaultsForVoting(chainId, environment) {
12
19
  const subgraphUrl = subgraphs_1.factorScaleSubgraphUrl[chainId]?.[environment];
13
20
  if (!subgraphUrl) {
@@ -105,6 +112,7 @@ function transformVaultReward(data) {
105
112
  return {
106
113
  vault: data.vault,
107
114
  fctrPerSec,
115
+ fctrPerSecFmt: formatWeiToDecimal(fctrPerSec),
108
116
  incentiveEndsAt,
109
117
  block: Number(data.block),
110
118
  timestamp,
@@ -310,4 +318,178 @@ async function getTokenBalancesForAllUsers(chainId, environment) {
310
318
  }
311
319
  return balancesByUser;
312
320
  }
321
+ // Helper to get user's total voting power from their balances
322
+ function getUserVotingPower(userBalances) {
323
+ if (!userBalances)
324
+ return 0n;
325
+ // Sum up voting power from all veFCTR positions
326
+ return userBalances.reduce((total, balance) => {
327
+ if (balance.votingPower !== null) {
328
+ return total + balance.votingPower;
329
+ }
330
+ return total;
331
+ }, 0n);
332
+ }
333
+ // Supported chains for rewards fetching
334
+ const REWARD_CHAINS = [
335
+ tokenlist_1.ChainId.ARBITRUM_ONE,
336
+ tokenlist_1.ChainId.BASE,
337
+ tokenlist_1.ChainId.OPTIMISM,
338
+ tokenlist_1.ChainId.SONIC,
339
+ ];
340
+ // FCTR price API
341
+ const FCTR_PRICE_API = 'https://factor-price-api-main.fly.dev/prices/arbitrum:0x6dd963c510c2d2f09d5eddb48ede45fed063eb36';
342
+ // Vault TVL API URLs by environment
343
+ const VAULT_TVL_API_URL = {
344
+ [types_1.FactorEnvironment.TESTING]: 'https://factor-studio-stats-api-staging.fly.dev/utils/pro-vaults',
345
+ [types_1.FactorEnvironment.STAGING]: 'https://factor-studio-stats-api-staging.fly.dev/utils/pro-vaults',
346
+ [types_1.FactorEnvironment.PRODUCTION]: 'https://factor-studio-stats-api.fly.dev/utils/pro-vaults',
347
+ };
348
+ // Seconds in a year for APY calculation
349
+ const SECONDS_PER_YEAR = 31_536_000;
350
+ async function getFctrPrice() {
351
+ const response = await fetch(FCTR_PRICE_API);
352
+ const data = await response.json();
353
+ const fctrKey = 'arbitrum:0x6dd963c510c2d2f09d5eddb48ede45fed063eb36';
354
+ return data.coins[fctrKey]?.price ?? 0;
355
+ }
356
+ async function getVaultTvlMap(environment) {
357
+ const apiUrl = VAULT_TVL_API_URL[environment];
358
+ if (!apiUrl) {
359
+ return {};
360
+ }
361
+ const response = await fetch(apiUrl);
362
+ const data = await response.json();
363
+ const tvlMap = {};
364
+ for (const vault of data) {
365
+ tvlMap[vault.address.toLowerCase()] = parseFloat(vault.tvlUsd) || 0;
366
+ }
367
+ return tvlMap;
368
+ }
369
+ /**
370
+ * Get all active vaults with complete data:
371
+ * - Vault info (id, chainId)
372
+ * - Votes with allocated veFCTR (voting power * weight percentage)
373
+ * - Rewards across all supported chains
374
+ *
375
+ * @param chainId - The chain ID where vaults are deployed
376
+ * @param environment - The environment (testing, staging, production)
377
+ * @returns Array of aggregated vault data
378
+ */
379
+ async function getVaultsWithFullData(chainId, environment) {
380
+ // Fetch all data in parallel
381
+ const [vaults, vaultVotes, userBalances, fctrPrice, vaultTvlMap] = await Promise.all([
382
+ getAvailableVaultsForVoting(chainId, environment),
383
+ getVotesForAllUsers(chainId, environment),
384
+ getTokenBalancesForAllUsers(chainId, environment),
385
+ getFctrPrice(),
386
+ getVaultTvlMap(environment),
387
+ ]);
388
+ // Create a map of user address to voting power for quick lookup
389
+ const userVotingPowerMap = {};
390
+ for (const [userAddress, balances] of Object.entries(userBalances)) {
391
+ userVotingPowerMap[userAddress] = getUserVotingPower(balances);
392
+ }
393
+ // Fetch rewards for all vaults across all chains in parallel
394
+ const vaultAddresses = vaults.map((v) => v.id.toLowerCase());
395
+ // Fetch rewards for each vault on each chain
396
+ const rewardPromises = [];
397
+ for (const vaultAddress of vaultAddresses) {
398
+ for (const rewardChainId of REWARD_CHAINS) {
399
+ rewardPromises.push(getRewardsForVault(rewardChainId, environment, vaultAddress)
400
+ .then((reward) => ({ vaultAddress, chainId: rewardChainId, reward }))
401
+ .catch(() => ({
402
+ vaultAddress,
403
+ chainId: rewardChainId,
404
+ reward: null,
405
+ })));
406
+ }
407
+ }
408
+ const allRewards = await Promise.all(rewardPromises);
409
+ // Calculate total votes across all vaults (sum of all allocated veFCTR)
410
+ // We need to calculate this first to determine each vault's share
411
+ const vaultAllocations = {};
412
+ for (const vault of vaults) {
413
+ const vaultAddress = vault.id.toLowerCase();
414
+ const votes = vaultVotes[vaultAddress] || [];
415
+ let totalAllocation = 0n;
416
+ for (const vote of votes) {
417
+ const votingPower = userVotingPowerMap[vote.userAddress] || 0n;
418
+ const weightBigInt = BigInt(vote.weight);
419
+ const allocatedVeFCTR = (votingPower * weightBigInt) / DECIMALS_DIVISOR;
420
+ totalAllocation += allocatedVeFCTR;
421
+ }
422
+ vaultAllocations[vaultAddress] = totalAllocation;
423
+ }
424
+ // Calculate total votes across all vaults
425
+ const totalVotes = Object.values(vaultAllocations).reduce((sum, alloc) => sum + alloc, 0n);
426
+ // Group rewards by vault address and calculate scaleAPY
427
+ const rewardsByVault = {};
428
+ for (const { vaultAddress, chainId: rewardChainId, reward } of allRewards) {
429
+ if (!rewardsByVault[vaultAddress]) {
430
+ rewardsByVault[vaultAddress] = [];
431
+ }
432
+ // Get TVL for this vault
433
+ const tvlUsd = vaultTvlMap[vaultAddress] ?? null;
434
+ // Calculate scaleAPY if we have all required data
435
+ let scaleRewardPerSecond = null;
436
+ let scaleRewardPerSecondUsd = null;
437
+ let scaleAPY = null;
438
+ if (reward && tvlUsd && tvlUsd > 0 && totalVotes > 0n) {
439
+ const vaultVote = vaultAllocations[vaultAddress] || 0n;
440
+ // scaleRewardPerSecond = fctrPerSec × (vaultVote / totalVotes)
441
+ // We need to convert from bigint to number for the calculation
442
+ const fctrPerSecNum = Number(reward.fctrPerSec) / Number(DECIMALS_DIVISOR);
443
+ const voteRatio = Number(vaultVote) / Number(totalVotes);
444
+ scaleRewardPerSecond = fctrPerSecNum * voteRatio;
445
+ // scaleRewardPerSecondUsd = scaleRewardPerSecond × fctrPrice
446
+ scaleRewardPerSecondUsd = scaleRewardPerSecond * fctrPrice;
447
+ // scaleAPY = (scaleRewardPerSecond × rewardPriceUsd × 31,536,000 × 100) / vaultTvlUsd
448
+ scaleAPY =
449
+ (scaleRewardPerSecond * fctrPrice * SECONDS_PER_YEAR * 100) / tvlUsd;
450
+ }
451
+ rewardsByVault[vaultAddress].push({
452
+ chainId: rewardChainId,
453
+ reward,
454
+ tvlUsd,
455
+ scaleRewardPerSecond,
456
+ scaleRewardPerSecondUsd,
457
+ scaleAPY,
458
+ });
459
+ }
460
+ // Build the aggregated vault data
461
+ const aggregatedVaults = vaults.map((vault) => {
462
+ const vaultAddress = vault.id.toLowerCase();
463
+ const votes = vaultVotes[vaultAddress] || [];
464
+ // Calculate allocated veFCTR for each vote
465
+ const voteAllocations = votes.map((vote) => {
466
+ const votingPower = userVotingPowerMap[vote.userAddress] || 0n;
467
+ // Weight is stored in 18 decimals (1e18 = 100%), so divide by 1e18
468
+ const weightBigInt = BigInt(vote.weight);
469
+ const allocatedVeFCTR = (votingPower * weightBigInt) / DECIMALS_DIVISOR;
470
+ // Convert weight to percentage (0-100) for display
471
+ const weightPercentage = Number(weightBigInt) / 1e16; // 1e18 = 100%, so divide by 1e16 to get percentage
472
+ return {
473
+ userAddress: vote.userAddress,
474
+ weight: weightPercentage,
475
+ timestamp: vote.timestamp,
476
+ votingPower,
477
+ votingPowerFmt: formatBalanceToDecimal(votingPower, 18),
478
+ allocatedVeFCTR,
479
+ allocatedVeFCTRFmt: formatBalanceToDecimal(allocatedVeFCTR, 18),
480
+ };
481
+ });
482
+ // Calculate total allocated veFCTR for this vault
483
+ const totalAllocatedVeFCTR = voteAllocations.reduce((total, vote) => total + vote.allocatedVeFCTR, 0n);
484
+ return {
485
+ id: vault.id,
486
+ chainId: vault.chainId,
487
+ votes: voteAllocations,
488
+ totalAllocatedVeFCTR,
489
+ totalAllocatedVeFCTRFmt: formatBalanceToDecimal(totalAllocatedVeFCTR, 18),
490
+ rewards: rewardsByVault[vaultAddress] || [],
491
+ };
492
+ });
493
+ return aggregatedVaults;
494
+ }
313
495
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/dist/mjs/index.js CHANGED
@@ -1,4 +1,8 @@
1
1
  import { factorScaleSubgraphUrl, factorGaugeControllerSubgraphUrl, factorFCTRSubgraphUrl, fetchPaginatedData, } from './utils/subgraphs';
2
+ import { FactorEnvironment, } from './types';
3
+ import { ChainId } from '@factordao/tokenlist';
4
+ // Re-export types and enums for consumers
5
+ export { FactorEnvironment } from './types';
2
6
  export async function getAvailableVaultsForVoting(chainId, environment) {
3
7
  const subgraphUrl = factorScaleSubgraphUrl[chainId]?.[environment];
4
8
  if (!subgraphUrl) {
@@ -96,6 +100,7 @@ function transformVaultReward(data) {
96
100
  return {
97
101
  vault: data.vault,
98
102
  fctrPerSec,
103
+ fctrPerSecFmt: formatWeiToDecimal(fctrPerSec),
99
104
  incentiveEndsAt,
100
105
  block: Number(data.block),
101
106
  timestamp,
@@ -301,4 +306,178 @@ export async function getTokenBalancesForAllUsers(chainId, environment) {
301
306
  }
302
307
  return balancesByUser;
303
308
  }
309
+ // Helper to get user's total voting power from their balances
310
+ function getUserVotingPower(userBalances) {
311
+ if (!userBalances)
312
+ return 0n;
313
+ // Sum up voting power from all veFCTR positions
314
+ return userBalances.reduce((total, balance) => {
315
+ if (balance.votingPower !== null) {
316
+ return total + balance.votingPower;
317
+ }
318
+ return total;
319
+ }, 0n);
320
+ }
321
+ // Supported chains for rewards fetching
322
+ const REWARD_CHAINS = [
323
+ ChainId.ARBITRUM_ONE,
324
+ ChainId.BASE,
325
+ ChainId.OPTIMISM,
326
+ ChainId.SONIC,
327
+ ];
328
+ // FCTR price API
329
+ const FCTR_PRICE_API = 'https://factor-price-api-main.fly.dev/prices/arbitrum:0x6dd963c510c2d2f09d5eddb48ede45fed063eb36';
330
+ // Vault TVL API URLs by environment
331
+ const VAULT_TVL_API_URL = {
332
+ [FactorEnvironment.TESTING]: 'https://factor-studio-stats-api-staging.fly.dev/utils/pro-vaults',
333
+ [FactorEnvironment.STAGING]: 'https://factor-studio-stats-api-staging.fly.dev/utils/pro-vaults',
334
+ [FactorEnvironment.PRODUCTION]: 'https://factor-studio-stats-api.fly.dev/utils/pro-vaults',
335
+ };
336
+ // Seconds in a year for APY calculation
337
+ const SECONDS_PER_YEAR = 31_536_000;
338
+ async function getFctrPrice() {
339
+ const response = await fetch(FCTR_PRICE_API);
340
+ const data = await response.json();
341
+ const fctrKey = 'arbitrum:0x6dd963c510c2d2f09d5eddb48ede45fed063eb36';
342
+ return data.coins[fctrKey]?.price ?? 0;
343
+ }
344
+ async function getVaultTvlMap(environment) {
345
+ const apiUrl = VAULT_TVL_API_URL[environment];
346
+ if (!apiUrl) {
347
+ return {};
348
+ }
349
+ const response = await fetch(apiUrl);
350
+ const data = await response.json();
351
+ const tvlMap = {};
352
+ for (const vault of data) {
353
+ tvlMap[vault.address.toLowerCase()] = parseFloat(vault.tvlUsd) || 0;
354
+ }
355
+ return tvlMap;
356
+ }
357
+ /**
358
+ * Get all active vaults with complete data:
359
+ * - Vault info (id, chainId)
360
+ * - Votes with allocated veFCTR (voting power * weight percentage)
361
+ * - Rewards across all supported chains
362
+ *
363
+ * @param chainId - The chain ID where vaults are deployed
364
+ * @param environment - The environment (testing, staging, production)
365
+ * @returns Array of aggregated vault data
366
+ */
367
+ export async function getVaultsWithFullData(chainId, environment) {
368
+ // Fetch all data in parallel
369
+ const [vaults, vaultVotes, userBalances, fctrPrice, vaultTvlMap] = await Promise.all([
370
+ getAvailableVaultsForVoting(chainId, environment),
371
+ getVotesForAllUsers(chainId, environment),
372
+ getTokenBalancesForAllUsers(chainId, environment),
373
+ getFctrPrice(),
374
+ getVaultTvlMap(environment),
375
+ ]);
376
+ // Create a map of user address to voting power for quick lookup
377
+ const userVotingPowerMap = {};
378
+ for (const [userAddress, balances] of Object.entries(userBalances)) {
379
+ userVotingPowerMap[userAddress] = getUserVotingPower(balances);
380
+ }
381
+ // Fetch rewards for all vaults across all chains in parallel
382
+ const vaultAddresses = vaults.map((v) => v.id.toLowerCase());
383
+ // Fetch rewards for each vault on each chain
384
+ const rewardPromises = [];
385
+ for (const vaultAddress of vaultAddresses) {
386
+ for (const rewardChainId of REWARD_CHAINS) {
387
+ rewardPromises.push(getRewardsForVault(rewardChainId, environment, vaultAddress)
388
+ .then((reward) => ({ vaultAddress, chainId: rewardChainId, reward }))
389
+ .catch(() => ({
390
+ vaultAddress,
391
+ chainId: rewardChainId,
392
+ reward: null,
393
+ })));
394
+ }
395
+ }
396
+ const allRewards = await Promise.all(rewardPromises);
397
+ // Calculate total votes across all vaults (sum of all allocated veFCTR)
398
+ // We need to calculate this first to determine each vault's share
399
+ const vaultAllocations = {};
400
+ for (const vault of vaults) {
401
+ const vaultAddress = vault.id.toLowerCase();
402
+ const votes = vaultVotes[vaultAddress] || [];
403
+ let totalAllocation = 0n;
404
+ for (const vote of votes) {
405
+ const votingPower = userVotingPowerMap[vote.userAddress] || 0n;
406
+ const weightBigInt = BigInt(vote.weight);
407
+ const allocatedVeFCTR = (votingPower * weightBigInt) / DECIMALS_DIVISOR;
408
+ totalAllocation += allocatedVeFCTR;
409
+ }
410
+ vaultAllocations[vaultAddress] = totalAllocation;
411
+ }
412
+ // Calculate total votes across all vaults
413
+ const totalVotes = Object.values(vaultAllocations).reduce((sum, alloc) => sum + alloc, 0n);
414
+ // Group rewards by vault address and calculate scaleAPY
415
+ const rewardsByVault = {};
416
+ for (const { vaultAddress, chainId: rewardChainId, reward } of allRewards) {
417
+ if (!rewardsByVault[vaultAddress]) {
418
+ rewardsByVault[vaultAddress] = [];
419
+ }
420
+ // Get TVL for this vault
421
+ const tvlUsd = vaultTvlMap[vaultAddress] ?? null;
422
+ // Calculate scaleAPY if we have all required data
423
+ let scaleRewardPerSecond = null;
424
+ let scaleRewardPerSecondUsd = null;
425
+ let scaleAPY = null;
426
+ if (reward && tvlUsd && tvlUsd > 0 && totalVotes > 0n) {
427
+ const vaultVote = vaultAllocations[vaultAddress] || 0n;
428
+ // scaleRewardPerSecond = fctrPerSec × (vaultVote / totalVotes)
429
+ // We need to convert from bigint to number for the calculation
430
+ const fctrPerSecNum = Number(reward.fctrPerSec) / Number(DECIMALS_DIVISOR);
431
+ const voteRatio = Number(vaultVote) / Number(totalVotes);
432
+ scaleRewardPerSecond = fctrPerSecNum * voteRatio;
433
+ // scaleRewardPerSecondUsd = scaleRewardPerSecond × fctrPrice
434
+ scaleRewardPerSecondUsd = scaleRewardPerSecond * fctrPrice;
435
+ // scaleAPY = (scaleRewardPerSecond × rewardPriceUsd × 31,536,000 × 100) / vaultTvlUsd
436
+ scaleAPY =
437
+ (scaleRewardPerSecond * fctrPrice * SECONDS_PER_YEAR * 100) / tvlUsd;
438
+ }
439
+ rewardsByVault[vaultAddress].push({
440
+ chainId: rewardChainId,
441
+ reward,
442
+ tvlUsd,
443
+ scaleRewardPerSecond,
444
+ scaleRewardPerSecondUsd,
445
+ scaleAPY,
446
+ });
447
+ }
448
+ // Build the aggregated vault data
449
+ const aggregatedVaults = vaults.map((vault) => {
450
+ const vaultAddress = vault.id.toLowerCase();
451
+ const votes = vaultVotes[vaultAddress] || [];
452
+ // Calculate allocated veFCTR for each vote
453
+ const voteAllocations = votes.map((vote) => {
454
+ const votingPower = userVotingPowerMap[vote.userAddress] || 0n;
455
+ // Weight is stored in 18 decimals (1e18 = 100%), so divide by 1e18
456
+ const weightBigInt = BigInt(vote.weight);
457
+ const allocatedVeFCTR = (votingPower * weightBigInt) / DECIMALS_DIVISOR;
458
+ // Convert weight to percentage (0-100) for display
459
+ const weightPercentage = Number(weightBigInt) / 1e16; // 1e18 = 100%, so divide by 1e16 to get percentage
460
+ return {
461
+ userAddress: vote.userAddress,
462
+ weight: weightPercentage,
463
+ timestamp: vote.timestamp,
464
+ votingPower,
465
+ votingPowerFmt: formatBalanceToDecimal(votingPower, 18),
466
+ allocatedVeFCTR,
467
+ allocatedVeFCTRFmt: formatBalanceToDecimal(allocatedVeFCTR, 18),
468
+ };
469
+ });
470
+ // Calculate total allocated veFCTR for this vault
471
+ const totalAllocatedVeFCTR = voteAllocations.reduce((total, vote) => total + vote.allocatedVeFCTR, 0n);
472
+ return {
473
+ id: vault.id,
474
+ chainId: vault.chainId,
475
+ votes: voteAllocations,
476
+ totalAllocatedVeFCTR,
477
+ totalAllocatedVeFCTRFmt: formatBalanceToDecimal(totalAllocatedVeFCTR, 18),
478
+ rewards: rewardsByVault[vaultAddress] || [],
479
+ };
480
+ });
481
+ return aggregatedVaults;
482
+ }
304
483
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@factordao/governance",
3
- "version": "1.0.5",
3
+ "version": "1.0.7",
4
4
  "license": "MIT",
5
5
  "files": [
6
6
  "dist",
package/types/index.d.ts CHANGED
@@ -1,5 +1,7 @@
1
- import { FactorEnvironment, VaultVotes, VaultReward, UserTokenBalances, AllUsersTokenBalances } from './types';
1
+ import { FactorEnvironment, VaultVotes, VaultReward, UserTokenBalances, AllUsersTokenBalances, AggregatedVault } from './types';
2
2
  import { ChainId } from '@factordao/tokenlist';
3
+ export { FactorEnvironment } from './types';
4
+ export type { VaultVotes, VoteData, VaultReward, TokenBalance, UserTokenBalances, AllUsersTokenBalances, VaultVoteAllocation, VaultRewardByChain, AggregatedVault, } from './types';
3
5
  export declare function getAvailableVaultsForVoting(chainId: ChainId, environment: FactorEnvironment): Promise<any>;
4
6
  export declare function getVotesForUser(chainId: ChainId, environment: FactorEnvironment, user: string): Promise<any>;
5
7
  export declare function getVotesForAllUsers(chainId: ChainId, environment: FactorEnvironment): Promise<VaultVotes>;
@@ -7,3 +9,14 @@ export declare function getRewardsForVault(chainId: ChainId, environment: Factor
7
9
  export declare function getRewardsForAllVaults(chainId: ChainId, environment: FactorEnvironment): Promise<VaultReward[]>;
8
10
  export declare function getTokenBalancesForUser(chainId: ChainId, environment: FactorEnvironment, user: string): Promise<UserTokenBalances>;
9
11
  export declare function getTokenBalancesForAllUsers(chainId: ChainId, environment: FactorEnvironment): Promise<AllUsersTokenBalances>;
12
+ /**
13
+ * Get all active vaults with complete data:
14
+ * - Vault info (id, chainId)
15
+ * - Votes with allocated veFCTR (voting power * weight percentage)
16
+ * - Rewards across all supported chains
17
+ *
18
+ * @param chainId - The chain ID where vaults are deployed
19
+ * @param environment - The environment (testing, staging, production)
20
+ * @returns Array of aggregated vault data
21
+ */
22
+ export declare function getVaultsWithFullData(chainId: ChainId, environment: FactorEnvironment): Promise<AggregatedVault[]>;
@@ -26,6 +26,7 @@ export type VaultRewardData = {
26
26
  export type VaultReward = {
27
27
  vault: string;
28
28
  fctrPerSec: bigint;
29
+ fctrPerSecFmt: string;
29
30
  incentiveEndsAt: number;
30
31
  block: number;
31
32
  timestamp: number;
@@ -71,3 +72,28 @@ export type UserTokenBalances = {
71
72
  balances: TokenBalance[];
72
73
  };
73
74
  export type AllUsersTokenBalances = Record<string, TokenBalance[]>;
75
+ export type VaultVoteAllocation = {
76
+ userAddress: string;
77
+ weight: number;
78
+ timestamp: number;
79
+ votingPower: bigint;
80
+ votingPowerFmt: string;
81
+ allocatedVeFCTR: bigint;
82
+ allocatedVeFCTRFmt: string;
83
+ };
84
+ export type VaultRewardByChain = {
85
+ chainId: number;
86
+ reward: VaultReward | null;
87
+ tvlUsd: number | null;
88
+ scaleRewardPerSecond: number | null;
89
+ scaleRewardPerSecondUsd: number | null;
90
+ scaleAPY: number | null;
91
+ };
92
+ export type AggregatedVault = {
93
+ id: string;
94
+ chainId: number;
95
+ votes: VaultVoteAllocation[];
96
+ totalAllocatedVeFCTR: bigint;
97
+ totalAllocatedVeFCTRFmt: string;
98
+ rewards: VaultRewardByChain[];
99
+ };