levr-sdk 0.1.2 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/README.md +5 -4
  2. package/dist/esm/client/hook/index.js +5 -9
  3. package/dist/esm/client/hook/index.js.map +1 -1
  4. package/dist/esm/client/hook/use-airdrop.js +19 -0
  5. package/dist/esm/client/hook/use-airdrop.js.map +1 -0
  6. package/dist/esm/client/hook/use-clanker.js +1 -34
  7. package/dist/esm/client/hook/use-clanker.js.map +1 -1
  8. package/dist/esm/client/hook/use-governance.js +2 -2
  9. package/dist/esm/client/hook/use-governance.js.map +1 -1
  10. package/dist/esm/client/hook/use-project.js +30 -6
  11. package/dist/esm/client/hook/use-project.js.map +1 -1
  12. package/dist/esm/client/hook/use-swap.js +0 -2
  13. package/dist/esm/client/hook/use-swap.js.map +1 -1
  14. package/dist/esm/client/levr-provider.js +10 -7
  15. package/dist/esm/client/levr-provider.js.map +1 -1
  16. package/dist/esm/fee-receivers.js +35 -6
  17. package/dist/esm/fee-receivers.js.map +1 -1
  18. package/dist/esm/governance.js +2 -7
  19. package/dist/esm/governance.js.map +1 -1
  20. package/dist/esm/project.js +106 -63
  21. package/dist/esm/project.js.map +1 -1
  22. package/dist/esm/quote/index.js +2 -2
  23. package/dist/esm/quote/v4.js +142 -128
  24. package/dist/esm/quote/v4.js.map +1 -1
  25. package/dist/esm/stake.js +1 -1
  26. package/dist/esm/stake.js.map +1 -1
  27. package/dist/esm/usd-price.js +21 -4
  28. package/dist/esm/usd-price.js.map +1 -1
  29. package/dist/esm/user.js +1 -1
  30. package/dist/esm/user.js.map +1 -1
  31. package/dist/types/client/hook/index.d.ts +5 -12
  32. package/dist/types/client/hook/index.d.ts.map +1 -1
  33. package/dist/types/client/hook/use-airdrop.d.ts +11 -0
  34. package/dist/types/client/hook/use-airdrop.d.ts.map +1 -0
  35. package/dist/types/client/hook/use-clanker.d.ts +1 -18
  36. package/dist/types/client/hook/use-clanker.d.ts.map +1 -1
  37. package/dist/types/client/hook/use-governance.d.ts +2 -1
  38. package/dist/types/client/hook/use-governance.d.ts.map +1 -1
  39. package/dist/types/client/hook/use-project.d.ts +11 -1
  40. package/dist/types/client/hook/use-project.d.ts.map +1 -1
  41. package/dist/types/client/hook/use-swap.d.ts.map +1 -1
  42. package/dist/types/client/levr-provider.d.ts +3 -10
  43. package/dist/types/client/levr-provider.d.ts.map +1 -1
  44. package/dist/types/fee-receivers.d.ts +514 -0
  45. package/dist/types/fee-receivers.d.ts.map +1 -1
  46. package/dist/types/governance.d.ts +3 -2
  47. package/dist/types/governance.d.ts.map +1 -1
  48. package/dist/types/project.d.ts +25 -6
  49. package/dist/types/project.d.ts.map +1 -1
  50. package/dist/types/quote/index.d.ts +2 -2
  51. package/dist/types/quote/v4.d.ts +5 -7
  52. package/dist/types/quote/v4.d.ts.map +1 -1
  53. package/dist/types/usd-price.d.ts +6 -1
  54. package/dist/types/usd-price.d.ts.map +1 -1
  55. package/dist/types/user.d.ts +1 -1
  56. package/dist/types/user.d.ts.map +1 -1
  57. package/package.json +1 -1
@@ -1,12 +1,15 @@
1
1
  import type { FeeReceiverAdmin } from './fee-receivers';
2
- import type { AirdropStatus } from './treasury';
3
2
  import type { BalanceResult, PoolKey, PopPublicClient, PricingResult } from './types';
