index.d.ts 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. export const torn: Torn
  2. export const governance: Address
  3. export const governanceImpl: Address
  4. export const voucher: Voucher
  5. export const miningV2: Mining
  6. export const rewardSwap: RewardSwap
  7. export const tornadoTrees: TornadoTrees
  8. export const tornadoProxy: Address
  9. export const tornadoProxyLight: Address
  10. export const rewardVerifier: Address
  11. export const treeUpdateVerifier: Address
  12. export const withdrawVerifier: Address
  13. export const poseidonHasher2: Address
  14. export const poseidonHasher3: Address
  15. export const feeManager: Address
  16. export const tornadoStakingRewards: Address
  17. export const relayerRegistry: Address
  18. export const tornadoRouter: Address
  19. export const instanceRegistry: Address
  20. export const deployer: Address
  21. export const vesting: Vesting
  22. export const instances: Instances
  23. export type availableIds = 1 | 5 | 10 | 56 | 100 | 137 | 42161 | 43114
  24. export type availableTokens = 'eth' | 'dai' | 'cdai' | 'usdc' | 'usdt' | 'wbtc' | 'xdai' | 'matic' | 'avax' | 'bnb'
  25. export type netIds = `netId${availableIds}`
  26. export type Address = {
  27. address: string
  28. }
  29. export type Instances = {
  30. [p in netIds]: NetInstances;
  31. };
  32. export type NetInstances = {
  33. [p in availableTokens]?: TInstance;
  34. }
  35. export type TInstance = {
  36. instanceAddress: InstanceAddress
  37. tokenAddress?: string
  38. symbol: string
  39. decimals: number
  40. }
  41. export type InstanceAddress = {
  42. '0.1'?: string
  43. '1'?: string
  44. '10'?: string
  45. '100'?: string
  46. '500'?: string
  47. '1000'?: string
  48. '5000'?: string
  49. '10000'?: string
  50. '50000'?: string
  51. '100000'?: string
  52. '500000'?: string
  53. '5000000'?: string
  54. }
  55. export type Mining = Address & {
  56. initialBalance: string
  57. rates: Rate[]
  58. }
  59. export type Rate = {
  60. instance: string
  61. value: string
  62. }
  63. export type RewardSwap = Address & {
  64. poolWeight: number
  65. }
  66. export type Torn = Address & {
  67. cap: string
  68. pausePeriod: number
  69. distribution: { [key: string]: Distribution }
  70. }
  71. export type Distribution = {
  72. to: string
  73. amount: string
  74. }
  75. export type TornadoTrees = Address & {
  76. levels: number
  77. }
  78. export interface Vesting {
  79. team1: Governance;
  80. team2: Governance;
  81. team3: Governance;
  82. team4: Governance;
  83. team5: Governance;
  84. governance: Governance;
  85. }
  86. export type Governance = Address & {
  87. cliff: number
  88. duration: number
  89. beneficiary?: string
  90. }
  91. export type Voucher = Address & {
  92. duration: number
  93. }