@nosana/kit 1.0.10 → 2.0.10

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 (289) hide show
  1. package/README.md +539 -152
  2. package/dist/NosanaClient.d.ts +58 -0
  3. package/dist/NosanaClient.js +103 -0
  4. package/dist/NosanaClient.js.map +1 -0
  5. package/dist/config/defaultConfigs.d.ts +2 -1
  6. package/dist/config/defaultConfigs.js +4 -4
  7. package/dist/config/defaultConfigs.js.map +1 -0
  8. package/dist/config/index.d.ts +1 -0
  9. package/dist/config/index.js +1 -0
  10. package/dist/config/index.js.map +1 -0
  11. package/dist/config/types.d.ts +41 -33
  12. package/dist/config/types.js +14 -13
  13. package/dist/config/types.js.map +1 -0
  14. package/dist/config/utils.d.ts +2 -2
  15. package/dist/config/utils.js +11 -4
  16. package/dist/config/utils.js.map +1 -0
  17. package/dist/errors/NosanaError.d.ts +1 -0
  18. package/dist/errors/NosanaError.js +2 -0
  19. package/dist/errors/NosanaError.js.map +1 -0
  20. package/dist/generated_clients/jobs/accounts/index.d.ts +5 -5
  21. package/dist/generated_clients/jobs/accounts/index.js +6 -5
  22. package/dist/generated_clients/jobs/accounts/index.js.map +1 -0
  23. package/dist/generated_clients/jobs/accounts/jobAccount.d.ts +10 -6
  24. package/dist/generated_clients/jobs/accounts/jobAccount.js +6 -2
  25. package/dist/generated_clients/jobs/accounts/jobAccount.js.map +1 -0
  26. package/dist/generated_clients/jobs/accounts/marketAccount.d.ts +6 -2
  27. package/dist/generated_clients/jobs/accounts/marketAccount.js +6 -2
  28. package/dist/generated_clients/jobs/accounts/marketAccount.js.map +1 -0
  29. package/dist/generated_clients/jobs/accounts/runAccount.d.ts +10 -6
  30. package/dist/generated_clients/jobs/accounts/runAccount.js +6 -2
  31. package/dist/generated_clients/jobs/accounts/runAccount.js.map +1 -0
  32. package/dist/generated_clients/jobs/errors/index.d.ts +3 -3
  33. package/dist/generated_clients/jobs/errors/index.js +4 -3
  34. package/dist/generated_clients/jobs/errors/index.js.map +1 -0
  35. package/dist/generated_clients/jobs/errors/nosanaJobs.d.ts +2 -2
  36. package/dist/generated_clients/jobs/errors/nosanaJobs.js +4 -3
  37. package/dist/generated_clients/jobs/errors/nosanaJobs.js.map +1 -0
  38. package/dist/generated_clients/jobs/index.d.ts +7 -7
  39. package/dist/generated_clients/jobs/index.js +8 -7
  40. package/dist/generated_clients/jobs/index.js.map +1 -0
  41. package/dist/generated_clients/jobs/instructions/assign.d.ts +14 -14
  42. package/dist/generated_clients/jobs/instructions/assign.js +8 -8
  43. package/dist/generated_clients/jobs/instructions/assign.js.map +1 -0
  44. package/dist/generated_clients/jobs/instructions/claim.d.ts +13 -13
  45. package/dist/generated_clients/jobs/instructions/claim.js +8 -8
  46. package/dist/generated_clients/jobs/instructions/claim.js.map +1 -0
  47. package/dist/generated_clients/jobs/instructions/clean.d.ts +10 -10
  48. package/dist/generated_clients/jobs/instructions/clean.js +8 -8
  49. package/dist/generated_clients/jobs/instructions/clean.js.map +1 -0
  50. package/dist/generated_clients/jobs/instructions/cleanAdmin.d.ts +11 -11
  51. package/dist/generated_clients/jobs/instructions/cleanAdmin.js +8 -8
  52. package/dist/generated_clients/jobs/instructions/cleanAdmin.js.map +1 -0
  53. package/dist/generated_clients/jobs/instructions/close.d.ts +11 -11
  54. package/dist/generated_clients/jobs/instructions/close.js +8 -8
  55. package/dist/generated_clients/jobs/instructions/close.js.map +1 -0
  56. package/dist/generated_clients/jobs/instructions/closeAdmin.d.ts +11 -11
  57. package/dist/generated_clients/jobs/instructions/closeAdmin.js +8 -8
  58. package/dist/generated_clients/jobs/instructions/closeAdmin.js.map +1 -0
  59. package/dist/generated_clients/jobs/instructions/complete.d.ts +11 -11
  60. package/dist/generated_clients/jobs/instructions/complete.js +9 -12
  61. package/dist/generated_clients/jobs/instructions/complete.js.map +1 -0
  62. package/dist/generated_clients/jobs/instructions/delist.d.ts +11 -11
  63. package/dist/generated_clients/jobs/instructions/delist.js +8 -8
  64. package/dist/generated_clients/jobs/instructions/delist.js.map +1 -0
  65. package/dist/generated_clients/jobs/instructions/end.d.ts +11 -11
  66. package/dist/generated_clients/jobs/instructions/end.js +8 -8
  67. package/dist/generated_clients/jobs/instructions/end.js.map +1 -0
  68. package/dist/generated_clients/jobs/instructions/extend.d.ts +12 -12
  69. package/dist/generated_clients/jobs/instructions/extend.js +8 -8
  70. package/dist/generated_clients/jobs/instructions/extend.js.map +1 -0
  71. package/dist/generated_clients/jobs/instructions/finish.d.ts +23 -20
  72. package/dist/generated_clients/jobs/instructions/finish.js +15 -12
  73. package/dist/generated_clients/jobs/instructions/finish.js.map +1 -0
  74. package/dist/generated_clients/jobs/instructions/index.d.ts +21 -21
  75. package/dist/generated_clients/jobs/instructions/index.js +22 -21
  76. package/dist/generated_clients/jobs/instructions/index.js.map +1 -0
  77. package/dist/generated_clients/jobs/instructions/list.d.ts +14 -14
  78. package/dist/generated_clients/jobs/instructions/list.js +8 -8
  79. package/dist/generated_clients/jobs/instructions/list.js.map +1 -0
  80. package/dist/generated_clients/jobs/instructions/open.d.ts +12 -12
  81. package/dist/generated_clients/jobs/instructions/open.js +8 -8
  82. package/dist/generated_clients/jobs/instructions/open.js.map +1 -0
  83. package/dist/generated_clients/jobs/instructions/quit.d.ts +11 -11
  84. package/dist/generated_clients/jobs/instructions/quit.js +8 -8
  85. package/dist/generated_clients/jobs/instructions/quit.js.map +1 -0
  86. package/dist/generated_clients/jobs/instructions/quitAdmin.d.ts +11 -11
  87. package/dist/generated_clients/jobs/instructions/quitAdmin.js +8 -8
  88. package/dist/generated_clients/jobs/instructions/quitAdmin.js.map +1 -0
  89. package/dist/generated_clients/jobs/instructions/recover.d.ts +11 -11
  90. package/dist/generated_clients/jobs/instructions/recover.js +8 -8
  91. package/dist/generated_clients/jobs/instructions/recover.js.map +1 -0
  92. package/dist/generated_clients/jobs/instructions/stop.d.ts +11 -11
  93. package/dist/generated_clients/jobs/instructions/stop.js +8 -8
  94. package/dist/generated_clients/jobs/instructions/stop.js.map +1 -0
  95. package/dist/generated_clients/jobs/instructions/update.d.ts +11 -11
  96. package/dist/generated_clients/jobs/instructions/update.js +8 -8
  97. package/dist/generated_clients/jobs/instructions/update.js.map +1 -0
  98. package/dist/generated_clients/jobs/instructions/work.d.ts +13 -13
  99. package/dist/generated_clients/jobs/instructions/work.js +8 -8
  100. package/dist/generated_clients/jobs/instructions/work.js.map +1 -0
  101. package/dist/generated_clients/jobs/programs/index.d.ts +3 -3
  102. package/dist/generated_clients/jobs/programs/index.js +4 -3
  103. package/dist/generated_clients/jobs/programs/index.js.map +1 -0
  104. package/dist/generated_clients/jobs/programs/nosanaJobs.d.ts +52 -50
  105. package/dist/generated_clients/jobs/programs/nosanaJobs.js +30 -31
  106. package/dist/generated_clients/jobs/programs/nosanaJobs.js.map +1 -0
  107. package/dist/generated_clients/jobs/shared/index.d.ts +5 -5
  108. package/dist/generated_clients/jobs/shared/index.js +4 -3
  109. package/dist/generated_clients/jobs/shared/index.js.map +1 -0
  110. package/dist/generated_clients/jobs/types/index.d.ts +5 -5
  111. package/dist/generated_clients/jobs/types/index.js +6 -5
  112. package/dist/generated_clients/jobs/types/index.js.map +1 -0
  113. package/dist/generated_clients/jobs/types/jobState.d.ts +12 -11
  114. package/dist/generated_clients/jobs/types/jobState.js +8 -8
  115. package/dist/generated_clients/jobs/types/jobState.js.map +1 -0
  116. package/dist/generated_clients/jobs/types/jobType.d.ts +15 -14
  117. package/dist/generated_clients/jobs/types/jobType.js +11 -11
  118. package/dist/generated_clients/jobs/types/jobType.js.map +1 -0
  119. package/dist/generated_clients/jobs/types/queueType.d.ts +12 -11
  120. package/dist/generated_clients/jobs/types/queueType.js +8 -8
  121. package/dist/generated_clients/jobs/types/queueType.js.map +1 -0
  122. package/dist/generated_clients/merkle_distributor/accounts/claimStatus.d.ts +10 -6
  123. package/dist/generated_clients/merkle_distributor/accounts/claimStatus.js +6 -2
  124. package/dist/generated_clients/merkle_distributor/accounts/claimStatus.js.map +1 -0
  125. package/dist/generated_clients/merkle_distributor/accounts/index.d.ts +4 -4
  126. package/dist/generated_clients/merkle_distributor/accounts/index.js +5 -4
  127. package/dist/generated_clients/merkle_distributor/accounts/index.js.map +1 -0
  128. package/dist/generated_clients/merkle_distributor/accounts/merkleDistributor.d.ts +10 -6
  129. package/dist/generated_clients/merkle_distributor/accounts/merkleDistributor.js +6 -2
  130. package/dist/generated_clients/merkle_distributor/accounts/merkleDistributor.js.map +1 -0
  131. package/dist/generated_clients/merkle_distributor/errors/index.d.ts +3 -3
  132. package/dist/generated_clients/merkle_distributor/errors/index.js +4 -3
  133. package/dist/generated_clients/merkle_distributor/errors/index.js.map +1 -0
  134. package/dist/generated_clients/merkle_distributor/errors/merkleDistributor.d.ts +2 -2
  135. package/dist/generated_clients/merkle_distributor/errors/merkleDistributor.js +4 -3
  136. package/dist/generated_clients/merkle_distributor/errors/merkleDistributor.js.map +1 -0
  137. package/dist/generated_clients/merkle_distributor/index.d.ts +6 -6
  138. package/dist/generated_clients/merkle_distributor/index.js +7 -6
  139. package/dist/generated_clients/merkle_distributor/index.js.map +1 -0
  140. package/dist/generated_clients/merkle_distributor/instructions/claimLocked.d.ts +11 -11
  141. package/dist/generated_clients/merkle_distributor/instructions/claimLocked.js +8 -8
  142. package/dist/generated_clients/merkle_distributor/instructions/claimLocked.js.map +1 -0
  143. package/dist/generated_clients/merkle_distributor/instructions/clawback.d.ts +11 -11
  144. package/dist/generated_clients/merkle_distributor/instructions/clawback.js +8 -8
  145. package/dist/generated_clients/merkle_distributor/instructions/clawback.js.map +1 -0
  146. package/dist/generated_clients/merkle_distributor/instructions/closeClaimStatus.d.ts +11 -11
  147. package/dist/generated_clients/merkle_distributor/instructions/closeClaimStatus.js +8 -8
  148. package/dist/generated_clients/merkle_distributor/instructions/closeClaimStatus.js.map +1 -0
  149. package/dist/generated_clients/merkle_distributor/instructions/closeDistributor.d.ts +11 -11
  150. package/dist/generated_clients/merkle_distributor/instructions/closeDistributor.js +8 -8
  151. package/dist/generated_clients/merkle_distributor/instructions/closeDistributor.js.map +1 -0
  152. package/dist/generated_clients/merkle_distributor/instructions/index.d.ts +11 -11
  153. package/dist/generated_clients/merkle_distributor/instructions/index.js +12 -11
  154. package/dist/generated_clients/merkle_distributor/instructions/index.js.map +1 -0
  155. package/dist/generated_clients/merkle_distributor/instructions/newClaim.d.ts +8 -8
  156. package/dist/generated_clients/merkle_distributor/instructions/newClaim.js +8 -8
  157. package/dist/generated_clients/merkle_distributor/instructions/newClaim.js.map +1 -0
  158. package/dist/generated_clients/merkle_distributor/instructions/newDistributor.d.ts +11 -11
  159. package/dist/generated_clients/merkle_distributor/instructions/newDistributor.js +8 -8
  160. package/dist/generated_clients/merkle_distributor/instructions/newDistributor.js.map +1 -0
  161. package/dist/generated_clients/merkle_distributor/instructions/setAdmin.d.ts +11 -11
  162. package/dist/generated_clients/merkle_distributor/instructions/setAdmin.js +8 -8
  163. package/dist/generated_clients/merkle_distributor/instructions/setAdmin.js.map +1 -0
  164. package/dist/generated_clients/merkle_distributor/instructions/setClawbackReceiver.d.ts +11 -11
  165. package/dist/generated_clients/merkle_distributor/instructions/setClawbackReceiver.js +8 -8
  166. package/dist/generated_clients/merkle_distributor/instructions/setClawbackReceiver.js.map +1 -0
  167. package/dist/generated_clients/merkle_distributor/instructions/setEnableSlot.d.ts +11 -11
  168. package/dist/generated_clients/merkle_distributor/instructions/setEnableSlot.js +9 -12
  169. package/dist/generated_clients/merkle_distributor/instructions/setEnableSlot.js.map +1 -0
  170. package/dist/generated_clients/merkle_distributor/programs/index.d.ts +3 -3
  171. package/dist/generated_clients/merkle_distributor/programs/index.js +4 -3
  172. package/dist/generated_clients/merkle_distributor/programs/index.js.map +1 -0
  173. package/dist/generated_clients/merkle_distributor/programs/merkleDistributor.d.ts +29 -27
  174. package/dist/generated_clients/merkle_distributor/programs/merkleDistributor.js +18 -19
  175. package/dist/generated_clients/merkle_distributor/programs/merkleDistributor.js.map +1 -0
  176. package/dist/generated_clients/merkle_distributor/shared/index.d.ts +5 -5
  177. package/dist/generated_clients/merkle_distributor/shared/index.js +4 -3
  178. package/dist/generated_clients/merkle_distributor/shared/index.js.map +1 -0
  179. package/dist/generated_clients/staking/accounts/index.d.ts +4 -4
  180. package/dist/generated_clients/staking/accounts/index.js +5 -4
  181. package/dist/generated_clients/staking/accounts/index.js.map +1 -0
  182. package/dist/generated_clients/staking/accounts/settingsAccount.d.ts +9 -6
  183. package/dist/generated_clients/staking/accounts/settingsAccount.js +6 -2
  184. package/dist/generated_clients/staking/accounts/settingsAccount.js.map +1 -0
  185. package/dist/generated_clients/staking/accounts/stakeAccount.d.ts +9 -6
  186. package/dist/generated_clients/staking/accounts/stakeAccount.js +6 -2
  187. package/dist/generated_clients/staking/accounts/stakeAccount.js.map +1 -0
  188. package/dist/generated_clients/staking/errors/index.d.ts +3 -3
  189. package/dist/generated_clients/staking/errors/index.js +4 -3
  190. package/dist/generated_clients/staking/errors/index.js.map +1 -0
  191. package/dist/generated_clients/staking/errors/nosanaStaking.d.ts +2 -2
  192. package/dist/generated_clients/staking/errors/nosanaStaking.js +4 -3
  193. package/dist/generated_clients/staking/errors/nosanaStaking.js.map +1 -0
  194. package/dist/generated_clients/staking/index.d.ts +6 -6
  195. package/dist/generated_clients/staking/index.js +7 -6
  196. package/dist/generated_clients/staking/index.js.map +1 -0
  197. package/dist/generated_clients/staking/instructions/close.d.ts +11 -11
  198. package/dist/generated_clients/staking/instructions/close.js +8 -8
  199. package/dist/generated_clients/staking/instructions/close.js.map +1 -0
  200. package/dist/generated_clients/staking/instructions/extend.d.ts +11 -11
  201. package/dist/generated_clients/staking/instructions/extend.js +9 -12
  202. package/dist/generated_clients/staking/instructions/extend.js.map +1 -0
  203. package/dist/generated_clients/staking/instructions/index.d.ts +12 -12
  204. package/dist/generated_clients/staking/instructions/index.js +13 -12
  205. package/dist/generated_clients/staking/instructions/index.js.map +1 -0
  206. package/dist/generated_clients/staking/instructions/init.d.ts +11 -11
  207. package/dist/generated_clients/staking/instructions/init.js +8 -8
  208. package/dist/generated_clients/staking/instructions/init.js.map +1 -0
  209. package/dist/generated_clients/staking/instructions/restake.d.ts +11 -11
  210. package/dist/generated_clients/staking/instructions/restake.js +8 -8
  211. package/dist/generated_clients/staking/instructions/restake.js.map +1 -0
  212. package/dist/generated_clients/staking/instructions/slash.d.ts +11 -11
  213. package/dist/generated_clients/staking/instructions/slash.js +8 -8
  214. package/dist/generated_clients/staking/instructions/slash.js.map +1 -0
  215. package/dist/generated_clients/staking/instructions/stake.d.ts +11 -11
  216. package/dist/generated_clients/staking/instructions/stake.js +8 -8
  217. package/dist/generated_clients/staking/instructions/stake.js.map +1 -0
  218. package/dist/generated_clients/staking/instructions/topup.d.ts +11 -11
  219. package/dist/generated_clients/staking/instructions/topup.js +8 -8
  220. package/dist/generated_clients/staking/instructions/topup.js.map +1 -0
  221. package/dist/generated_clients/staking/instructions/unstake.d.ts +11 -11
  222. package/dist/generated_clients/staking/instructions/unstake.js +8 -8
  223. package/dist/generated_clients/staking/instructions/unstake.js.map +1 -0
  224. package/dist/generated_clients/staking/instructions/updateSettings.d.ts +11 -11
  225. package/dist/generated_clients/staking/instructions/updateSettings.js +8 -8
  226. package/dist/generated_clients/staking/instructions/updateSettings.js.map +1 -0
  227. package/dist/generated_clients/staking/instructions/withdraw.d.ts +11 -11
  228. package/dist/generated_clients/staking/instructions/withdraw.js +8 -8
  229. package/dist/generated_clients/staking/instructions/withdraw.js.map +1 -0
  230. package/dist/generated_clients/staking/programs/index.d.ts +3 -3
  231. package/dist/generated_clients/staking/programs/index.js +4 -3
  232. package/dist/generated_clients/staking/programs/index.js.map +1 -0
  233. package/dist/generated_clients/staking/programs/nosanaStaking.d.ts +33 -31
  234. package/dist/generated_clients/staking/programs/nosanaStaking.js +20 -21
  235. package/dist/generated_clients/staking/programs/nosanaStaking.js.map +1 -0
  236. package/dist/generated_clients/staking/shared/index.d.ts +5 -5
  237. package/dist/generated_clients/staking/shared/index.js +4 -3
  238. package/dist/generated_clients/staking/shared/index.js.map +1 -0
  239. package/dist/index.d.ts +13 -32
  240. package/dist/index.js +13 -37
  241. package/dist/index.js.map +1 -0
  242. package/dist/logger/Logger.d.ts +4 -4
  243. package/dist/logger/Logger.js +7 -2
  244. package/dist/logger/Logger.js.map +1 -0
  245. package/dist/services/SolanaService.d.ts +49 -26
  246. package/dist/services/SolanaService.js +191 -133
  247. package/dist/services/SolanaService.js.map +1 -0
  248. package/dist/services/TokenService.d.ts +41 -0
  249. package/dist/services/TokenService.js +136 -0
  250. package/dist/services/TokenService.js.map +1 -0
  251. package/dist/services/programs/JobsProgram.d.ts +106 -0
  252. package/dist/services/programs/JobsProgram.js +584 -0
  253. package/dist/services/programs/JobsProgram.js.map +1 -0
  254. package/dist/services/programs/MerkleDistributorProgram.d.ts +101 -0
  255. package/dist/services/programs/MerkleDistributorProgram.js +343 -0
  256. package/dist/services/programs/MerkleDistributorProgram.js.map +1 -0
  257. package/dist/services/programs/StakeProgram.d.ts +46 -0
  258. package/dist/services/programs/StakeProgram.js +87 -0
  259. package/dist/services/programs/StakeProgram.js.map +1 -0
  260. package/dist/types.d.ts +17 -0
  261. package/dist/types.js +2 -0
  262. package/dist/types.js.map +1 -0
  263. package/dist/utils/convertBigIntToNumber.d.ts +19 -0
  264. package/dist/utils/convertBigIntToNumber.js +15 -0
  265. package/dist/utils/convertBigIntToNumber.js.map +1 -0
  266. package/dist/utils/getStaticAccounts.d.ts +23 -0
  267. package/dist/utils/getStaticAccounts.js +39 -0
  268. package/dist/utils/getStaticAccounts.js.map +1 -0
  269. package/dist/utils/index.d.ts +3 -20
  270. package/dist/utils/index.js +5 -16
  271. package/dist/utils/index.js.map +1 -0
  272. package/dist/utils/walletToAuthorizationSigner.d.ts +10 -0
  273. package/dist/utils/walletToAuthorizationSigner.js +42 -0
  274. package/dist/utils/walletToAuthorizationSigner.js.map +1 -0
  275. package/package.json +17 -14
  276. package/dist/ipfs/IPFS.d.ts +0 -50
  277. package/dist/ipfs/IPFS.js +0 -149
  278. package/dist/programs/BaseProgram.d.ts +0 -20
  279. package/dist/programs/BaseProgram.js +0 -31
  280. package/dist/programs/JobsProgram.d.ts +0 -129
  281. package/dist/programs/JobsProgram.js +0 -559
  282. package/dist/programs/MerkleDistributorProgram.d.ts +0 -115
  283. package/dist/programs/MerkleDistributorProgram.js +0 -337
  284. package/dist/programs/StakeProgram.d.ts +0 -29
  285. package/dist/programs/StakeProgram.js +0 -91
  286. package/dist/services/NosService.d.ts +0 -48
  287. package/dist/services/NosService.js +0 -139
  288. package/dist/utils/walletConverter.d.ts +0 -9
  289. package/dist/utils/walletConverter.js +0 -141
