levr-sdk 0.2.2 → 0.3.1

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 (131) hide show
  1. package/dist/esm/abis/ClankerAirdropV2.js +289 -0
  2. package/dist/esm/abis/ClankerVault.js +215 -0
  3. package/dist/esm/abis/LevrFactory_v1.js +23 -0
  4. package/dist/esm/abis/LevrFeeSplitterFactory_v1.js +197 -0
  5. package/dist/esm/abis/LevrFeeSplitter_v1.js +544 -0
  6. package/dist/esm/abis/LevrGovernor_v1.js +10 -0
  7. package/dist/esm/abis/index.js +4 -0
  8. package/dist/esm/airdrop.js +160 -0
  9. package/dist/esm/airdrop.js.map +1 -0
  10. package/dist/esm/build-calldatas-v4.js +3 -1
  11. package/dist/esm/build-calldatas-v4.js.map +1 -1
  12. package/dist/esm/build-clanker-v4.js +75 -25
  13. package/dist/esm/build-clanker-v4.js.map +1 -1
  14. package/dist/esm/client/hook/index.js +10 -0
  15. package/dist/esm/client/hook/index.js.map +1 -1
  16. package/dist/esm/client/hook/use-airdrop.js +8 -4
  17. package/dist/esm/client/hook/use-airdrop.js.map +1 -1
  18. package/dist/esm/client/hook/use-configure-splits.js +43 -0
  19. package/dist/esm/client/hook/use-configure-splits.js.map +1 -0
  20. package/dist/esm/client/hook/use-deploy.js +3 -3
  21. package/dist/esm/client/hook/use-deploy.js.map +1 -1
  22. package/dist/esm/client/hook/use-factory.js +33 -0
  23. package/dist/esm/client/hook/use-factory.js.map +1 -0
  24. package/dist/esm/client/hook/use-fee-receivers.js +3 -2
  25. package/dist/esm/client/hook/use-fee-receivers.js.map +1 -1
  26. package/dist/esm/client/hook/use-governance.js +18 -3
  27. package/dist/esm/client/hook/use-governance.js.map +1 -1
  28. package/dist/esm/client/hook/use-project.js +7 -3
  29. package/dist/esm/client/hook/use-project.js.map +1 -1
  30. package/dist/esm/client/hook/use-proposal.js +11 -5
  31. package/dist/esm/client/hook/use-proposal.js.map +1 -1
  32. package/dist/esm/client/hook/use-stake.js +1 -1
  33. package/dist/esm/client/hook/use-stake.js.map +1 -1
  34. package/dist/esm/client/hook/use-vault.js +67 -0
  35. package/dist/esm/client/hook/use-vault.js.map +1 -0
  36. package/dist/esm/client/levr-provider.js +18 -2
  37. package/dist/esm/client/levr-provider.js.map +1 -1
  38. package/dist/esm/client/query-keys.js +13 -1
  39. package/dist/esm/client/query-keys.js.map +1 -1
  40. package/dist/esm/constants.js +83 -6
  41. package/dist/esm/constants.js.map +1 -1
  42. package/dist/esm/deploy-v4.js +56 -3
  43. package/dist/esm/deploy-v4.js.map +1 -1
  44. package/dist/esm/factory.js +94 -0
  45. package/dist/esm/factory.js.map +1 -0
  46. package/dist/esm/fee-receivers.js +265 -4
  47. package/dist/esm/fee-receivers.js.map +1 -1
  48. package/dist/esm/fee-splitter.js +68 -0
  49. package/dist/esm/fee-splitter.js.map +1 -0
  50. package/dist/esm/governance.js +86 -9
  51. package/dist/esm/governance.js.map +1 -1
  52. package/dist/esm/index.js +5 -1
  53. package/dist/esm/index.js.map +1 -1
  54. package/dist/esm/ipfs-merkle-tree.js +130 -0
  55. package/dist/esm/ipfs-merkle-tree.js.map +1 -0
  56. package/dist/esm/project.js +114 -26
  57. package/dist/esm/project.js.map +1 -1
  58. package/dist/esm/schema/levr.schema.js +94 -33
  59. package/dist/esm/schema/levr.schema.js.map +1 -1
  60. package/dist/esm/stake.js +157 -19
  61. package/dist/esm/stake.js.map +1 -1
  62. package/dist/esm/vault.js +136 -0
  63. package/dist/esm/vault.js.map +1 -0
  64. package/dist/types/abis/ClankerAirdropV2.d.ts +573 -0
  65. package/dist/types/abis/ClankerVault.d.ts +407 -0
  66. package/dist/types/abis/LevrFactory_v1.d.ts +18 -0
  67. package/dist/types/abis/LevrFeeSplitterFactory_v1.d.ts +149 -0
  68. package/dist/types/abis/LevrFeeSplitter_v1.d.ts +422 -0
  69. package/dist/types/abis/LevrGovernor_v1.d.ts +8 -0
  70. package/dist/types/abis/index.d.ts +4 -0
  71. package/dist/types/airdrop.d.ts +18 -0
  72. package/dist/types/airdrop.d.ts.map +1 -0
  73. package/dist/types/build-calldatas-v4.d.ts +3 -0
  74. package/dist/types/build-calldatas-v4.d.ts.map +1 -1
  75. package/dist/types/build-clanker-v4.d.ts +6 -1
  76. package/dist/types/build-clanker-v4.d.ts.map +1 -1
  77. package/dist/types/client/hook/index.d.ts +10 -0
  78. package/dist/types/client/hook/index.d.ts.map +1 -1
  79. package/dist/types/client/hook/use-airdrop.d.ts +3 -1
  80. package/dist/types/client/hook/use-airdrop.d.ts.map +1 -1
  81. package/dist/types/client/hook/use-configure-splits.d.ts +17 -0
  82. package/dist/types/client/hook/use-configure-splits.d.ts.map +1 -0
  83. package/dist/types/client/hook/use-deploy.d.ts +21 -14
  84. package/dist/types/client/hook/use-deploy.d.ts.map +1 -1
  85. package/dist/types/client/hook/use-factory.d.ts +34 -0
  86. package/dist/types/client/hook/use-factory.d.ts.map +1 -0
  87. package/dist/types/client/hook/use-fee-receivers.d.ts +1 -1
  88. package/dist/types/client/hook/use-fee-receivers.d.ts.map +1 -1
  89. package/dist/types/client/hook/use-governance.d.ts +18 -2
  90. package/dist/types/client/hook/use-governance.d.ts.map +1 -1
  91. package/dist/types/client/hook/use-project.d.ts +169 -1
  92. package/dist/types/client/hook/use-project.d.ts.map +1 -1
  93. package/dist/types/client/hook/use-proposal.d.ts +3 -2
  94. package/dist/types/client/hook/use-proposal.d.ts.map +1 -1
  95. package/dist/types/client/hook/use-vault.d.ts +13 -0
  96. package/dist/types/client/hook/use-vault.d.ts.map +1 -0
  97. package/dist/types/client/levr-provider.d.ts +15 -1
  98. package/dist/types/client/levr-provider.d.ts.map +1 -1
  99. package/dist/types/client/query-keys.d.ts +13 -1
  100. package/dist/types/client/query-keys.d.ts.map +1 -1
  101. package/dist/types/constants.d.ts +59 -1
  102. package/dist/types/constants.d.ts.map +1 -1
  103. package/dist/types/deploy-v4.d.ts +3 -1
  104. package/dist/types/deploy-v4.d.ts.map +1 -1
  105. package/dist/types/factory.d.ts +21 -0
  106. package/dist/types/factory.d.ts.map +1 -0
  107. package/dist/types/fee-receivers.d.ts +1822 -1
  108. package/dist/types/fee-receivers.d.ts.map +1 -1
  109. package/dist/types/fee-splitter.d.ts +23 -0
  110. package/dist/types/fee-splitter.d.ts.map +1 -0
  111. package/dist/types/governance.d.ts +18 -2
  112. package/dist/types/governance.d.ts.map +1 -1
  113. package/dist/types/index.d.ts +5 -1
  114. package/dist/types/index.d.ts.map +1 -1
  115. package/dist/types/ipfs-merkle-tree.d.ts +72 -0
  116. package/dist/types/ipfs-merkle-tree.d.ts.map +1 -0
  117. package/dist/types/project.d.ts +10 -2
  118. package/dist/types/project.d.ts.map +1 -1
  119. package/dist/types/proposal.d.ts +16 -0
  120. package/dist/types/proposal.d.ts.map +1 -1
  121. package/dist/types/schema/levr.schema.d.ts +16 -4
  122. package/dist/types/schema/levr.schema.d.ts.map +1 -1
  123. package/dist/types/stake.d.ts +33 -2
  124. package/dist/types/stake.d.ts.map +1 -1
  125. package/dist/types/vault.d.ts +70 -0
  126. package/dist/types/vault.d.ts.map +1 -0
  127. package/package.json +1 -1
  128. package/dist/esm/treasury.js +0 -90
  129. package/dist/esm/treasury.js.map +0 -1
  130. package/dist/types/treasury.d.ts +0 -11
  131. package/dist/types/treasury.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"fee-receivers.d.ts","sourceRoot":"","sources":["../../src/fee-receivers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fee-receivers.d.ts","sourceRoot":"","sources":["../../src/fee-receivers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import type { Address, PublicClient, WalletClient } from 'viem';
2
+ export interface DeployFeeSplitterParams {
3
+ publicClient: PublicClient;
4
+ walletClient: WalletClient;
5
+ clankerToken: Address;
6
+ }
7
+ export interface GetFeeSplitterParams {
8
+ publicClient: PublicClient;
9
+ clankerToken: Address;
10
+ chainId: number;
11
+ }
12
+ /**
13
+ * Deploy a new fee splitter for a Clanker token
14
+ * Only needs to be called once per token
15
+ * Returns the deployed splitter address (either newly deployed or existing)
16
+ */
17
+ export declare function deployFeeSplitter(params: DeployFeeSplitterParams): Promise<Address>;
18
+ /**
19
+ * Get the fee splitter address for a token (if deployed)
20
+ * Returns undefined if not deployed yet
21
+ */
22
+ export declare function getFeeSplitter(params: GetFeeSplitterParams): Promise<Address | undefined>;
23
+ //# sourceMappingURL=fee-splitter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fee-splitter.d.ts","sourceRoot":"","sources":["../../src/fee-splitter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AAK/D,MAAM,WAAW,uBAAuB;IACtC,YAAY,EAAE,YAAY,CAAA;IAC1B,YAAY,EAAE,YAAY,CAAA;IAC1B,YAAY,EAAE,OAAO,CAAA;CACtB;AAED,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,YAAY,CAAA;IAC1B,YAAY,EAAE,OAAO,CAAA;IACrB,OAAO,EAAE,MAAM,CAAA;CAChB;AAED;;;;GAIG;AACH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAAC,OAAO,CAAC,CA4CzF;AAED;;;GAGG;AACH,wBAAsB,cAAc,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,CAkB/F"}
@@ -1,6 +1,5 @@
1
1
  import type { TransactionReceipt } from 'viem';
2
2
  import type { Project } from '.';
3
- import type { AirdropStatus } from './treasury';
4
3
  import type { BalanceResult, PopPublicClient, PopWalletClient } from './types';
5
4
  export type GovernanceConfig = {
6
5
  wallet: PopWalletClient;
@@ -97,6 +96,23 @@ export declare class Governance {
97
96
  support: boolean;
98
97
  votes: bigint;
99
98
  }>;
100
- claimAirdrop(airdropStatus: AirdropStatus): Promise<TransactionReceipt>;
99
+ claimAirdrop(recipient: {
100
+ address: `0x${string}`;
101
+ allocatedAmount: {
102
+ raw: bigint;
103
+ };
104
+ proof: `0x${string}`[];
105
+ isAvailable: boolean;
106
+ error?: string;
107
+ }): Promise<TransactionReceipt>;
108
+ claimAirdropBatch(recipients: {
109
+ address: `0x${string}`;
110
+ allocatedAmount: {
111
+ raw: bigint;
112
+ };
113
+ proof: `0x${string}`[];
114
+ isAvailable: boolean;
115
+ error?: string;
116
+ }[]): Promise<TransactionReceipt>;
101
117
  }
102
118
  //# sourceMappingURL=governance.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"governance.d.ts","sourceRoot":"","sources":["../../src/governance.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"governance.d.ts","sourceRoot":"","sources":["../../src/governance.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,15 @@
1
1
  export * from './abis';
2
+ export * from './airdrop';
2
3
  export * from './balance';
3
4
  export * from './build-calldatas-v4';
4
5
  export * from './build-clanker-v4';
5
6
  export * from './constants';
6
7
  export * from './deploy-v4';
8
+ export * from './factory';
7
9
  export * from './fee-receivers';
10
+ export * from './fee-splitter';
8
11
  export * from './governance';
12
+ export * from './ipfs-merkle-tree';
9
13
  export * from './pool';
10
14
  export * from './pool-key';
11
15
  export * from './project';
@@ -14,9 +18,9 @@ export * from './quote';
14
18
  export * from './schema';
15
19
  export * from './stake';
16
20
  export * from './swap-v4';
17
- export * from './treasury';
18
21
  export * from './types';
19
22
  export * from './usd-price';
20
23
  export * from './user';
21
24
  export * from './util';
25
+ export * from './vault';
22
26
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAA;AACtB,cAAc,WAAW,CAAA;AACzB,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,QAAQ,CAAA;AACtB,cAAc,YAAY,CAAA;AAC1B,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,aAAa,CAAA;AAC3B,cAAc,QAAQ,CAAA;AACtB,cAAc,QAAQ,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAA;AACtB,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA;AACzB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,cAAc,CAAA;AAC5B,cAAc,oBAAoB,CAAA;AAClC,cAAc,QAAQ,CAAA;AACtB,cAAc,YAAY,CAAA;AAC1B,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA;AACvB,cAAc,aAAa,CAAA;AAC3B,cAAc,QAAQ,CAAA;AACtB,cAAc,QAAQ,CAAA;AACtB,cAAc,SAAS,CAAA"}
@@ -0,0 +1,72 @@
1
+ /**
2
+ * IPFS Merkle Tree Storage Utilities
3
+ * Stores and retrieves merkle tree data for airdrops using IPFS
4
+ */
5
+ export type MerkleTreeMetadata = {
6
+ lockupEndTime: number;
7
+ lockupDuration: number;
8
+ };
9
+ export type StandardMerkleTreeDump = {
10
+ format: 'standard-v1';
11
+ tree: string[];
12
+ values: Array<{
13
+ value: [string, string];
14
+ treeIndex: number;
15
+ }>;
16
+ leafEncoding: string[];
17
+ };
18
+ export type StoredMerkleTreeData = {
19
+ format: 'standard-v1';
20
+ tree: StandardMerkleTreeDump;
21
+ metadata?: MerkleTreeMetadata;
22
+ };
23
+ export type MerkleTreeWithMetadata = StandardMerkleTreeDump & {
24
+ metadata?: MerkleTreeMetadata;
25
+ };
26
+ export type StoreMerkleTreeParams = {
27
+ tokenAddress: `0x${string}`;
28
+ chainId: number;
29
+ treeData: StandardMerkleTreeDump;
30
+ ipfsJsonUploadUrl: string;
31
+ lockupEndTime: number;
32
+ lockupDuration: number;
33
+ };
34
+ export type RetrieveMerkleTreeParams = {
35
+ tokenAddress: `0x${string}`;
36
+ chainId: number;
37
+ ipfsSearchUrl: string;
38
+ ipfsJsonUrl: string;
39
+ };
40
+ export type RetrieveMerkleTreeResult = MerkleTreeWithMetadata | null;
41
+ /**
42
+ * Generates a consistent key for storing merkle tree data
43
+ * Format: chainId-tokenAddress
44
+ */
45
+ export declare function getMerkleTreeKey(tokenAddress: `0x${string}`, chainId: number): string;
46
+ /**
47
+ * Stores merkle tree data to IPFS via API proxy
48
+ * @param params Storage parameters
49
+ * @returns The IPFS CID where the data was stored
50
+ */
51
+ export declare function storeMerkleTreeToIPFS(params: StoreMerkleTreeParams): Promise<string>;
52
+ /**
53
+ * Retrieves merkle tree data from IPFS by searching for it using metadata
54
+ * @param params Retrieval parameters
55
+ * @returns The merkle tree data with metadata or null if not found
56
+ */
57
+ export declare function retrieveMerkleTreeFromIPFS(params: RetrieveMerkleTreeParams): Promise<RetrieveMerkleTreeResult>;
58
+ /**
59
+ * Fetches merkle tree data by CID
60
+ * @param cid The IPFS CID
61
+ * @param ipfsJsonUrl Full URL to /api/ipfs-json endpoint
62
+ */
63
+ export declare function fetchMerkleTreeByCID(cid: string, ipfsJsonUrl: string): Promise<RetrieveMerkleTreeResult>;
64
+ /**
65
+ * Helper function to get CID for a token by searching IPFS
66
+ * @param tokenAddress Token address
67
+ * @param chainId Chain ID
68
+ * @param ipfsSearchUrl Full URL to /api/ipfs-search endpoint
69
+ * @returns CID if found, null otherwise
70
+ */
71
+ export declare function getCIDForToken(tokenAddress: `0x${string}`, chainId: number, ipfsSearchUrl: string): Promise<string | null>;
72
+ //# sourceMappingURL=ipfs-merkle-tree.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ipfs-merkle-tree.d.ts","sourceRoot":"","sources":["../../src/ipfs-merkle-tree.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,aAAa,EAAE,MAAM,CAAA;IACrB,cAAc,EAAE,MAAM,CAAA;CACvB,CAAA;AAGD,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,EAAE,aAAa,CAAA;IACrB,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,MAAM,EAAE,KAAK,CAAC;QACZ,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QACvB,SAAS,EAAE,MAAM,CAAA;KAClB,CAAC,CAAA;IACF,YAAY,EAAE,MAAM,EAAE,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,MAAM,EAAE,aAAa,CAAA;IACrB,IAAI,EAAE,sBAAsB,CAAA;IAC5B,QAAQ,CAAC,EAAE,kBAAkB,CAAA;CAC9B,CAAA;AAED,MAAM,MAAM,sBAAsB,GAAG,sBAAsB,GAAG;IAC5D,QAAQ,CAAC,EAAE,kBAAkB,CAAA;CAC9B,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG;IAClC,YAAY,EAAE,KAAK,MAAM,EAAE,CAAA;IAC3B,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,sBAAsB,CAAA;IAChC,iBAAiB,EAAE,MAAM,CAAA;IACzB,aAAa,EAAE,MAAM,CAAA;IACrB,cAAc,EAAE,MAAM,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG;IACrC,YAAY,EAAE,KAAK,MAAM,EAAE,CAAA;IAC3B,OAAO,EAAE,MAAM,CAAA;IACf,aAAa,EAAE,MAAM,CAAA;IACrB,WAAW,EAAE,MAAM,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG,sBAAsB,GAAG,IAAI,CAAA;AAEpE;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,KAAK,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAErF;AAED;;;;GAIG;AACH,wBAAsB,qBAAqB,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,CAwC1F;AAED;;;;GAIG;AACH,wBAAsB,0BAA0B,CAC9C,MAAM,EAAE,wBAAwB,GAC/B,OAAO,CAAC,wBAAwB,CAAC,CA+BnC;AAED;;;;GAIG;AACH,wBAAsB,oBAAoB,CACxC,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,wBAAwB,CAAC,CAwBnC;AAED;;;;;;GAMG;AACH,wBAAsB,cAAc,CAClC,YAAY,EAAE,KAAK,MAAM,EAAE,EAC3B,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAgBxB"}
@@ -1,4 +1,4 @@
1
- import type { FeeReceiverAdmin } from './fee-receivers';
1
+ import type { FeeReceiverAdmin, FeeSplitterDynamic, FeeSplitterStatic } from './fee-receivers';
2
2
  import type { BalanceResult, PoolKey, PopPublicClient, PricingResult } from './types';
3
3
  export type StaticProjectParams = {
4
4
  publicClient: PopPublicClient;
@@ -24,6 +24,8 @@ export type TreasuryStats = {
24
24
  balance: BalanceResult;
25
25
  totalAllocated: BalanceResult;
26
26
  utilization: number;
27
+ stakingContractBalance: BalanceResult;
28
+ stakingContractWethBalance?: BalanceResult;
27
29
  };
28
30
  export type StakingStats = {
29
31
  totalStaked: BalanceResult;
@@ -65,6 +67,10 @@ export type GovernanceStats = {
65
67
  transfer: bigint;
66
68
  };
67
69
  };
70
+ /**
71
+ * Combined fee splitter data (static from getStaticProject + dynamic from getProject)
72
+ */
73
+ export type FeeSplitter = FeeSplitterStatic & Partial<FeeSplitterDynamic>;
68
74
  export type Project = {
69
75
  chainId: number;
70
76
  treasury: `0x${string}`;
@@ -90,9 +96,11 @@ export type Project = {
90
96
  stakingStats?: StakingStats;
91
97
  governanceStats?: GovernanceStats;
92
98
  feeReceivers?: FeeReceiverAdmin[];
99
+ feeSplitter?: FeeSplitter;
93
100
  pricing?: PricingResult;
101
+ blockTimestamp?: bigint;
94
102
  };
95
- export type StaticProject = Pick<Project, 'treasury' | 'governor' | 'staking' | 'stakedToken' | 'forwarder' | 'factory' | 'token' | 'pool' | 'feeReceivers'>;
103
+ export type StaticProject = Pick<Project, 'treasury' | 'governor' | 'staking' | 'stakedToken' | 'forwarder' | 'factory' | 'token' | 'pool' | 'feeReceivers' | 'feeSplitter'>;
96
104
  export type ProjectsParams = {
97
105
  publicClient: PopPublicClient;
98
106
  offset?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../src/project.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../src/project.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAU9F,OAAO,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAGrF,MAAM,MAAM,mBAAmB,GAAG;IAChC,YAAY,EAAE,eAAe,CAAA;IAC7B,YAAY,EAAE,KAAK,MAAM,EAAE,CAAA;IAC3B,WAAW,CAAC,EAAE,KAAK,MAAM,EAAE,CAAA;CAC5B,CAAA;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,YAAY,EAAE,eAAe,CAAA;IAC7B,aAAa,EAAE,aAAa,CAAA;IAC5B,kBAAkB,CAAC,EAAE,eAAe,CAAA;CACrC,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,WAAW,EAAE,MAAM,CAAA;IACnB,eAAe,EAAE,EAAE,CAAA;IACnB,SAAS,EAAE,EAAE,CAAA;CACd,CAAA;AAED,MAAM,MAAM,QAAQ,GAAG;IACrB,OAAO,EAAE,OAAO,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,EAAE,aAAa,CAAA;IACtB,cAAc,EAAE,aAAa,CAAA;IAC7B,WAAW,EAAE,MAAM,CAAA;IACnB,sBAAsB,EAAE,aAAa,CAAA;IACrC,0BAA0B,CAAC,EAAE,aAAa,CAAA;CAC3C,CAAA;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,WAAW,EAAE,aAAa,CAAA;IAC1B,GAAG,EAAE;QACH,KAAK,EAAE;YAAE,GAAG,EAAE,MAAM,CAAC;YAAC,UAAU,EAAE,MAAM,CAAA;SAAE,CAAA;QAC1C,IAAI,EAAE;YAAE,GAAG,EAAE,MAAM,CAAC;YAAC,UAAU,EAAE,MAAM,CAAA;SAAE,GAAG,IAAI,CAAA;KACjD,CAAA;IACD,kBAAkB,EAAE;QAClB,OAAO,EAAE;YACP,SAAS,EAAE,aAAa,CAAA;YACxB,OAAO,EAAE,aAAa,CAAA;SACvB,CAAA;QACD,IAAI,EAAE;YACJ,SAAS,EAAE,aAAa,CAAA;YACxB,OAAO,EAAE,aAAa,CAAA;SACvB,GAAG,IAAI,CAAA;KACT,CAAA;IACD,WAAW,EAAE;QACX,KAAK,EAAE,aAAa,CAAA;QACpB,IAAI,EAAE,aAAa,GAAG,IAAI,CAAA;KAC3B,CAAA;IACD,YAAY,EAAE;QACZ,aAAa,EAAE,MAAM,CAAA;QACrB,WAAW,EAAE,MAAM,CAAA;QACnB,SAAS,EAAE,MAAM,CAAA;QACjB,QAAQ,EAAE,OAAO,CAAA;KAClB,CAAA;CACF,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,cAAc,EAAE,MAAM,CAAA;IACtB,mBAAmB,EAAE;QACnB,KAAK,EAAE,MAAM,CAAA;QACb,QAAQ,EAAE,MAAM,CAAA;KACjB,CAAA;CACF,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAA;AAEzE,MAAM,MAAM,OAAO,GAAG;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,KAAK,MAAM,EAAE,CAAA;IACvB,QAAQ,EAAE,KAAK,MAAM,EAAE,CAAA;IACvB,OAAO,EAAE,KAAK,MAAM,EAAE,CAAA;IACtB,WAAW,EAAE,KAAK,MAAM,EAAE,CAAA;IAC1B,SAAS,EAAE,KAAK,MAAM,EAAE,CAAA;IACxB,OAAO,EAAE,KAAK,MAAM,EAAE,CAAA;IACtB,KAAK,EAAE;QACL,OAAO,EAAE,KAAK,MAAM,EAAE,CAAA;QACtB,QAAQ,EAAE,MAAM,CAAA;QAChB,IAAI,EAAE,MAAM,CAAA;QACZ,MAAM,EAAE,MAAM,CAAA;QACd,WAAW,EAAE,MAAM,CAAA;QACnB,QAAQ,EAAE,eAAe,GAAG,IAAI,CAAA;QAChC,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,aAAa,EAAE,KAAK,MAAM,EAAE,CAAA;QAC5B,KAAK,EAAE,KAAK,MAAM,EAAE,CAAA;QACpB,OAAO,EAAE,MAAM,CAAA;KAChB,CAAA;IACD,IAAI,CAAC,EAAE,QAAQ,CAAA;IACf,aAAa,CAAC,EAAE,aAAa,CAAA;IAC7B,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B,eAAe,CAAC,EAAE,eAAe,CAAA;IACjC,YAAY,CAAC,EAAE,gBAAgB,EAAE,CAAA;IACjC,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,OAAO,CAAC,EAAE,aAAa,CAAA;IACvB,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB,CAAA;AAED,MAAM,MAAM,aAAa,GAAG,IAAI,CAC9B,OAAO,EACL,UAAU,GACV,UAAU,GACV,SAAS,GACT,aAAa,GACb,WAAW,GACX,SAAS,GACT,OAAO,GACP,MAAM,GACN,cAAc,GACd,aAAa,CAChB,CAAA;AAmcD,MAAM,MAAM,cAAc,GAAG;IAC3B,YAAY,EAAE,eAAe,CAAA;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,EAAE,IAAI,CACZ,OAAO,EACP,WAAW,GAAG,MAAM,GAAG,SAAS,GAAG,cAAc,GAAG,iBAAiB,GAAG,cAAc,CACvF,EAAE,CAAA;IACH,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,EAChC,YAAY,EACZ,MAAU,EACV,KAAU,GACX,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC,CA0G1C;AAED;;;GAGG;AACH,wBAAsB,gBAAgB,CAAC,EACrC,YAAY,EACZ,YAAY,EACZ,WAAW,GACZ,EAAE,mBAAmB,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CA6GrD;AAED;;;;GAIG;AACH,wBAAsB,UAAU,CAAC,EAC/B,YAAY,EACZ,aAAa,EACb,kBAAkB,GACnB,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CA6IzC"}
@@ -536,6 +536,10 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
536
536
  readonly type: "error";
537
537
  readonly name: "InsufficientStake";
538
538
  readonly inputs: readonly [];
539
+ }, {
540
+ readonly type: "error";
541
+ readonly name: "InsufficientTreasuryBalance";
542
+ readonly inputs: readonly [];
539
543
  }, {
540
544
  readonly type: "error";
541
545
  readonly name: "InsufficientVotingPower";
@@ -568,6 +572,10 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
568
572
  readonly type: "error";
569
573
  readonly name: "NotWinner";
570
574
  readonly inputs: readonly [];
575
+ }, {
576
+ readonly type: "error";
577
+ readonly name: "ProposalAmountExceedsLimit";
578
+ readonly inputs: readonly [];
571
579
  }, {
572
580
  readonly type: "error";
573
581
  readonly name: "ProposalNotSucceeded";
@@ -1095,6 +1103,10 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
1095
1103
  readonly type: "error";
1096
1104
  readonly name: "InsufficientStake";
1097
1105
  readonly inputs: readonly [];
1106
+ }, {
1107
+ readonly type: "error";
1108
+ readonly name: "InsufficientTreasuryBalance";
1109
+ readonly inputs: readonly [];
1098
1110
  }, {
1099
1111
  readonly type: "error";
1100
1112
  readonly name: "InsufficientVotingPower";
@@ -1127,6 +1139,10 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
1127
1139
  readonly type: "error";
1128
1140
  readonly name: "NotWinner";
1129
1141
  readonly inputs: readonly [];
1142
+ }, {
1143
+ readonly type: "error";
1144
+ readonly name: "ProposalAmountExceedsLimit";
1145
+ readonly inputs: readonly [];
1130
1146
  }, {
1131
1147
  readonly type: "error";
1132
1148
  readonly name: "ProposalNotSucceeded";
@@ -1 +1 @@
1
- {"version":3,"file":"proposal.d.ts","sourceRoot":"","sources":["../../src/proposal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"proposal.d.ts","sourceRoot":"","sources":["../../src/proposal.ts"],"names":[],"mappings":"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"}
@@ -8,19 +8,24 @@ export declare const LevrClankerDeploymentSchema: Schema.filter<Schema.filter<Sc
8
8
  xLink: Schema.optional<typeof Schema.String>;
9
9
  farcasterLink: Schema.optional<typeof Schema.String>;
10
10
  }>>;
11
- devBuy: Schema.optional<Schema.Literal<["0.1 ETH", "0.5 ETH", "1 ETH"]>>;
11
+ devBuy: Schema.optional<Schema.Literal<["0.1 ETH", "0.5 ETH", "1 ETH", "1.5 ETH"]>>;
12
12
  airdrop: Schema.optional<Schema.Array$<Schema.Struct<{
13
- amount: Schema.SchemaClass<number, number, never>;
13
+ percentage: Schema.SchemaClass<number, number, never>;
14
14
  account: Schema.Schema<`0x${string}`, `0x${string}`, never>;
15
15
  }>>>;
16
- treasuryFunding: Schema.Literal<["30%" | "40%" | "50%" | "60%" | "70%" | "80%" | "90%"]>;
16
+ vault: Schema.optional<Schema.Struct<{
17
+ lockupPeriod: Schema.Literal<["30 days" | "90 days" | "180 days"]>;
18
+ vestingPeriod: Schema.Literal<["30 days" | "180 days" | "instant"]>;
19
+ percentage: Schema.Literal<["10%" | "20%" | "30%" | "5%" | "15%" | "25%"]>;
20
+ }>>;
21
+ treasuryFunding: Schema.Literal<["10%" | "20%" | "30%" | "40%" | "50%" | "60%" | "70%" | "80%" | "90%"]>;
17
22
  fees: Schema.Union<[Schema.Struct<{
18
23
  type: Schema.Literal<["static"]>;
19
24
  feeTier: Schema.Literal<["1%" | "2%" | "3%"]>;
20
25
  }>, Schema.Struct<{
21
26
  type: Schema.Literal<["dynamic 3%"]>;
22
27
  }>]>;
23
- stakingReward: Schema.optional<Schema.Literal<["70%" | "80%" | "90%" | "100%"]>>;
28
+ stakingReward: Schema.Literal<["40%" | "50%" | "60%" | "70%" | "80%" | "90%" | "100%"]>;
24
29
  rewards: Schema.optional<Schema.Array$<Schema.Struct<{
25
30
  admin: Schema.Schema<`0x${string}`, `0x${string}`, never>;
26
31
  recipient: Schema.Schema<`0x${string}`, `0x${string}`, never>;
@@ -31,4 +36,11 @@ export declare const LevrClankerDeploymentSchema: Schema.filter<Schema.filter<Sc
31
36
  name: Schema.refine<string, typeof Schema.String>;
32
37
  }>>>;
33
38
  export type LevrClankerDeploymentSchemaType = typeof LevrClankerDeploymentSchema.Type;
39
+ export declare const LevrFeeSplitterConfigSchema: Schema.filter<Schema.filter<Schema.Struct<{
40
+ splits: Schema.Array$<Schema.Struct<{
41
+ receiver: Schema.Schema<`0x${string}`, `0x${string}`, never>;
42
+ percentage: Schema.SchemaClass<number, number, never>;
43
+ }>>;
44
+ }>>>;
45
+ export type LevrFeeSplitterConfigSchemaType = typeof LevrFeeSplitterConfigSchema.Type;
34
46
  //# sourceMappingURL=levr.schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"levr.schema.d.ts","sourceRoot":"","sources":["../../../src/schema/levr.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AA2G/B,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAkDvC,CAAA;AAED,MAAM,MAAM,+BAA+B,GAAG,OAAO,2BAA2B,CAAC,IAAI,CAAA"}
1
+ {"version":3,"file":"levr.schema.d.ts","sourceRoot":"","sources":["../../../src/schema/levr.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAiK/B,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAwDvC,CAAA;AAED,MAAM,MAAM,+BAA+B,GAAG,OAAO,2BAA2B,CAAC,IAAI,CAAA;AAgBrF,eAAO,MAAM,2BAA2B;;;;;IAuBvC,CAAA;AAED,MAAM,MAAM,+BAA+B,GAAG,OAAO,2BAA2B,CAAC,IAAI,CAAA"}
@@ -52,6 +52,7 @@ export declare class Stake {
52
52
  private chainId;
53
53
  private userAddress;
54
54
  private trustedForwarder?;
55
+ private isFeeSplitterActive;
55
56
  constructor(config: StakeConfig);
56
57
  /**
57
58
  * Approve ERC20 tokens for spending by the staking contract
@@ -74,13 +75,43 @@ export declare class Stake {
74
75
  */
75
76
  claimRewards(params: ClaimParams | void): Promise<TransactionReceipt>;
76
77
  /**
77
- * Accrue rewards by triggering automatic collection from LP locker and claiming from ClankerFeeLocker
78
+ * Accrue rewards by triggering manual accrual from balance delta detection
79
+ *
80
+ * NOTE: If fee splitter is configured, call distributeFromFeeSplitter() FIRST.
81
+ * The fee splitter transfers tokens to staking, then accrueRewards() detects the balance increase.
78
82
  */
79
83
  accrueRewards(tokenAddress?: `0x${string}`): Promise<TransactionReceipt>;
84
+ /**
85
+ * Distribute fees from the fee splitter to all configured receivers (including staking)
86
+ *
87
+ * This should be called BEFORE accrueRewards() when fee splitter is configured.
88
+ * The fee splitter claims fees from LP locker and distributes them according to configured splits.
89
+ */
90
+ distributeFromFeeSplitter(params?: {
91
+ tokens?: `0x${string}`[];
92
+ }): Promise<TransactionReceipt>;
80
93
  /**
81
94
  * Accrue rewards for multiple tokens in a single transaction using forwarder multicall
95
+ *
96
+ * If fee splitter is configured and active, this will:
97
+ * 1. Call distribute() on fee splitter for each token
98
+ * 2. Fee splitter automatically calls accrueRewards() after distribution
99
+ *
100
+ * If fee splitter is NOT configured, this will:
101
+ * 1. Directly call accrueRewards() for each token on staking contract
102
+ *
103
+ * @param params.tokens - Array of token addresses to accrue (defaults to [clankerToken, WETH])
104
+ * @param params.useFeeSplitter - If true, uses fee splitter distribute (auto-detected if not provided)
105
+ */
106
+ accrueAllRewards(params?: {
107
+ tokens?: `0x${string}`[];
108
+ useFeeSplitter?: boolean;
109
+ }): Promise<TransactionReceipt>;
110
+ /**
111
+ * Helper to detect if fee splitter should be used
112
+ * Returns true if fee splitter is configured and active for this project
82
113
  */
83
- accrueAllRewards(tokenAddresses: `0x${string}`[]): Promise<TransactionReceipt>;
114
+ private _shouldUseFeeSplitter;
84
115
  /**
85
116
  * Simulate voting power after an unstake (without executing the transaction)
86
117
  * @param amount Amount to unstake
@@ -1 +1 @@
1
- {"version":3,"file":"stake.d.ts","sourceRoot":"","sources":["../../src/stake.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stake.d.ts","sourceRoot":"","sources":["../../src/stake.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,70 @@
1
+ /**
2
+ * Vault utilities for interacting with the Clanker Vault contract
3
+ * This module provides server-side functions to retrieve and interact with vault state
4
+ */
5
+ import type { PublicClient } from 'viem';
6
+ /**
7
+ * Type representing vault allocation state
8
+ */
9
+ export type VaultAllocation = {
10
+ token: `0x${string}`;
11
+ amountTotal: bigint;
12
+ amountClaimed: bigint;
13
+ lockupEndTime: bigint;
14
+ vestingEndTime: bigint;
15
+ admin: `0x${string}`;
16
+ };
17
+ /**
18
+ * Type representing claimable vault state
19
+ */
20
+ export type VaultClaimableState = {
21
+ claimable: bigint;
22
+ total: bigint;
23
+ claimed: bigint;
24
+ lockupEndTime: bigint;
25
+ vestingEndTime: bigint;
26
+ };
27
+ /**
28
+ * Vault status enum
29
+ */
30
+ export declare enum VaultStatus {
31
+ LOCKED = "locked",
32
+ VESTING = "vesting",
33
+ VESTED = "vested"
34
+ }
35
+ /**
36
+ * Type representing vault status with computed information
37
+ */
38
+ export type VaultStatusData = {
39
+ status: VaultStatus;
40
+ statusMessage: string;
41
+ descriptionMessage: string;
42
+ daysRemaining: number;
43
+ claimable: bigint;
44
+ total: bigint;
45
+ claimed: bigint;
46
+ lockupEndTime: bigint;
47
+ vestingEndTime: bigint;
48
+ };
49
+ /**
50
+ * Fetch vault data using multicall
51
+ * @param publicClient - Viem public client
52
+ * @param tokenAddress - Token address to query
53
+ * @param chainId - Chain ID (optional, can be inferred from publicClient)
54
+ * @returns Parsed vault data or undefined if allocation doesn't exist
55
+ */
56
+ export declare function fetchVaultData(publicClient: PublicClient, tokenAddress: `0x${string}`, chainId?: number): Promise<{
57
+ allocation: VaultAllocation;
58
+ claimable: bigint;
59
+ } | undefined>;
60
+ /**
61
+ * Get vault status with computed messages
62
+ * @param data - Vault data from fetchVaultData
63
+ * @param blockTimestamp - Current block timestamp in seconds (for consistency)
64
+ * @returns Vault status data with messages
65
+ */
66
+ export declare function getVaultStatus(data: {
67
+ allocation: VaultAllocation;
68
+ claimable: bigint;
69
+ }, blockTimestamp: number): VaultStatusData;
70
+ //# sourceMappingURL=vault.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vault.d.ts","sourceRoot":"","sources":["../../src/vault.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AAKxC;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,EAAE,KAAK,MAAM,EAAE,CAAA;IACpB,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,aAAa,EAAE,MAAM,CAAA;IACrB,cAAc,EAAE,MAAM,CAAA;IACtB,KAAK,EAAE,KAAK,MAAM,EAAE,CAAA;CACrB,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;IACf,aAAa,EAAE,MAAM,CAAA;IACrB,cAAc,EAAE,MAAM,CAAA;CACvB,CAAA;AAED;;GAEG;AACH,oBAAY,WAAW;IACrB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,MAAM,WAAW;CAClB;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,EAAE,WAAW,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,aAAa,EAAE,MAAM,CAAA;IACrB,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;IACf,aAAa,EAAE,MAAM,CAAA;IACrB,cAAc,EAAE,MAAM,CAAA;CACvB,CAAA;AAiED;;;;;;GAMG;AACH,wBAAsB,cAAc,CAClC,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,KAAK,MAAM,EAAE,EAC3B,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC;IAAE,UAAU,EAAE,eAAe,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAAC,CAczE;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE;IACJ,UAAU,EAAE,eAAe,CAAA;IAC3B,SAAS,EAAE,MAAM,CAAA;CAClB,EACD,cAAc,EAAE,MAAM,GACrB,eAAe,CA2CjB"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "levr-sdk",
3
3
  "description": "Leverage your Clanker launch with DAO capabilities",
4
- "version": "0.2.2",
4
+ "version": "0.3.1",
5
5
  "license": "Apache-2.0",
6
6
  "sideEffects": false,
7
7
  "exports": {
@@ -1,90 +0,0 @@
1
- import { erc20Abi } from "viem";
2
- import { IClankerAirdrop } from "./abis/index.js";
3
- import { formatBalanceWithUsd } from "./balance.js";
4
- import { GET_CLANKER_AIRDROP_ADDRESS } from "./constants.js";
5
- export async function getTreasuryAirdropStatus(publicClient, clankerToken, treasury, tokenDecimals, tokenUsdPrice) {
6
- const chainId = publicClient.chain?.id;
7
- const airdropAddress = GET_CLANKER_AIRDROP_ADDRESS(chainId);
8
- if (!airdropAddress) {
9
- return null;
10
- }
11
- try {
12
- const currentBlock = await publicClient.getBlockNumber();
13
- const blocksToSearch = 100000n;
14
- const fromBlock = currentBlock > blocksToSearch ? currentBlock - blocksToSearch : 0n;
15
- const logs = await publicClient.getLogs({
16
- address: airdropAddress,
17
- event: {
18
- type: "event",
19
- name: "AirdropCreated",
20
- inputs: [
21
- { name: "token", type: "address", indexed: true },
22
- { name: "admin", type: "address", indexed: true },
23
- { name: "merkleRoot", type: "bytes32", indexed: false },
24
- { name: "supply", type: "uint256", indexed: false },
25
- { name: "lockupDuration", type: "uint256", indexed: false },
26
- { name: "vestingDuration", type: "uint256", indexed: false },
27
- ],
28
- },
29
- args: {
30
- token: clankerToken,
31
- },
32
- fromBlock,
33
- toBlock: "latest",
34
- });
35
- if (logs.length === 0) {
36
- return null;
37
- }
38
- const latestLog = logs[logs.length - 1];
39
- const { supply } = latestLog.args;
40
- const allocatedAmount = supply;
41
- const [multicallResults, block] = await Promise.all([
42
- publicClient.multicall({
43
- contracts: [
44
- {
45
- address: airdropAddress,
46
- abi: IClankerAirdrop,
47
- functionName: "amountAvailableToClaim",
48
- args: [clankerToken, treasury, allocatedAmount],
49
- },
50
- {
51
- address: clankerToken,
52
- abi: erc20Abi,
53
- functionName: "balanceOf",
54
- args: [treasury],
55
- },
56
- ],
57
- allowFailure: false,
58
- }),
59
- publicClient.getBlock({ blockNumber: latestLog.blockNumber }),
60
- ]);
61
- const [availableAmount, treasuryBalance] = multicallResults;
62
- const deploymentTimestamp = Number(block.timestamp) * 1000;
63
- if (availableAmount === 0n) {
64
- const isAlreadyClaimed = treasuryBalance >= allocatedAmount;
65
- return {
66
- availableAmount: formatBalanceWithUsd(0n, tokenDecimals, tokenUsdPrice),
67
- allocatedAmount: formatBalanceWithUsd(allocatedAmount, tokenDecimals, tokenUsdPrice),
68
- isAvailable: false,
69
- proof: [],
70
- deploymentTimestamp,
71
- error: isAlreadyClaimed
72
- ? "Treasury airdrop already claimed"
73
- : "Airdrop is still locked (lockup period not passed)",
74
- };
75
- }
76
- return {
77
- availableAmount: formatBalanceWithUsd(availableAmount, tokenDecimals, tokenUsdPrice),
78
- allocatedAmount: formatBalanceWithUsd(allocatedAmount, tokenDecimals, tokenUsdPrice),
79
- isAvailable: true,
80
- proof: [],
81
- deploymentTimestamp,
82
- error: undefined,
83
- };
84
- }
85
- catch (error) {
86
- console.error("Failed to fetch airdrop:", error);
87
- return null;
88
- }
89
- }
90
- //# sourceMappingURL=treasury.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"treasury.js","sourceRoot":"","sources":["../../src/treasury.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAA;AAE/B,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAA;AACxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAChD,OAAO,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAA;AAYzD,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,YAA6B,EAC7B,YAA2B,EAC3B,QAAuB,EACvB,aAAqB,EACrB,aAA4B;IAE5B,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,EAAE,EAAE,CAAA;IACtC,MAAM,cAAc,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAA;IAE3D,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,MAAM,YAAY,CAAC,cAAc,EAAE,CAAA;QACxD,MAAM,cAAc,GAAG,OAAQ,CAAA;QAC/B,MAAM,SAAS,GAAG,YAAY,GAAG,cAAc,CAAC,CAAC,CAAC,YAAY,GAAG,cAAc,CAAC,CAAC,CAAC,EAAE,CAAA;QAEpF,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC;YACtC,OAAO,EAAE,cAAc;YACvB,KAAK,EAAE;gBACL,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,gBAAgB;gBACtB,MAAM,EAAE;oBACN,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE;oBACjD,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE;oBACjD,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE;oBACvD,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE;oBACnD,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE;oBAC3D,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE;iBAC7D;aACF;YACD,IAAI,EAAE;gBACJ,KAAK,EAAE,YAAY;aACpB;YACD,SAAS;YACT,OAAO,EAAE,QAAQ;SAClB,CAAC,CAAA;QAEF,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,IAAI,CAAA;QACb,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QACvC,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC,IAA0B,CAAA;QACvD,MAAM,eAAe,GAAG,MAAM,CAAA;QAE9B,MAAM,CAAC,gBAAgB,EAAE,KAAK,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAClD,YAAY,CAAC,SAAS,CAAC;gBACrB,SAAS,EAAE;oBACT;wBACE,OAAO,EAAE,cAAc;wBACvB,GAAG,EAAE,eAAe;wBACpB,YAAY,EAAE,wBAAwB;wBACtC,IAAI,EAAE,CAAC,YAAY,EAAE,QAAQ,EAAE,eAAe,CAAC;qBAChD;oBACD;wBACE,OAAO,EAAE,YAAY;wBACrB,GAAG,EAAE,QAAQ;wBACb,YAAY,EAAE,WAAW;wBACzB,IAAI,EAAE,CAAC,QAAQ,CAAC;qBACjB;iBACF;gBACD,YAAY,EAAE,KAAK;aACpB,CAAC;YACF,YAAY,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,SAAS,CAAC,WAAW,EAAE,CAAC;SAC9D,CAAC,CAAA;QAEF,MAAM,CAAC,eAAe,EAAE,eAAe,CAAC,GAAG,gBAAoC,CAAA;QAC/E,MAAM,mBAAmB,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,IAAI,CAAA;QAE1D,IAAI,eAAe,KAAK,EAAE,EAAE,CAAC;YAC3B,MAAM,gBAAgB,GAAG,eAAe,IAAI,eAAe,CAAA;YAE3D,OAAO;gBACL,eAAe,EAAE,oBAAoB,CAAC,EAAE,EAAE,aAAa,EAAE,aAAa,CAAC;gBACvE,eAAe,EAAE,oBAAoB,CAAC,eAAe,EAAE,aAAa,EAAE,aAAa,CAAC;gBACpF,WAAW,EAAE,KAAK;gBAClB,KAAK,EAAE,EAAE;gBACT,mBAAmB;gBACnB,KAAK,EAAE,gBAAgB;oBACrB,CAAC,CAAC,kCAAkC;oBACpC,CAAC,CAAC,oDAAoD;aACzD,CAAA;QACH,CAAC;QAED,OAAO;YACL,eAAe,EAAE,oBAAoB,CAAC,eAAe,EAAE,aAAa,EAAE,aAAa,CAAC;YACpF,eAAe,EAAE,oBAAoB,CAAC,eAAe,EAAE,aAAa,EAAE,aAAa,CAAC;YACpF,WAAW,EAAE,IAAI;YACjB,KAAK,EAAE,EAAE;YACT,mBAAmB;YACnB,KAAK,EAAE,SAAS;SACjB,CAAA;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAA;QAChD,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC"}