4
- export type ProjectParams = {
3
+ export type StaticProjectParams = {
5
4
  publicClient: PopPublicClient;
6
5
  clankerToken: `0x${string}`;
7
- oraclePublicClient?: PopPublicClient;
8
6
  userAddress?: `0x${string}`;
9
7
  };
8
+ export type ProjectParams = {
9
+ publicClient: PopPublicClient;
10
+ staticProject: StaticProject;
11
+ oraclePublicClient?: PopPublicClient;
12
+ };
10
13
  export type ProjectMetadata = {
11
14
  description: string;
12
15
  socialMediaUrls: [];
@@ -48,6 +51,12 @@ export type StakingStats = {
48
51
  token: BalanceResult;
49
52
  weth: BalanceResult | null;
50
53
  };
54
+ streamParams: {
55
+ windowSeconds: number;
56
+ streamStart: bigint;
57
+ streamEnd: bigint;
58
+ isActive: boolean;
59
+ };
51
60
  };
52
61
  export type GovernanceStats = {
53
62
  currentCycleId: bigint;
@@ -72,6 +81,9 @@ export type Project = {
72
81
  totalSupply: bigint;
73
82
  metadata: ProjectMetadata | null;
74
83
  imageUrl?: string;
84
+ originalAdmin: `0x${string}`;
85
+ admin: `0x${string}`;
86
+ context: string;
75
87
  };
76
88
  pool?: PoolInfo;
77
89
  treasuryStats?: TreasuryStats;
@@ -79,23 +91,30 @@ export type Project = {
79
91
  governanceStats?: GovernanceStats;
80
92
  feeReceivers?: FeeReceiverAdmin[];
81
93
  pricing?: PricingResult;
82
- airdrop?: AirdropStatus | null;
83
94
  };
95
+ export type StaticProject = Pick<Project, 'treasury' | 'governor' | 'staking' | 'stakedToken' | 'forwarder' | 'factory' | 'token' | 'pool' | 'feeReceivers'>;
84
96
  export type ProjectsParams = {
85
97
  publicClient: PopPublicClient;
86
98
  offset?: number;
87
99
  limit?: number;
88
100
  };
89
101
  export type ProjectsResult = {
90
- projects: Omit<Project, 'forwarder' | 'pool' | 'pricing' | 'stakingStats' | 'governanceStats' | 'feeReceivers' | 'airdrop'>[];
102
+ projects: Omit<Project, 'forwarder' | 'pool' | 'pricing' | 'stakingStats' | 'governanceStats' | 'feeReceivers'>[];
91
103
  total: number;
92
104
  };
93
105
  /**
94
106
  * Get multiple projects data using factory's paginated getProjects()
95
107
  */
96
108
  export declare function getProjects({ publicClient, offset, limit, }: ProjectsParams): Promise<ProjectsResult>;
109
+ /**
110
+ * Get static project data that doesn't change frequently
111
+ * This includes contract addresses, token metadata, pool info, and fee receivers
112
+ */
113
+ export declare function getStaticProject({ publicClient, clankerToken, userAddress, }: StaticProjectParams): Promise<StaticProject | null>;
97
114
  /**
98
115
  * Get project data for a clanker token
116
+ * Requires staticProject data to avoid refetching static information
117
+ * Fetches dynamic data including treasury, governance, staking stats, and pricing
99
118
  */
100
- export declare function getProject({ publicClient, clankerToken, oraclePublicClient, userAddress, }: ProjectParams): Promise<Project | null>;
119
+ export declare function getProject({ publicClient, staticProject, oraclePublicClient, }: ProjectParams): Promise<Project | null>;
101
120
  //# sourceMappingURL=project.d.ts.map
@@ -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":"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"}
@@ -36,8 +36,8 @@
36
36
  * poolKey,
37
37
  * zeroForOne: true,
38
38
  * amountIn: parseEther('1'),
39
- * pricing,
40
- * tokenAddress: '0x...',
39
+ * currency0Decimals: 18,
40
+ * currency1Decimals: 18,
41
41
  * })
42
42
  * console.log(`Output: ${formatEther(v4Quote.amountOut)}`)
43
43
  * console.log(`Price Impact: ${v4Quote.priceImpactBps}%`)
@@ -1,6 +1,6 @@
1
1
  import type { PublicClient } from 'viem';
2
2
  import { V4Quoter } from '../abis';