@@ -0,0 +1,58 @@
1
+ import { NosanaNetwork } from '@nosana/types';
2
+ import { createIpfsClient } from '@nosana/ipfs';
3
+ import { type NosanaApi } from '@nosana/api';
4
+ import { type NosanaAuthorization } from '@nosana/authorization';
5
+ import { Logger } from './logger/Logger.js';
6
+ import { ClientConfig, PartialClientConfig } from './config/index.js';
7
+ import { type JobsProgram } from './services/programs/JobsProgram.js';
8
+ import { type StakeProgram } from './services/programs/StakeProgram.js';
9
+ import { type MerkleDistributorProgram } from './services/programs/MerkleDistributorProgram.js';
10
+ import { type SolanaService } from './services/SolanaService.js';
11
+ import { type TokenService } from './services/TokenService.js';
12
+ import type { Wallet } from './types.js';
13
+ /**
14
+ * The Nosana client interface. Contains all the services and programs
15
+ * needed to interact with the Nosana network.
16
+ */
17
+ export interface NosanaClient {
18
+ readonly config: ClientConfig;
19
+ readonly jobs: JobsProgram;
20
+ readonly stake: StakeProgram;
21
+ readonly merkleDistributor: MerkleDistributorProgram;
22
+ readonly solana: SolanaService;
23
+ readonly nos: TokenService;
24
+ readonly api: NosanaApi | undefined;
25
+ readonly ipfs: ReturnType<typeof createIpfsClient>;
26
+ readonly authorization: NosanaAuthorization | Omit<NosanaAuthorization, 'generate' | 'generateHeaders'>;
27
+ readonly logger: Logger;
28
+ /**
29
+ * The wallet. Must be a Wallet (supports both message and transaction signing).
30
+ * Set this property directly to configure the wallet.
31
+ *
32
+ * @example
33
+ * ```ts
34
+ * import { createNosanaClient, NosanaNetwork } from '@nosana/kit';
35
+ *
36
+ * const client = createNosanaClient(NosanaNetwork.MAINNET);
37
+ * client.wallet = myWallet;
38
+ * ```
39
+ */
40
+ wallet: Wallet | undefined;
41
+ }
42
+ /**
43
+ * Creates a new Nosana client instance.
44
+ *
45
+ *
46
+ * @param network - The network to connect to (default: MAINNET)
47
+ * @param customConfig - Optional custom configuration to override defaults
48
+ * @returns A Nosana client instance with all services and programs
49
+ *
50
+ * @example
51
+ * ```ts
52
+ * import { createNosanaClient, NosanaNetwork } from '@nosana/kit';
53
+ *
54
+ * const client = createNosanaClient(NosanaNetwork.MAINNET);
55
+ * client.wallet = myWallet;
56
+ * ```
57
+ */
58
+ export declare function createNosanaClient(network?: NosanaNetwork, customConfig?: PartialClientConfig): NosanaClient;
@@ -0,0 +1,103 @@
1
+ import { NosanaNetwork } from '@nosana/types';
2
+ import { createIpfsClient } from '@nosana/ipfs';
3
+ import { createNosanaApi } from '@nosana/api';
4
+ import { createNosanaAuthorization } from '@nosana/authorization';
5
+ import { Logger } from './logger/Logger.js';
6
+ import { getNosanaConfig } from './config/index.js';
7
+ import { createJobsProgram } from './services/programs/JobsProgram.js';
8
+ import { createStakeProgram } from './services/programs/StakeProgram.js';
9
+ import { createMerkleDistributorProgram, } from './services/programs/MerkleDistributorProgram.js';
10
+ import { createSolanaService } from './services/SolanaService.js';
11
+ import { createTokenService } from './services/TokenService.js';
12
+ import { walletToAuthorizationSigner } from './utils/walletToAuthorizationSigner.js';
13
+ /**
14
+ * Creates a new Nosana client instance.
15
+ *
16
+ *
17
+ * @param network - The network to connect to (default: MAINNET)
18
+ * @param customConfig - Optional custom configuration to override defaults
19
+ * @returns A Nosana client instance with all services and programs
20
+ *
21
+ * @example
22
+ * ```ts
23
+ * import { createNosanaClient, NosanaNetwork } from '@nosana/kit';
24
+ *
25
+ * const client = createNosanaClient(NosanaNetwork.MAINNET);
26
+ * client.wallet = myWallet;
27
+ * ```
28
+ */
29
+ export function createNosanaClient(network = NosanaNetwork.MAINNET, customConfig) {
30
+ const config = getNosanaConfig(network, customConfig);
31
+ const logger = Logger.getInstance({ level: config.logLevel });
32
+ // Wallet management
33
+ let wallet = config.wallet;
34
+ const getWallet = () => wallet;
35
+ // Create Solana services
36
+ const solana = createSolanaService({
37
+ logger,
38
+ getWallet,
39
+ }, config.solana);
40
+ // Initialize TokenService with minimal dependencies
41
+ const nos = createTokenService({
42
+ logger,
43
+ solana,
44
+ }, {
45
+ tokenAddress: config.programs.nosTokenAddress,
46
+ });
47
+ // Create program dependencies
48
+ const programDeps = {
49
+ logger,
50
+ solana,
51
+ getWallet,
52
+ };
53
+ // Initialize programs
54
+ const jobs = createJobsProgram(programDeps, config.programs);
55
+ const stake = createStakeProgram(programDeps, config.programs);
56
+ const merkleDistributor = createMerkleDistributorProgram(programDeps, config.programs);
57
+ // Initialize Nosana Modules
58
+ const ipfs = createIpfsClient(config.ipfs);
59
+ const createReactiveNosanaModules = () => {
60
+ const authorization = wallet
61
+ ? createNosanaAuthorization(walletToAuthorizationSigner(wallet))
62
+ : createNosanaAuthorization();
63
+ // Use API key if provided, otherwise fall back to wallet-based auth
64
+ const api = config.api?.apiKey
65
+ ? createNosanaApi(network, config.api.apiKey)
66
+ : wallet
67
+ ? createNosanaApi(network, {
68
+ identifier: wallet.address.toString(),
69
+ generate: authorization.generate,
70
+ })
71
+ : undefined;
72
+ return {
73
+ authorization,
74
+ api,
75
+ };
76
+ };
77
+ let reactiveNosanaModules = createReactiveNosanaModules();
78
+ // Build and return the client
79
+ return {
80
+ config,
81
+ logger,
82
+ solana,
83
+ nos,
84
+ jobs,
85
+ stake,
86
+ merkleDistributor,
87
+ ipfs,
88
+ get authorization() {
89
+ return reactiveNosanaModules.authorization;
90
+ },
91
+ get api() {
92
+ return reactiveNosanaModules.api;
93
+ },
94
+ get wallet() {
95
+ return wallet;
96
+ },
97
+ set wallet(value) {
98
+ wallet = value;
99
+ reactiveNosanaModules = createReactiveNosanaModules();
100
+ },
101
+ };
102
+ }
103
+ //# sourceMappingURL=NosanaClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NosanaClient.js","sourceRoot":"","sources":["../src/NosanaClient.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,3 @@
1
- import { ClientConfig, NosanaNetwork } from './types';
1
+ import type { NosanaNetwork } from '@nosana/types';
2
+ import type { ClientConfig } from './types.js';
2
3
  export declare const DEFAULT_CONFIGS: Record<NosanaNetwork, ClientConfig>;
@@ -1,5 +1,4 @@
1
- import { address } from 'gill';
2
- import { NosanaLogLevel } from './types';
1
+ import { address } from '@solana/kit';
3
2
  export const DEFAULT_CONFIGS = {
4
3
  mainnet: {
5
4
  solana: {
@@ -20,7 +19,7 @@ export const DEFAULT_CONFIGS = {
20
19
  poolsAddress: address('nosPdZrfDzND1LAR28FLMDEATUPK53K8xbRBXAirevD'),
21
20
  merkleDistributorAddress: address('merkp8F8f5EgYSYKadk3YiuQQdo3JPdnJWKviaaF425'),
22
21
  },
23
- logLevel: NosanaLogLevel.ERROR,
22
+ logLevel: 'error',
24
23
  },
25
24
  devnet: {
26
25
  solana: {
@@ -41,6 +40,7 @@ export const DEFAULT_CONFIGS = {
41
40
  poolsAddress: address('nosPdZrfDzND1LAR28FLMDEATUPK53K8xbRBXAirevD'),
42
41
  merkleDistributorAddress: address('merkp8F8f5EgYSYKadk3YiuQQdo3JPdnJWKviaaF425'),
43
42
  },
44
- logLevel: NosanaLogLevel.DEBUG,
43
+ logLevel: 'debug',
45
44
  },
46
45
  };
46
+ //# sourceMappingURL=defaultConfigs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaultConfigs.js","sourceRoot":"","sources":["../../src/config/defaultConfigs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAMtC,MAAM,CAAC,MAAM,eAAe,GAAwC;IAClE,OAAO,EAAE;QACP,MAAM,EAAE;YACN,OAAO,EAAE,cAAc;YACvB,WAAW,EAAE,yEAAyE;YACtF,UAAU,EAAE,WAAW;SACxB;QACD,IAAI,EAAE;YACJ,GAAG,EAAE,0BAA0B;YAC/B,GAAG,EAAE,+mBAA+mB;YACpnB,OAAO,EAAE,qCAAqC;SAC/C;QACD,QAAQ,EAAE;YACR,eAAe,EAAE,OAAO,CAAC,6CAA6C,CAAC;YACvE,WAAW,EAAE,OAAO,CAAC,6CAA6C,CAAC;YACnE,cAAc,EAAE,OAAO,CAAC,6CAA6C,CAAC;YACtE,YAAY,EAAE,OAAO,CAAC,6CAA6C,CAAC;YACpE,YAAY,EAAE,OAAO,CAAC,6CAA6C,CAAC;YACpE,wBAAwB,EAAE,OAAO,CAAC,6CAA6C,CAAC;SACjF;QACD,QAAQ,EAAE,OAAmB;KAC9B;IACD,MAAM,EAAE;QACN,MAAM,EAAE;YACN,OAAO,EAAE,QAAQ;YACjB,WAAW,EAAE,+BAA+B;YAC5C,UAAU,EAAE,WAAW;SACxB;QACD,IAAI,EAAE;YACJ,GAAG,EAAE,0BAA0B;YAC/B,GAAG,EAAE,+mBAA+mB;YACpnB,OAAO,EAAE,qCAAqC;SAC/C;QACD,QAAQ,EAAE;YACR,eAAe,EAAE,OAAO,CAAC,6CAA6C,CAAC;YACvE,WAAW,EAAE,OAAO,CAAC,6CAA6C,CAAC;YACnE,cAAc,EAAE,OAAO,CAAC,6CAA6C,CAAC;YACtE,YAAY,EAAE,OAAO,CAAC,6CAA6C,CAAC;YACpE,YAAY,EAAE,OAAO,CAAC,6CAA6C,CAAC;YACpE,wBAAwB,EAAE,OAAO,CAAC,6CAA6C,CAAC;SACjF;QACD,QAAQ,EAAE,OAAmB;KAC9B;CACF,CAAC"}
@@ -1,3 +1,4 @@
1
1
  export * from './types.js';
2
2
  export * from './defaultConfigs.js';
3
3
  export * from './utils.js';
4
+ export type { LogLevel } from '../logger/Logger.js';
@@ -1,3 +1,4 @@
1
1
  export * from './types.js';
2
2
  export * from './defaultConfigs.js';
3
3
  export * from './utils.js';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC"}
@@ -1,44 +1,52 @@
1
- import { Address, KeyPairSigner, SolanaClusterMoniker } from 'gill';
2
- export declare enum NosanaNetwork {
3
- MAINNET = "mainnet",
4
- DEVNET = "devnet"
5
- }
6
- export declare enum NosanaLogLevel {
7
- NONE = 0,
8
- ERROR = 1,
9
- WARN = 2,
10
- INFO = 3,
11
- DEBUG = 4
12
- }
1
+ import type { Address, TransactionSigner } from '@solana/kit';
2
+ import type { IPFSConfig } from '@nosana/ipfs';
3
+ import type { Wallet } from '../types.js';
4
+ import type { LogLevel } from '../logger/Logger.js';
5
+ export declare const SolanaClusterMoniker: {
6
+ readonly DEVNET: "devnet";
7
+ readonly LOCALNET: "localnet";
8
+ readonly MAINNET: "mainnet";
9
+ readonly TESTNET: "testnet";
10
+ readonly MAINNET_BETA: "mainnet-beta";
11
+ readonly LOCALHOST: "localhost";
12
+ };
13
+ export type SolanaClusterMoniker = (typeof SolanaClusterMoniker)[keyof typeof SolanaClusterMoniker];
14
+ export declare const SolanaCommitment: {
15
+ readonly PROCESSED: "processed";
16
+ readonly CONFIRMED: "confirmed";
17
+ readonly FINALIZED: "finalized";
18
+ };
19
+ export type SolanaCommitment = (typeof SolanaCommitment)[keyof typeof SolanaCommitment];
13
20
  export interface SolanaConfig {
14
- cluster: SolanaClusterMoniker | 'mainnet-beta' | 'localhost';
21
+ cluster: SolanaClusterMoniker;
15
22
  rpcEndpoint: string;
16
23
  wsEndpoint?: string;
17
- commitment?: 'processed' | 'confirmed' | 'finalized';
24
+ commitment?: SolanaCommitment;
25
+ feePayer?: TransactionSigner;
26
+ }
27
+ export interface ProgramConfig {
28
+ nosTokenAddress: Address;
29
+ jobsAddress: Address;
30
+ rewardsAddress: Address;
31
+ stakeAddress: Address;
32
+ poolsAddress: Address;
33
+ merkleDistributorAddress: Address;
18
34
  }
19
- export type WalletConfig = KeyPairSigner | string | Iterable<number>;
20
- export interface IpfsConfig {
21
- api: string;
22
- jwt: string;
23
- gateway: string;
35
+ export interface APIConfig {
36
+ apiKey?: string;
24
37
  }
25
38
  export interface ClientConfig {
26
39
  solana: SolanaConfig;
27
- wallet?: WalletConfig;
28
- logLevel: NosanaLogLevel;
29
- ipfs: IpfsConfig;
30
- programs: {
31
- nosTokenAddress: Address;
32
- jobsAddress: Address;
33
- rewardsAddress: Address;
34
- stakeAddress: Address;
35
- poolsAddress: Address;
36
- merkleDistributorAddress: Address;
37
- };
40
+ wallet?: Wallet;
41
+ logLevel: LogLevel;
42
+ ipfs: IPFSConfig;
43
+ programs: ProgramConfig;
44
+ api?: APIConfig;
38
45
  }
39
46
  export interface PartialClientConfig {
40
47
  solana?: Partial<SolanaConfig>;
41
- wallet?: WalletConfig;
42
- ipfs?: Partial<IpfsConfig>;
43
- logLevel?: NosanaLogLevel;
48
+ wallet?: Wallet;
49
+ ipfs?: Partial<IPFSConfig>;
50
+ logLevel?: LogLevel;
51
+ api?: Partial<APIConfig>;
44
52
  }
@@ -1,13 +1,14 @@
1
- export var NosanaNetwork;
2
- (function (NosanaNetwork) {
3
- NosanaNetwork["MAINNET"] = "mainnet";
4
- NosanaNetwork["DEVNET"] = "devnet";
5
- })(NosanaNetwork || (NosanaNetwork = {}));
6
- export var NosanaLogLevel;
7
- (function (NosanaLogLevel) {
8
- NosanaLogLevel[NosanaLogLevel["NONE"] = 0] = "NONE";
9
- NosanaLogLevel[NosanaLogLevel["ERROR"] = 1] = "ERROR";
10
- NosanaLogLevel[NosanaLogLevel["WARN"] = 2] = "WARN";
11
- NosanaLogLevel[NosanaLogLevel["INFO"] = 3] = "INFO";
12
- NosanaLogLevel[NosanaLogLevel["DEBUG"] = 4] = "DEBUG";
13
- })(NosanaLogLevel || (NosanaLogLevel = {}));
1
+ export const SolanaClusterMoniker = {
2
+ DEVNET: 'devnet',
3
+ LOCALNET: 'localnet',
4
+ MAINNET: 'mainnet',
5
+ TESTNET: 'testnet',
6
+ MAINNET_BETA: 'mainnet-beta',
7
+ LOCALHOST: 'localhost',
8
+ };
9
+ export const SolanaCommitment = {
10
+ PROCESSED: 'processed',
11
+ CONFIRMED: 'confirmed',
12
+ FINALIZED: 'finalized',
13
+ };
14
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"AAMA,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,YAAY,EAAE,cAAc;IAC5B,SAAS,EAAE,WAAW;CACd,CAAC;AAIX,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,SAAS,EAAE,WAAW;IACtB,SAAS,EAAE,WAAW;IACtB,SAAS,EAAE,WAAW;CACd,CAAC"}
@@ -1,3 +1,3 @@
1
- import { ClientConfig, NosanaNetwork, PartialClientConfig } from './types.js';
2
- export declare const mergeConfigs: (defaultConfig: ClientConfig, customConfig?: PartialClientConfig) => ClientConfig;
1
+ import { NosanaNetwork } from '@nosana/types';
2
+ import type { ClientConfig, PartialClientConfig } from './types.js';
3
3
  export declare const getNosanaConfig: (network?: NosanaNetwork, config?: PartialClientConfig) => ClientConfig;
@@ -1,7 +1,7 @@
1
- import { ErrorCodes, NosanaError } from '../errors/NosanaError.js';
1
+ import { NosanaNetwork } from '@nosana/types';
2
2
  import { DEFAULT_CONFIGS } from './defaultConfigs.js';
3
- import { NosanaNetwork } from './types.js';
4
- export const mergeConfigs = (defaultConfig, customConfig) => {
3
+ import { ErrorCodes, NosanaError } from '../errors/NosanaError.js';
4
+ const mergeConfigs = (defaultConfig, customConfig) => {
5
5
  if (!customConfig)
6
6
  return defaultConfig;
7
7
  return {
@@ -15,6 +15,12 @@ export const mergeConfigs = (defaultConfig, customConfig) => {
15
15
  ...defaultConfig.ipfs,
16
16
  ...customConfig.ipfs,
17
17
  },
18
+ api: customConfig.api
19
+ ? {
20
+ ...defaultConfig.api,
21
+ ...customConfig.api,
22
+ }
23
+ : defaultConfig.api,
18
24
  };
19
25
  };
20
26
  export const getNosanaConfig = (network = NosanaNetwork.MAINNET, config) => {
@@ -35,5 +41,6 @@ export const getNosanaConfig = (network = NosanaNetwork.MAINNET, config) => {
35
41
  // jwt: 'your-custom-jwt-token',
36
42
  // gateway: 'https://your-custom-gateway.com/ipfs/',
37
43
  // },
38
- // logLevel: NosanaLogLevel.DEBUG,
44
+ // logLevel: 'debug',
39
45
  // });
46
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/config/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAInE,MAAM,YAAY,GAAG,CACnB,aAA2B,EAC3B,YAAkC,EACpB,EAAE;IAChB,IAAI,CAAC,YAAY;QAAE,OAAO,aAAa,CAAC;IAExC,OAAO;QACL,GAAG,aAAa;QAChB,GAAG,YAAY;QACf,MAAM,EAAE;YACN,GAAG,aAAa,CAAC,MAAM;YACvB,GAAG,YAAY,CAAC,MAAM;SACvB;QACD,IAAI,EAAE;YACJ,GAAG,aAAa,CAAC,IAAI;YACrB,GAAG,YAAY,CAAC,IAAI;SACrB;QACD,GAAG,EAAE,YAAY,CAAC,GAAG;YACnB,CAAC,CAAC;gBACE,GAAG,aAAa,CAAC,GAAG;gBACpB,GAAG,YAAY,CAAC,GAAG;aACpB;YACH,CAAC,CAAC,aAAa,CAAC,GAAG;KACtB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,UAAyB,aAAa,CAAC,OAAO,EAC9C,MAA4B,EACd,EAAE;IAChB,MAAM,aAAa,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;IAC/C,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,IAAI,WAAW,CAAC,+BAA+B,OAAO,EAAE,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC;IAC9F,CAAC;IACD,OAAO,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;AAC7C,CAAC,CAAC;AAEF,mFAAmF;AACnF,2CAA2C;AAC3C,2DAA2D;AAC3D,gEAAgE;AAChE,cAAc;AACd,mDAAmD;AACnD,OAAO;AACP,YAAY;AACZ,oCAAoC;AACpC,wDAAwD;AACxD,OAAO;AACP,uBAAuB;AACvB,MAAM"}
@@ -13,5 +13,6 @@ export declare const ErrorCodes: {
13
13
  readonly NO_WALLET: "NO_WALLET";
14
14
  readonly FILE_ERROR: "FILE_ERROR";
15
15
  readonly WALLET_CONVERSION_ERROR: "WALLET_CONVERSION_ERROR";
16
+ readonly AUTH_ERROR: "AUTH_ERROR";
16
17
  };
17
18
  export type ErrorCode = (typeof ErrorCodes)[keyof typeof ErrorCodes];
@@ -16,4 +16,6 @@ export const ErrorCodes = {
16
16
  NO_WALLET: 'NO_WALLET',
17
17
  FILE_ERROR: 'FILE_ERROR',
18
18
  WALLET_CONVERSION_ERROR: 'WALLET_CONVERSION_ERROR',
19
+ AUTH_ERROR: 'AUTH_ERROR',
19
20
  };
21
+ //# sourceMappingURL=NosanaError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NosanaError.js","sourceRoot":"","sources":["../../src/errors/NosanaError.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,WAAY,SAAQ,KAAK;IACpC,YACE,OAAe,EACC,IAAY,EACZ,OAAiB;QAEjC,KAAK,CAAC,OAAO,CAAC,CAAC;QAHC,SAAI,GAAJ,IAAI,CAAQ;QACZ,YAAO,GAAP,OAAO,CAAU;QAGjC,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC;IAC5B,CAAC;CACF;AAED,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,eAAe,EAAE,iBAAiB;IAClC,cAAc,EAAE,gBAAgB;IAChC,SAAS,EAAE,WAAW;IACtB,iBAAiB,EAAE,mBAAmB;IACtC,aAAa,EAAE,eAAe;IAC9B,gBAAgB,EAAE,kBAAkB;IACpC,SAAS,EAAE,WAAW;IACtB,UAAU,EAAE,YAAY;IACxB,uBAAuB,EAAE,yBAAyB;IAClD,UAAU,EAAE,YAAY;CAChB,CAAC"}
@@ -1,10 +1,10 @@
1
1
  /**
2
- * This code was AUTOGENERATED using the codama library.
2
+ * This code was AUTOGENERATED using the Codama library.
3
3
  * Please DO NOT EDIT THIS FILE, instead use visitors
4
- * to add features, then rerun codama to update it.
4
+ * to add features, then rerun Codama to update it.
5
5
  *
6
6
  * @see https://github.com/codama-idl/codama
7
7
  */
8
- export * from './jobAccount';
9
- export * from './marketAccount';
10
- export * from './runAccount';
8
+ export * from './jobAccount.js';
9
+ export * from './marketAccount.js';
10
+ export * from './runAccount.js';
@@ -1,10 +1,11 @@
1
1
  /**
2
- * This code was AUTOGENERATED using the codama library.
2
+ * This code was AUTOGENERATED using the Codama library.
3
3
  * Please DO NOT EDIT THIS FILE, instead use visitors
4
- * to add features, then rerun codama to update it.
4
+ * to add features, then rerun Codama to update it.
5
5
  *
6
6
  * @see https://github.com/codama-idl/codama
7
7
  */
8
- export * from './jobAccount';
9
- export * from './marketAccount';
10
- export * from './runAccount';
8
+ export * from './jobAccount.js';
9
+ export * from './marketAccount.js';
10
+ export * from './runAccount.js';
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/generated_clients/jobs/accounts/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC"}
@@ -1,13 +1,14 @@
1
1
  /**
2
- * This code was AUTOGENERATED using the codama library.
2
+ * This code was AUTOGENERATED using the Codama library.
3
3
  * Please DO NOT EDIT THIS FILE, instead use visitors
4
- * to add features, then rerun codama to update it.
4
+ * to add features, then rerun Codama to update it.
5
5
  *
6
6
  * @see https://github.com/codama-idl/codama
7
7
  */
8
- import { fetchEncodedAccount, fetchEncodedAccounts, type Account, type Address, type Codec, type Decoder, type EncodedAccount, type Encoder, type FetchAccountConfig, type FetchAccountsConfig, type MaybeAccount, type MaybeEncodedAccount, type ReadonlyUint8Array } from '@solana/kit';
8
+ import { fetchEncodedAccount, fetchEncodedAccounts, type Account, type Address, type EncodedAccount, type FetchAccountConfig, type FetchAccountsConfig, type FixedSizeCodec, type FixedSizeDecoder, type FixedSizeEncoder, type MaybeAccount, type MaybeEncodedAccount, type ReadonlyUint8Array } from '@solana/kit';
9
9
  export declare const JOB_ACCOUNT_DISCRIMINATOR: Uint8Array<ArrayBuffer>;
10
10
  export declare function getJobAccountDiscriminatorBytes(): ReadonlyUint8Array;
11
+ /** The `JobAccount` struct holds all the information about any individual jobs. */
11
12
  export type JobAccount = {
12
13
  discriminator: ReadonlyUint8Array;
13
14
  ipfsJob: ReadonlyUint8Array;
@@ -35,9 +36,12 @@ export type JobAccountArgs = {
35
36
  timeStart: number | bigint;
36
37
  timeout: number | bigint;
37
38
  };
38
- export declare function getJobAccountEncoder(): Encoder<JobAccountArgs>;
39
- export declare function getJobAccountDecoder(): Decoder<JobAccount>;
40
- export declare function getJobAccountCodec(): Codec<JobAccountArgs, JobAccount>;
39
+ /** Gets the encoder for {@link JobAccountArgs} account data. */
40
+ export declare function getJobAccountEncoder(): FixedSizeEncoder<JobAccountArgs>;
41
+ /** Gets the decoder for {@link JobAccount} account data. */
42
+ export declare function getJobAccountDecoder(): FixedSizeDecoder<JobAccount>;
43
+ /** Gets the codec for {@link JobAccount} account data. */
44
+ export declare function getJobAccountCodec(): FixedSizeCodec<JobAccountArgs, JobAccount>;
41
45
  export declare function decodeJobAccount<TAddress extends string = string>(encodedAccount: EncodedAccount<TAddress>): Account<JobAccount, TAddress>;
42
46
  export declare function decodeJobAccount<TAddress extends string = string>(encodedAccount: MaybeEncodedAccount<TAddress>): MaybeAccount<JobAccount, TAddress>;
43
47
  export declare function fetchJobAccount<TAddress extends string = string>(rpc: Parameters<typeof fetchEncodedAccount>[0], address: Address<TAddress>, config?: FetchAccountConfig): Promise<Account<JobAccount, TAddress>>;
@@ -1,7 +1,7 @@
1
1
  /**
2
- * This code was AUTOGENERATED using the codama library.
2
+ * This code was AUTOGENERATED using the Codama library.
3
3
  * Please DO NOT EDIT THIS FILE, instead use visitors
4
- * to add features, then rerun codama to update it.
4
+ * to add features, then rerun Codama to update it.
5
5
  *
6
6
  * @see https://github.com/codama-idl/codama
7
7
  */
@@ -12,6 +12,7 @@ export const JOB_ACCOUNT_DISCRIMINATOR = new Uint8Array([
12
12
  export function getJobAccountDiscriminatorBytes() {
13
13
  return fixEncoderSize(getBytesEncoder(), 8).encode(JOB_ACCOUNT_DISCRIMINATOR);
14
14
  }
15
+ /** Gets the encoder for {@link JobAccountArgs} account data. */
15
16
  export function getJobAccountEncoder() {
16
17
  return transformEncoder(getStructEncoder([
17
18
  ['discriminator', fixEncoderSize(getBytesEncoder(), 8)],
@@ -28,6 +29,7 @@ export function getJobAccountEncoder() {
28
29
  ['timeout', getI64Encoder()],
29
30
  ]), (value) => ({ ...value, discriminator: JOB_ACCOUNT_DISCRIMINATOR }));
30
31
  }
32
+ /** Gets the decoder for {@link JobAccount} account data. */
31
33
  export function getJobAccountDecoder() {
32
34
  return getStructDecoder([
33
35
  ['discriminator', fixDecoderSize(getBytesDecoder(), 8)],
@@ -44,6 +46,7 @@ export function getJobAccountDecoder() {
44
46
  ['timeout', getI64Decoder()],
45
47
  ]);
46
48
  }
49
+ /** Gets the codec for {@link JobAccount} account data. */
47
50
  export function getJobAccountCodec() {
48
51
  return combineCodec(getJobAccountEncoder(), getJobAccountDecoder());
49
52
  }
@@ -71,3 +74,4 @@ export async function fetchAllMaybeJobAccount(rpc, addresses, config) {
71
74
  export function getJobAccountSize() {
72
75
  return 233;
73
76
  }
77
+ //# sourceMappingURL=jobAccount.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jobAccount.js","sourceRoot":"","sources":["../../../../src/generated_clients/jobs/accounts/jobAccount.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,YAAY,EACZ,aAAa,EACb,mBAAmB,EACnB,oBAAoB,EACpB,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,gBAAgB,GAYjB,MAAM,aAAa,CAAC;AAErB,MAAM,CAAC,MAAM,yBAAyB,GAAG,IAAI,UAAU,CAAC;IACtD,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;CACjC,CAAC,CAAC;AAEH,MAAM,UAAU,+BAA+B;IAC7C,OAAO,cAAc,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC;AAChF,CAAC;AAgCD,gEAAgE;AAChE,MAAM,UAAU,oBAAoB;IAClC,OAAO,gBAAgB,CACrB,gBAAgB,CAAC;QACf,CAAC,eAAe,EAAE,cAAc,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,CAAC;QACvD,CAAC,SAAS,EAAE,cAAc,CAAC,eAAe,EAAE,EAAE,EAAE,CAAC,CAAC;QAClD,CAAC,YAAY,EAAE,cAAc,CAAC,eAAe,EAAE,EAAE,EAAE,CAAC,CAAC;QACrD,CAAC,QAAQ,EAAE,iBAAiB,EAAE,CAAC;QAC/B,CAAC,MAAM,EAAE,iBAAiB,EAAE,CAAC;QAC7B,CAAC,OAAO,EAAE,iBAAiB,EAAE,CAAC;QAC9B,CAAC,OAAO,EAAE,aAAa,EAAE,CAAC;QAC1B,CAAC,SAAS,EAAE,iBAAiB,EAAE,CAAC;QAChC,CAAC,OAAO,EAAE,YAAY,EAAE,CAAC;QACzB,CAAC,SAAS,EAAE,aAAa,EAAE,CAAC;QAC5B,CAAC,WAAW,EAAE,aAAa,EAAE,CAAC;QAC9B,CAAC,SAAS,EAAE,aAAa,EAAE,CAAC;KAC7B,CAAC,EACF,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,aAAa,EAAE,yBAAyB,EAAE,CAAC,CACpE,CAAC;AACJ,CAAC;AAED,4DAA4D;AAC5D,MAAM,UAAU,oBAAoB;IAClC,OAAO,gBAAgB,CAAC;QACtB,CAAC,eAAe,EAAE,cAAc,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,CAAC;QACvD,CAAC,SAAS,EAAE,cAAc,CAAC,eAAe,EAAE,EAAE,EAAE,CAAC,CAAC;QAClD,CAAC,YAAY,EAAE,cAAc,CAAC,eAAe,EAAE,EAAE,EAAE,CAAC,CAAC;QACrD,CAAC,QAAQ,EAAE,iBAAiB,EAAE,CAAC;QAC/B,CAAC,MAAM,EAAE,iBAAiB,EAAE,CAAC;QAC7B,CAAC,OAAO,EAAE,iBAAiB,EAAE,CAAC;QAC9B,CAAC,OAAO,EAAE,aAAa,EAAE,CAAC;QAC1B,CAAC,SAAS,EAAE,iBAAiB,EAAE,CAAC;QAChC,CAAC,OAAO,EAAE,YAAY,EAAE,CAAC;QACzB,CAAC,SAAS,EAAE,aAAa,EAAE,CAAC;QAC5B,CAAC,WAAW,EAAE,aAAa,EAAE,CAAC;QAC9B,CAAC,SAAS,EAAE,aAAa,EAAE,CAAC;KAC7B,CAAC,CAAC;AACL,CAAC;AAED,0DAA0D;AAC1D,MAAM,UAAU,kBAAkB;IAIhC,OAAO,YAAY,CAAC,oBAAoB,EAAE,EAAE,oBAAoB,EAAE,CAAC,CAAC;AACtE,CAAC;AAQD,MAAM,UAAU,gBAAgB,CAC9B,cAAwE;IAExE,OAAO,aAAa,CAClB,cAA+C,EAC/C,oBAAoB,EAAE,CACvB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,GAA8C,EAC9C,OAA0B,EAC1B,MAA2B;IAE3B,MAAM,YAAY,GAAG,MAAM,oBAAoB,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACtE,mBAAmB,CAAC,YAAY,CAAC,CAAC;IAClC,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,GAA8C,EAC9C,OAA0B,EAC1B,MAA2B;IAE3B,MAAM,YAAY,GAAG,MAAM,mBAAmB,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACrE,OAAO,gBAAgB,CAAC,YAAY,CAAC,CAAC;AACxC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,GAA+C,EAC/C,SAAyB,EACzB,MAA4B;IAE5B,MAAM,aAAa,GAAG,MAAM,uBAAuB,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IAC5E,mBAAmB,CAAC,aAAa,CAAC,CAAC;IACnC,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,GAA+C,EAC/C,SAAyB,EACzB,MAA4B;IAE5B,MAAM,aAAa,GAAG,MAAM,oBAAoB,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IACzE,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,CAAC;AAC7E,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -1,13 +1,14 @@
1
1
  /**
2
- * This code was AUTOGENERATED using the codama library.
2
+ * This code was AUTOGENERATED using the Codama library.
3
3
  * Please DO NOT EDIT THIS FILE, instead use visitors
4
- * to add features, then rerun codama to update it.
4
+ * to add features, then rerun Codama to update it.
5
5
  *
6
6
  * @see https://github.com/codama-idl/codama
7
7
  */
8
8
  import { fetchEncodedAccount, fetchEncodedAccounts, type Account, type Address, type Codec, type Decoder, type EncodedAccount, type Encoder, type FetchAccountConfig, type FetchAccountsConfig, type MaybeAccount, type MaybeEncodedAccount, type ReadonlyUint8Array } from '@solana/kit';
9
9
  export declare const MARKET_ACCOUNT_DISCRIMINATOR: Uint8Array<ArrayBuffer>;
10
10
  export declare function getMarketAccountDiscriminatorBytes(): ReadonlyUint8Array;
11
+ /** The `MarketAccount` struct holds all the information about jobs and the nodes queue. */
11
12
  export type MarketAccount = {
12
13
  discriminator: ReadonlyUint8Array;
13
14
  authority: Address;
@@ -35,8 +36,11 @@ export type MarketAccountArgs = {
35
36
  queueType: number;
36
37
  queue: Array<Address>;
37
38
  };
39
+ /** Gets the encoder for {@link MarketAccountArgs} account data. */
38
40
  export declare function getMarketAccountEncoder(): Encoder<MarketAccountArgs>;
41
+ /** Gets the decoder for {@link MarketAccount} account data. */
39
42
  export declare function getMarketAccountDecoder(): Decoder<MarketAccount>;
43
+ /** Gets the codec for {@link MarketAccount} account data. */
40
44
  export declare function getMarketAccountCodec(): Codec<MarketAccountArgs, MarketAccount>;
41
45
  export declare function decodeMarketAccount<TAddress extends string = string>(encodedAccount: EncodedAccount<TAddress>): Account<MarketAccount, TAddress>;
42
46
  export declare function decodeMarketAccount<TAddress extends string = string>(encodedAccount: MaybeEncodedAccount<TAddress>): MaybeAccount<MarketAccount, TAddress>;
@@ -1,7 +1,7 @@
1
1
  /**
2
- * This code was AUTOGENERATED using the codama library.
2
+ * This code was AUTOGENERATED using the Codama library.
3
3
  * Please DO NOT EDIT THIS FILE, instead use visitors
4
- * to add features, then rerun codama to update it.
4
+ * to add features, then rerun Codama to update it.
5
5
  *
6
6
  * @see https://github.com/codama-idl/codama
7
7
  */
@@ -12,6 +12,7 @@ export const MARKET_ACCOUNT_DISCRIMINATOR = new Uint8Array([
12
12
  export function getMarketAccountDiscriminatorBytes() {
13
13
  return fixEncoderSize(getBytesEncoder(), 8).encode(MARKET_ACCOUNT_DISCRIMINATOR);
14
14
  }
15
+ /** Gets the encoder for {@link MarketAccountArgs} account data. */
15
16
  export function getMarketAccountEncoder() {
16
17
  return transformEncoder(getStructEncoder([
17
18
  ['discriminator', fixEncoderSize(getBytesEncoder(), 8)],
@@ -28,6 +29,7 @@ export function getMarketAccountEncoder() {
28
29
  ['queue', getArrayEncoder(getAddressEncoder())],
29
30
  ]), (value) => ({ ...value, discriminator: MARKET_ACCOUNT_DISCRIMINATOR }));
30
31
  }
32
+ /** Gets the decoder for {@link MarketAccount} account data. */
31
33
  export function getMarketAccountDecoder() {
32
34
  return getStructDecoder([
33
35
  ['discriminator', fixDecoderSize(getBytesDecoder(), 8)],
@@ -44,6 +46,7 @@ export function getMarketAccountDecoder() {
44
46
  ['queue', getArrayDecoder(getAddressDecoder())],
45
47
  ]);
46
48
  }
49
+ /** Gets the codec for {@link MarketAccount} account data. */
47
50
  export function getMarketAccountCodec() {
48
51
  return combineCodec(getMarketAccountEncoder(), getMarketAccountDecoder());
49
52
  }
@@ -68,3 +71,4 @@ export async function fetchAllMaybeMarketAccount(rpc, addresses, config) {
68
71
  const maybeAccounts = await fetchEncodedAccounts(rpc, addresses, config);
69
72
  return maybeAccounts.map((maybeAccount) => decodeMarketAccount(maybeAccount));
70
73
  }
74
+ //# sourceMappingURL=marketAccount.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"marketAccount.js","sourceRoot":"","sources":["../../../../src/generated_clients/jobs/accounts/marketAccount.ts"],"names":[],"mappings":"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"}