3
- import type { PoolKey, PricingResult } from '../types';
3
+ import type { PoolKey } from '../types';
4
4
  export type QuoteV4Params = {
5
5
  /**
6
6
  * Public client for V4 quoter queries (only required for read method)
@@ -22,10 +22,6 @@ export type QuoteV4Params = {
22
22
  * Optional hook data
23
23
  */
24
24
  hookData?: `0x${string}`;
25
- /**
26
- * Optional pricing data for price impact calculation
27
- */
28
- pricing?: PricingResult;
29
25
  /**
30
26
  * Decimals for currency0 (default: 18)
31
27
  */
@@ -35,9 +31,10 @@ export type QuoteV4Params = {
35
31
  */
36
32
  currency1Decimals?: number;
37
33
  /**
38
- * Project token address to determine which currency is token vs WETH
34
+ * Whether to calculate price impact (requires fetching pool state)
35
+ * @default true
39
36
  */
40
- tokenAddress?: `0x${string}`;
37
+ calculatePriceImpact?: boolean;
41
38
  };
42
39
  export type QuoteV4ReadReturnType = {
43
40
  /**
@@ -82,6 +79,7 @@ export type QuoteV4BytecodeReturnType = {
82
79
  };
83
80
  /**
84
81
  * @description Quote a swap on Uniswap V4 by reading from the quoter contract
82
+ * Uses a single multicall for optimal performance when fetching quote, pool state, and hook fees
85
83
  * @param params Quote parameters including pool key and amount
86
84
  * @returns Quote result with output amount, gas estimate, price impact, and hook fees
87
85
  */
@@ -1 +1 @@
1
- {"version":3,"file":"v4.d.ts","sourceRoot":"","sources":["../../../src/quote/v4.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AAGxC,OAAO,EAAiD,QAAQ,EAAE,MAAM,SAAS,CAAA;AAEjF,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAMtD,MAAM,MAAM,aAAa,GAAG;IAC1B;;OAEG;IACH,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B;;OAEG;IACH,OAAO,EAAE,OAAO,CAAA;IAChB;;OAEG;IACH,UAAU,EAAE,OAAO,CAAA;IACnB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAA;IAChB;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,MAAM,EAAE,CAAA;IACxB;;OAEG;IACH,OAAO,CAAC,EAAE,aAAa,CAAA;IACvB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B;;OAEG;IACH,YAAY,CAAC,EAAE,KAAK,MAAM,EAAE,CAAA;CAC7B,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG;IAClC;;OAEG;IACH,SAAS,EAAE,MAAM,CAAA;IACjB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAA;IACnB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB;;;;OAIG;IACH,QAAQ,CAAC,EAAE;QACT,IAAI,EAAE,QAAQ,GAAG,SAAS,CAAA;QAC1B,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB,OAAO,CAAC,EAAE,MAAM,CAAA;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;KAClB,CAAA;CACF,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG;IACtC;;OAEG;IACH,OAAO,EAAE,KAAK,MAAM,EAAE,CAAA;IACtB;;OAEG;IACH,IAAI,EAAE,KAAK,MAAM,EAAE,CAAA;IACnB;;OAEG;IACH,GAAG,EAAE,OAAO,QAAQ,CAAA;CACrB,CAAA;AAsLD;;;;GAIG;AACH,eAAO,MAAM,WAAW,GAAU,QAAQ,aAAa,KAAG,OAAO,CAAC,qBAAqB,CAwEtF,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAAI,QAAQ,aAAa,KAAG,yBAiCvD,CAAA"}
1
+ {"version":3,"file":"v4.d.ts","sourceRoot":"","sources":["../../../src/quote/v4.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AAGxC,OAAO,EAA4D,QAAQ,EAAE,MAAM,SAAS,CAAA;AAG5F,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAMvC,MAAM,MAAM,aAAa,GAAG;IAC1B;;OAEG;IACH,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B;;OAEG;IACH,OAAO,EAAE,OAAO,CAAA;IAChB;;OAEG;IACH,UAAU,EAAE,OAAO,CAAA;IACnB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAA;IAChB;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,MAAM,EAAE,CAAA;IACxB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B;;;OAGG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAA;CAC/B,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG;IAClC;;OAEG;IACH,SAAS,EAAE,MAAM,CAAA;IACjB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAA;IACnB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB;;;;OAIG;IACH,QAAQ,CAAC,EAAE;QACT,IAAI,EAAE,QAAQ,GAAG,SAAS,CAAA;QAC1B,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB,OAAO,CAAC,EAAE,MAAM,CAAA;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;KAClB,CAAA;CACF,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG;IACtC;;OAEG;IACH,OAAO,EAAE,KAAK,MAAM,EAAE,CAAA;IACtB;;OAEG;IACH,IAAI,EAAE,KAAK,MAAM,EAAE,CAAA;IACnB;;OAEG;IACH,GAAG,EAAE,OAAO,QAAQ,CAAA;CACrB,CAAA;AAsGD;;;;;GAKG;AACH,eAAO,MAAM,WAAW,GAAU,QAAQ,aAAa,KAAG,OAAO,CAAC,qBAAqB,CAsJtF,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAAI,QAAQ,aAAa,KAAG,yBAiCvD,CAAA"}
@@ -71,6 +71,10 @@ export type GetUsdPriceParams = {
71
71
  * Token address to get price for
72
72
  */
73
73
  tokenAddress: `0x${string}`;
74
+ /**
75
+ * Token decimals (required for accurate pricing)
76
+ */
77
+ tokenDecimals: number;
74
78
  /**
75
79
  * Optional fee tier for the token/WETH pool (in hundredths of a bip, e.g. 3000 = 0.3%)
76
80
  * If not provided, uses defaults from pool-key module (3000 = 0.3%)
@@ -133,9 +137,10 @@ export type GetUsdPriceReturnType = {
133
137
  * oraclePublicClient: mainnetClient,
134
138
  * quotePublicClient: testnetClient,
135
139
  * tokenAddress: '0x123...',
140
+ * tokenDecimals: 18,
136
141
  * })
137
142
  * console.log(`Token price: $${priceUsd}`)
138
143
  * ```
139
144
  */
140
- export declare const getUsdPrice: ({ oraclePublicClient, quotePublicClient, tokenAddress, quoteFee, quoteTickSpacing, quoteHooks, }: GetUsdPriceParams) => Promise<GetUsdPriceReturnType>;
145
+ export declare const getUsdPrice: ({ oraclePublicClient, quotePublicClient, tokenAddress, tokenDecimals, quoteFee, quoteTickSpacing, quoteHooks, }: GetUsdPriceParams) => Promise<GetUsdPriceReturnType>;
141
146
  //# sourceMappingURL=usd-price.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"usd-price.d.ts","sourceRoot":"","sources":["../../src/usd-price.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AAOxC;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC;;;OAGG;IACH,YAAY,EAAE,YAAY,CAAA;CAC3B,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAA;IAChB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAA;IACnB;;OAEG;IACH,GAAG,EAAE,MAAM,CAAA;CACZ,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,eAAO,MAAM,eAAe,GAAU,mBAEnC,qBAAqB,KAAG,OAAO,CAAC,yBAAyB,CA0D3D,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B;;;OAGG;IACH,kBAAkB,EAAE,YAAY,CAAA;IAChC;;;OAGG;IACH,iBAAiB,EAAE,YAAY,CAAA;IAC/B;;OAEG;IACH,YAAY,EAAE,KAAK,MAAM,EAAE,CAAA;IAC3B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB;;;;OAIG;IACH,UAAU,CAAC,EAAE,KAAK,MAAM,EAAE,CAAA;CAC3B,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAA;IAChB;;OAEG;IACH,YAAY,EAAE,MAAM,CAAA;IACpB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAA;CACpB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,eAAO,MAAM,WAAW,GAAU,kGAO/B,iBAAiB,KAAG,OAAO,CAAC,qBAAqB,CAqDnD,CAAA"}
1
+ {"version":3,"file":"usd-price.d.ts","sourceRoot":"","sources":["../../src/usd-price.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AAOxC;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC;;;OAGG;IACH,YAAY,EAAE,YAAY,CAAA;CAC3B,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAA;IAChB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAA;IACnB;;OAEG;IACH,GAAG,EAAE,MAAM,CAAA;CACZ,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,eAAO,MAAM,eAAe,GAAU,mBAEnC,qBAAqB,KAAG,OAAO,CAAC,yBAAyB,CA0D3D,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B;;;OAGG;IACH,kBAAkB,EAAE,YAAY,CAAA;IAChC;;;OAGG;IACH,iBAAiB,EAAE,YAAY,CAAA;IAC/B;;OAEG;IACH,YAAY,EAAE,KAAK,MAAM,EAAE,CAAA;IAC3B;;OAEG;IACH,aAAa,EAAE,MAAM,CAAA;IACrB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB;;;;OAIG;IACH,UAAU,CAAC,EAAE,KAAK,MAAM,EAAE,CAAA;CAC3B,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAA;IAChB;;OAEG;IACH,YAAY,EAAE,MAAM,CAAA;IACpB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAA;CACpB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,eAAO,MAAM,WAAW,GAAU,iHAQ/B,iBAAiB,KAAG,OAAO,CAAC,qBAAqB,CAoEnD,CAAA"}
@@ -21,7 +21,7 @@ export type UserStaking = {
21
21
  export type User = {
22
22
  balances: UserBalances;
23
23
  staking: UserStaking;
24
- votingPower: BalanceResult;
24
+ votingPower: string;
25
25
  };
26
26
  /**
27
27
  * Helper: Get balance contracts for multicall composition
@@ -1 +1 @@
1
- {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../src/user.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE7D,MAAM,MAAM,UAAU,GAAG;IACvB,YAAY,EAAE,eAAe,CAAA;IAC7B,WAAW,EAAE,KAAK,MAAM,EAAE,CAAA;IAC1B,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,EAAE,aAAa,CAAA;IACpB,IAAI,EAAE,aAAa,CAAA;IACnB,GAAG,EAAE,aAAa,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,aAAa,EAAE,aAAa,CAAA;IAC5B,SAAS,EAAE,aAAa,CAAA;IACxB,gBAAgB,EAAE;QAChB,OAAO,EAAE,aAAa,CAAA;QACtB,IAAI,EAAE,aAAa,GAAG,IAAI,CAAA;KAC3B,CAAA;CACF,CAAA;AAED,MAAM,MAAM,IAAI,GAAG;IACjB,QAAQ,EAAE,YAAY,CAAA;IACtB,OAAO,EAAE,WAAW,CAAA;IACpB,WAAW,EAAE,aAAa,CAAA;CAC3B,CAAA;AAMD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE;IACvC,WAAW,EAAE,KAAK,MAAM,EAAE,CAAA;IAC1B,YAAY,EAAE,KAAK,MAAM,EAAE,CAAA;IAC3B,WAAW,CAAC,EAAE,KAAK,MAAM,EAAE,CAAA;CAC5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAoBA;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE;IACvC,WAAW,EAAE,KAAK,MAAM,EAAE,CAAA;IAC1B,cAAc,EAAE,KAAK,MAAM,EAAE,CAAA;IAC7B,YAAY,EAAE,KAAK,MAAM,EAAE,CAAA;IAC3B,WAAW,CAAC,EAAE,KAAK,MAAM,EAAE,CAAA;CAC5B,SAsCA;AAMD;;;GAGG;AACH,wBAAsB,OAAO,CAAC,EAAE,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAuF/F"}
1
+ {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../src/user.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE7D,MAAM,MAAM,UAAU,GAAG;IACvB,YAAY,EAAE,eAAe,CAAA;IAC7B,WAAW,EAAE,KAAK,MAAM,EAAE,CAAA;IAC1B,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,EAAE,aAAa,CAAA;IACpB,IAAI,EAAE,aAAa,CAAA;IACnB,GAAG,EAAE,aAAa,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,aAAa,EAAE,aAAa,CAAA;IAC5B,SAAS,EAAE,aAAa,CAAA;IACxB,gBAAgB,EAAE;QAChB,OAAO,EAAE,aAAa,CAAA;QACtB,IAAI,EAAE,aAAa,GAAG,IAAI,CAAA;KAC3B,CAAA;CACF,CAAA;AAED,MAAM,MAAM,IAAI,GAAG;IACjB,QAAQ,EAAE,YAAY,CAAA;IACtB,OAAO,EAAE,WAAW,CAAA;IACpB,WAAW,EAAE,MAAM,CAAA;CACpB,CAAA;AAMD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE;IACvC,WAAW,EAAE,KAAK,MAAM,EAAE,CAAA;IAC1B,YAAY,EAAE,KAAK,MAAM,EAAE,CAAA;IAC3B,WAAW,CAAC,EAAE,KAAK,MAAM,EAAE,CAAA;CAC5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAoBA;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE;IACvC,WAAW,EAAE,KAAK,MAAM,EAAE,CAAA;IAC1B,cAAc,EAAE,KAAK,MAAM,EAAE,CAAA;IAC7B,YAAY,EAAE,KAAK,MAAM,EAAE,CAAA;IAC3B,WAAW,CAAC,EAAE,KAAK,MAAM,EAAE,CAAA;CAC5B,SAsCA;AAMD;;;GAGG;AACH,wBAAsB,OAAO,CAAC,EAAE,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAuF/F"}
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.1.2",
4
+ "version": "0.2.0",
5
5
  "license": "Apache-2.0",
6
6
  "sideEffects": false,
7
7
  "exports": {