@geoprotocol/geo-sdk 0.18.2 → 0.19.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 (352) hide show
  1. package/README.md +995 -372
  2. package/dist/contracts.d.ts +0 -11
  3. package/dist/contracts.d.ts.map +1 -1
  4. package/dist/contracts.js +0 -11
  5. package/dist/contracts.js.map +1 -1
  6. package/dist/index.d.ts +7 -0
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +7 -0
  9. package/dist/index.js.map +1 -1
  10. package/dist/lite.d.ts +2 -0
  11. package/dist/lite.d.ts.map +1 -1
  12. package/dist/lite.js +2 -0
  13. package/dist/lite.js.map +1 -1
  14. package/dist/src/abis/dao-space-v2.test.d.ts +2 -0
  15. package/dist/src/abis/dao-space-v2.test.d.ts.map +1 -0
  16. package/dist/src/abis/dao-space-v2.test.js +67 -0
  17. package/dist/src/abis/dao-space-v2.test.js.map +1 -0
  18. package/dist/src/client/api.d.ts +86 -0
  19. package/dist/src/client/api.d.ts.map +1 -0
  20. package/dist/src/client/api.js +169 -0
  21. package/dist/src/client/api.js.map +1 -0
  22. package/dist/src/client/comments.d.ts +59 -0
  23. package/dist/src/client/comments.d.ts.map +1 -0
  24. package/dist/src/client/comments.js +96 -0
  25. package/dist/src/client/comments.js.map +1 -0
  26. package/dist/src/client/context.d.ts +20 -0
  27. package/dist/src/client/context.d.ts.map +1 -0
  28. package/dist/src/client/context.js +20 -0
  29. package/dist/src/client/context.js.map +1 -0
  30. package/dist/src/client/dao-spaces.d.ts +348 -0
  31. package/dist/src/client/dao-spaces.d.ts.map +1 -0
  32. package/dist/src/client/dao-spaces.js +494 -0
  33. package/dist/src/client/dao-spaces.js.map +1 -0
  34. package/dist/src/client/dao-spaces.test.d.ts +2 -0
  35. package/dist/src/client/dao-spaces.test.d.ts.map +1 -0
  36. package/dist/src/client/dao-spaces.test.js +263 -0
  37. package/dist/src/client/dao-spaces.test.js.map +1 -0
  38. package/dist/src/client/edits.d.ts +100 -0
  39. package/dist/src/client/edits.d.ts.map +1 -0
  40. package/dist/src/client/edits.js +131 -0
  41. package/dist/src/client/edits.js.map +1 -0
  42. package/dist/src/client/edits.test.d.ts +2 -0
  43. package/dist/src/client/edits.test.d.ts.map +1 -0
  44. package/dist/src/client/edits.test.js +98 -0
  45. package/dist/src/client/edits.test.js.map +1 -0
  46. package/dist/src/client/entities.d.ts +23 -0
  47. package/dist/src/client/entities.d.ts.map +1 -0
  48. package/dist/src/client/entities.js +88 -0
  49. package/dist/src/client/entities.js.map +1 -0
  50. package/dist/src/client/entity-votes.d.ts +141 -0
  51. package/dist/src/client/entity-votes.d.ts.map +1 -0
  52. package/dist/src/client/entity-votes.js +168 -0
  53. package/dist/src/client/entity-votes.js.map +1 -0
  54. package/dist/src/client/entity-votes.test.d.ts +2 -0
  55. package/dist/src/client/entity-votes.test.d.ts.map +1 -0
  56. package/dist/src/client/entity-votes.test.js +93 -0
  57. package/dist/src/client/entity-votes.test.js.map +1 -0
  58. package/dist/src/client/graph-workflows.test.d.ts +2 -0
  59. package/dist/src/client/graph-workflows.test.d.ts.map +1 -0
  60. package/dist/src/client/graph-workflows.test.js +83 -0
  61. package/dist/src/client/graph-workflows.test.js.map +1 -0
  62. package/dist/src/client/images-storage.test.d.ts +2 -0
  63. package/dist/src/client/images-storage.test.d.ts.map +1 -0
  64. package/dist/src/client/images-storage.test.js +52 -0
  65. package/dist/src/client/images-storage.test.js.map +1 -0
  66. package/dist/src/client/images.d.ts +35 -0
  67. package/dist/src/client/images.d.ts.map +1 -0
  68. package/dist/src/client/images.js +90 -0
  69. package/dist/src/client/images.js.map +1 -0
  70. package/dist/src/client/personal-spaces.d.ts +155 -0
  71. package/dist/src/client/personal-spaces.d.ts.map +1 -0
  72. package/dist/src/client/personal-spaces.js +198 -0
  73. package/dist/src/client/personal-spaces.js.map +1 -0
  74. package/dist/src/client/proposals.d.ts +185 -0
  75. package/dist/src/client/proposals.d.ts.map +1 -0
  76. package/dist/src/client/proposals.js +294 -0
  77. package/dist/src/client/proposals.js.map +1 -0
  78. package/dist/src/client/proposals.test.d.ts +2 -0
  79. package/dist/src/client/proposals.test.d.ts.map +1 -0
  80. package/dist/src/client/proposals.test.js +243 -0
  81. package/dist/src/client/proposals.test.js.map +1 -0
  82. package/dist/src/client/spaces.test.d.ts +2 -0
  83. package/dist/src/client/spaces.test.d.ts.map +1 -0
  84. package/dist/src/client/spaces.test.js +155 -0
  85. package/dist/src/client/spaces.test.js.map +1 -0
  86. package/dist/src/client/storage.d.ts +52 -0
  87. package/dist/src/client/storage.d.ts.map +1 -0
  88. package/dist/src/client/storage.js +53 -0
  89. package/dist/src/client/storage.js.map +1 -0
  90. package/dist/src/client.d.ts +325 -0
  91. package/dist/src/client.d.ts.map +1 -0
  92. package/dist/src/client.js +452 -0
  93. package/dist/src/client.js.map +1 -0
  94. package/dist/src/client.test.d.ts +2 -0
  95. package/dist/src/client.test.d.ts.map +1 -0
  96. package/dist/src/client.test.js +120 -0
  97. package/dist/src/client.test.js.map +1 -0
  98. package/dist/src/contracts-v2/abis.d.ts +196 -0
  99. package/dist/src/contracts-v2/abis.d.ts.map +1 -0
  100. package/dist/src/contracts-v2/abis.js +110 -0
  101. package/dist/src/contracts-v2/abis.js.map +1 -0
  102. package/dist/src/contracts-v2/actions.d.ts +56 -0
  103. package/dist/src/contracts-v2/actions.d.ts.map +1 -0
  104. package/dist/src/contracts-v2/actions.js +83 -0
  105. package/dist/src/contracts-v2/actions.js.map +1 -0
  106. package/dist/src/contracts-v2/encoding.d.ts +80 -0
  107. package/dist/src/contracts-v2/encoding.d.ts.map +1 -0
  108. package/dist/src/contracts-v2/encoding.js +193 -0
  109. package/dist/src/contracts-v2/encoding.js.map +1 -0
  110. package/dist/src/contracts-v2/encoding.test.d.ts +2 -0
  111. package/dist/src/contracts-v2/encoding.test.d.ts.map +1 -0
  112. package/dist/src/contracts-v2/encoding.test.js +93 -0
  113. package/dist/src/contracts-v2/encoding.test.js.map +1 -0
  114. package/dist/src/contracts-v2/local-geobrowser.e2e.test.d.ts +2 -0
  115. package/dist/src/contracts-v2/local-geobrowser.e2e.test.d.ts.map +1 -0
  116. package/dist/src/contracts-v2/local-geobrowser.e2e.test.js +239 -0
  117. package/dist/src/contracts-v2/local-geobrowser.e2e.test.js.map +1 -0
  118. package/dist/src/contracts-v2/voting-settings.d.ts +48 -0
  119. package/dist/src/contracts-v2/voting-settings.d.ts.map +1 -0
  120. package/dist/src/contracts-v2/voting-settings.js +69 -0
  121. package/dist/src/contracts-v2/voting-settings.js.map +1 -0
  122. package/dist/src/dao-space/constants.d.ts +6 -3
  123. package/dist/src/dao-space/constants.d.ts.map +1 -1
  124. package/dist/src/dao-space/constants.js +6 -5
  125. package/dist/src/dao-space/constants.js.map +1 -1
  126. package/dist/src/dao-space/create-space.d.ts +1 -31
  127. package/dist/src/dao-space/create-space.d.ts.map +1 -1
  128. package/dist/src/dao-space/create-space.js +5 -70
  129. package/dist/src/dao-space/create-space.js.map +1 -1
  130. package/dist/src/dao-space/execute-proposal.d.ts +1 -22
  131. package/dist/src/dao-space/execute-proposal.d.ts.map +1 -1
  132. package/dist/src/dao-space/execute-proposal.js +12 -59
  133. package/dist/src/dao-space/execute-proposal.js.map +1 -1
  134. package/dist/src/dao-space/propose-add-editor.test.js +1 -1
  135. package/dist/src/dao-space/propose-add-editor.test.js.map +1 -1
  136. package/dist/src/dao-space/propose-edit.d.ts +1 -30
  137. package/dist/src/dao-space/propose-edit.d.ts.map +1 -1
  138. package/dist/src/dao-space/propose-edit.js +12 -108
  139. package/dist/src/dao-space/propose-edit.js.map +1 -1
  140. package/dist/src/dao-space/propose-edit.test.js +8 -1
  141. package/dist/src/dao-space/propose-edit.test.js.map +1 -1
  142. package/dist/src/dao-space/propose-remove-editor.d.ts.map +1 -1
  143. package/dist/src/dao-space/propose-remove-editor.js +5 -5
  144. package/dist/src/dao-space/propose-remove-editor.js.map +1 -1
  145. package/dist/src/dao-space/propose-remove-editor.test.js +3 -8
  146. package/dist/src/dao-space/propose-remove-editor.test.js.map +1 -1
  147. package/dist/src/dao-space/propose-remove-member.d.ts.map +1 -1
  148. package/dist/src/dao-space/propose-remove-member.js +5 -5
  149. package/dist/src/dao-space/propose-remove-member.js.map +1 -1
  150. package/dist/src/dao-space/propose-request-membership.d.ts.map +1 -1
  151. package/dist/src/dao-space/propose-request-membership.js +4 -4
  152. package/dist/src/dao-space/propose-request-membership.js.map +1 -1
  153. package/dist/src/dao-space/propose-update-voting-settings.d.ts +8 -0
  154. package/dist/src/dao-space/propose-update-voting-settings.d.ts.map +1 -0
  155. package/dist/src/dao-space/propose-update-voting-settings.js +19 -0
  156. package/dist/src/dao-space/propose-update-voting-settings.js.map +1 -0
  157. package/dist/src/dao-space/propose-update-voting-settings.test.d.ts +2 -0
  158. package/dist/src/dao-space/propose-update-voting-settings.test.d.ts.map +1 -0
  159. package/dist/src/dao-space/propose-update-voting-settings.test.js +118 -0
  160. package/dist/src/dao-space/propose-update-voting-settings.test.js.map +1 -0
  161. package/dist/src/dao-space/vote-proposal.d.ts +1 -24
  162. package/dist/src/dao-space/vote-proposal.d.ts.map +1 -1
  163. package/dist/src/dao-space/vote-proposal.js +12 -64
  164. package/dist/src/dao-space/vote-proposal.js.map +1 -1
  165. package/dist/src/e2e/local-geobrowser.d.ts +9 -0
  166. package/dist/src/e2e/local-geobrowser.d.ts.map +1 -0
  167. package/dist/src/e2e/local-geobrowser.js +35 -0
  168. package/dist/src/e2e/local-geobrowser.js.map +1 -0
  169. package/dist/src/e2e/v2-contracts.test.d.ts +2 -0
  170. package/dist/src/e2e/v2-contracts.test.d.ts.map +1 -0
  171. package/dist/src/e2e/v2-contracts.test.js +25 -0
  172. package/dist/src/e2e/v2-contracts.test.js.map +1 -0
  173. package/dist/src/e2e-api-surface.test.d.ts +2 -0
  174. package/dist/src/e2e-api-surface.test.d.ts.map +1 -0
  175. package/dist/src/e2e-api-surface.test.js +1021 -0
  176. package/dist/src/e2e-api-surface.test.js.map +1 -0
  177. package/dist/src/e2e-flows.test.d.ts +2 -0
  178. package/dist/src/e2e-flows.test.d.ts.map +1 -0
  179. package/dist/src/e2e-flows.test.js +445 -0
  180. package/dist/src/e2e-flows.test.js.map +1 -0
  181. package/dist/src/e2e-legacy-api-surface.test.d.ts +2 -0
  182. package/dist/src/e2e-legacy-api-surface.test.d.ts.map +1 -0
  183. package/dist/src/e2e-legacy-api-surface.test.js +840 -0
  184. package/dist/src/e2e-legacy-api-surface.test.js.map +1 -0
  185. package/dist/src/encoding.d.ts +3 -0
  186. package/dist/src/encoding.d.ts.map +1 -1
  187. package/dist/src/encoding.js +3 -0
  188. package/dist/src/encoding.js.map +1 -1
  189. package/dist/src/encodings/get-create-dao-space-calldata.d.ts +3 -89
  190. package/dist/src/encodings/get-create-dao-space-calldata.d.ts.map +1 -1
  191. package/dist/src/encodings/get-create-dao-space-calldata.js +5 -95
  192. package/dist/src/encodings/get-create-dao-space-calldata.js.map +1 -1
  193. package/dist/src/encodings/get-create-personal-space-calldata.d.ts +2 -0
  194. package/dist/src/encodings/get-create-personal-space-calldata.d.ts.map +1 -1
  195. package/dist/src/encodings/get-create-personal-space-calldata.js +2 -0
  196. package/dist/src/encodings/get-create-personal-space-calldata.js.map +1 -1
  197. package/dist/src/graph/comment-utils.d.ts +4 -0
  198. package/dist/src/graph/comment-utils.d.ts.map +1 -1
  199. package/dist/src/graph/comment-utils.js +4 -0
  200. package/dist/src/graph/comment-utils.js.map +1 -1
  201. package/dist/src/graph/constants.d.ts +12 -3
  202. package/dist/src/graph/constants.d.ts.map +1 -1
  203. package/dist/src/graph/constants.js +11 -5
  204. package/dist/src/graph/constants.js.map +1 -1
  205. package/dist/src/graph/create-comment.d.ts +3 -22
  206. package/dist/src/graph/create-comment.d.ts.map +1 -1
  207. package/dist/src/graph/create-comment.js +6 -136
  208. package/dist/src/graph/create-comment.js.map +1 -1
  209. package/dist/src/graph/create-comment.test.js +19 -8
  210. package/dist/src/graph/create-comment.test.js.map +1 -1
  211. package/dist/src/graph/create-entity.d.ts +2 -0
  212. package/dist/src/graph/create-entity.d.ts.map +1 -1
  213. package/dist/src/graph/create-entity.js +2 -0
  214. package/dist/src/graph/create-entity.js.map +1 -1
  215. package/dist/src/graph/create-image.d.ts +2 -21
  216. package/dist/src/graph/create-image.d.ts.map +1 -1
  217. package/dist/src/graph/create-image.js +7 -69
  218. package/dist/src/graph/create-image.js.map +1 -1
  219. package/dist/src/graph/create-property.d.ts +2 -0
  220. package/dist/src/graph/create-property.d.ts.map +1 -1
  221. package/dist/src/graph/create-property.js +2 -0
  222. package/dist/src/graph/create-property.js.map +1 -1
  223. package/dist/src/graph/create-proposal-review.d.ts +1 -27
  224. package/dist/src/graph/create-proposal-review.d.ts.map +1 -1
  225. package/dist/src/graph/create-proposal-review.js +4 -61
  226. package/dist/src/graph/create-proposal-review.js.map +1 -1
  227. package/dist/src/graph/create-relation.d.ts +2 -0
  228. package/dist/src/graph/create-relation.d.ts.map +1 -1
  229. package/dist/src/graph/create-relation.js +2 -0
  230. package/dist/src/graph/create-relation.js.map +1 -1
  231. package/dist/src/graph/create-type.d.ts +2 -0
  232. package/dist/src/graph/create-type.d.ts.map +1 -1
  233. package/dist/src/graph/create-type.js +2 -0
  234. package/dist/src/graph/create-type.js.map +1 -1
  235. package/dist/src/graph/delete-entity.d.ts +2 -14
  236. package/dist/src/graph/delete-entity.d.ts.map +1 -1
  237. package/dist/src/graph/delete-entity.js +5 -78
  238. package/dist/src/graph/delete-entity.js.map +1 -1
  239. package/dist/src/graph/delete-entity.test.js +7 -0
  240. package/dist/src/graph/delete-entity.test.js.map +1 -1
  241. package/dist/src/graph/delete-relation.d.ts +2 -0
  242. package/dist/src/graph/delete-relation.d.ts.map +1 -1
  243. package/dist/src/graph/delete-relation.js +2 -0
  244. package/dist/src/graph/delete-relation.js.map +1 -1
  245. package/dist/src/graph/entity-vote.d.ts +37 -0
  246. package/dist/src/graph/entity-vote.d.ts.map +1 -0
  247. package/dist/src/graph/entity-vote.js +44 -0
  248. package/dist/src/graph/entity-vote.js.map +1 -0
  249. package/dist/src/graph/entity-vote.test.d.ts +2 -0
  250. package/dist/src/graph/entity-vote.test.d.ts.map +1 -0
  251. package/dist/src/graph/entity-vote.test.js +123 -0
  252. package/dist/src/graph/entity-vote.test.js.map +1 -0
  253. package/dist/src/graph/index.d.ts +1 -0
  254. package/dist/src/graph/index.d.ts.map +1 -1
  255. package/dist/src/graph/index.js +1 -0
  256. package/dist/src/graph/index.js.map +1 -1
  257. package/dist/src/graph/update-comment.d.ts +3 -0
  258. package/dist/src/graph/update-comment.d.ts.map +1 -1
  259. package/dist/src/graph/update-comment.js +3 -0
  260. package/dist/src/graph/update-comment.js.map +1 -1
  261. package/dist/src/graph/update-entity.d.ts +2 -0
  262. package/dist/src/graph/update-entity.d.ts.map +1 -1
  263. package/dist/src/graph/update-entity.js +2 -0
  264. package/dist/src/graph/update-entity.js.map +1 -1
  265. package/dist/src/graph/update-proposal-review.d.ts +2 -27
  266. package/dist/src/graph/update-proposal-review.d.ts.map +1 -1
  267. package/dist/src/graph/update-proposal-review.js +4 -50
  268. package/dist/src/graph/update-proposal-review.js.map +1 -1
  269. package/dist/src/graph/update-relation.d.ts +2 -0
  270. package/dist/src/graph/update-relation.d.ts.map +1 -1
  271. package/dist/src/graph/update-relation.js +2 -0
  272. package/dist/src/graph/update-relation.js.map +1 -1
  273. package/dist/src/ipfs-core.d.ts +42 -0
  274. package/dist/src/ipfs-core.d.ts.map +1 -0
  275. package/dist/src/ipfs-core.js +165 -0
  276. package/dist/src/ipfs-core.js.map +1 -0
  277. package/dist/src/ipfs-core.test.d.ts +2 -0
  278. package/dist/src/ipfs-core.test.d.ts.map +1 -0
  279. package/dist/src/ipfs-core.test.js +56 -0
  280. package/dist/src/ipfs-core.test.js.map +1 -0
  281. package/dist/src/ipfs.d.ts +7 -52
  282. package/dist/src/ipfs.d.ts.map +1 -1
  283. package/dist/src/ipfs.js +27 -170
  284. package/dist/src/ipfs.js.map +1 -1
  285. package/dist/src/networks.d.ts +46 -0
  286. package/dist/src/networks.d.ts.map +1 -0
  287. package/dist/src/networks.js +90 -0
  288. package/dist/src/networks.js.map +1 -0
  289. package/dist/src/ops/comments.d.ts +80 -0
  290. package/dist/src/ops/comments.d.ts.map +1 -0
  291. package/dist/src/ops/comments.js +142 -0
  292. package/dist/src/ops/comments.js.map +1 -0
  293. package/dist/src/ops/entities.d.ts +50 -0
  294. package/dist/src/ops/entities.d.ts.map +1 -0
  295. package/dist/src/ops/entities.js +51 -0
  296. package/dist/src/ops/entities.js.map +1 -0
  297. package/dist/src/ops/images.d.ts +37 -0
  298. package/dist/src/ops/images.d.ts.map +1 -0
  299. package/dist/src/ops/images.js +69 -0
  300. package/dist/src/ops/images.js.map +1 -0
  301. package/dist/src/ops/index.d.ts +7 -0
  302. package/dist/src/ops/index.d.ts.map +1 -0
  303. package/dist/src/ops/index.js +7 -0
  304. package/dist/src/ops/index.js.map +1 -0
  305. package/dist/src/ops/index.test.d.ts +2 -0
  306. package/dist/src/ops/index.test.d.ts.map +1 -0
  307. package/dist/src/ops/index.test.js +115 -0
  308. package/dist/src/ops/index.test.js.map +1 -0
  309. package/dist/src/ops/properties.d.ts +20 -0
  310. package/dist/src/ops/properties.d.ts.map +1 -0
  311. package/dist/src/ops/properties.js +20 -0
  312. package/dist/src/ops/properties.js.map +1 -0
  313. package/dist/src/ops/proposal-reviews.d.ts +43 -0
  314. package/dist/src/ops/proposal-reviews.d.ts.map +1 -0
  315. package/dist/src/ops/proposal-reviews.js +103 -0
  316. package/dist/src/ops/proposal-reviews.js.map +1 -0
  317. package/dist/src/ops/relations.d.ts +57 -0
  318. package/dist/src/ops/relations.d.ts.map +1 -0
  319. package/dist/src/ops/relations.js +59 -0
  320. package/dist/src/ops/relations.js.map +1 -0
  321. package/dist/src/ops/types.d.ts +20 -0
  322. package/dist/src/ops/types.d.ts.map +1 -0
  323. package/dist/src/ops/types.js +20 -0
  324. package/dist/src/ops/types.js.map +1 -0
  325. package/dist/src/personal-space/constants.d.ts +1 -0
  326. package/dist/src/personal-space/constants.d.ts.map +1 -1
  327. package/dist/src/personal-space/constants.js +1 -0
  328. package/dist/src/personal-space/constants.js.map +1 -1
  329. package/dist/src/personal-space/create-space.d.ts +1 -18
  330. package/dist/src/personal-space/create-space.d.ts.map +1 -1
  331. package/dist/src/personal-space/create-space.js +1 -18
  332. package/dist/src/personal-space/create-space.js.map +1 -1
  333. package/dist/src/personal-space/has-space.d.ts +9 -2
  334. package/dist/src/personal-space/has-space.d.ts.map +1 -1
  335. package/dist/src/personal-space/has-space.js +9 -13
  336. package/dist/src/personal-space/has-space.js.map +1 -1
  337. package/dist/src/personal-space/has-space.test.d.ts +2 -0
  338. package/dist/src/personal-space/has-space.test.d.ts.map +1 -0
  339. package/dist/src/personal-space/has-space.test.js +30 -0
  340. package/dist/src/personal-space/has-space.test.js.map +1 -0
  341. package/dist/src/personal-space/publish-edit.d.ts +1 -22
  342. package/dist/src/personal-space/publish-edit.d.ts.map +1 -1
  343. package/dist/src/personal-space/publish-edit.js +10 -64
  344. package/dist/src/personal-space/publish-edit.js.map +1 -1
  345. package/dist/src/smart-wallet.d.ts +2 -4
  346. package/dist/src/smart-wallet.d.ts.map +1 -1
  347. package/dist/src/smart-wallet.js +6 -9
  348. package/dist/src/smart-wallet.js.map +1 -1
  349. package/dist/src/types.d.ts +25 -0
  350. package/dist/src/types.d.ts.map +1 -1
  351. package/dist/src/types.js.map +1 -1
  352. package/package.json +14 -1
@@ -0,0 +1,325 @@
1
+ import type { Op } from '@geoprotocol/grc-20';
2
+ import type { Address, Hex } from 'viem';
3
+ import type { Id } from './id.js';
4
+ import type { GeoNetworkConfig } from './types.js';
5
+ export type FetchLike = typeof fetch;
6
+ export type GraphQlResponse<T> = {
7
+ data?: T;
8
+ errors?: unknown;
9
+ };
10
+ export type EditCalldataParams = {
11
+ spaceId: string;
12
+ cid: string;
13
+ };
14
+ export type ApiCalldataResult = {
15
+ to: `0x${string}`;
16
+ data: `0x${string}`;
17
+ };
18
+ export type ImageSource = {
19
+ blob: Blob;
20
+ } | {
21
+ url: string;
22
+ };
23
+ export type UploadImageParams = ImageSource & {
24
+ alternativeGateway?: boolean;
25
+ };
26
+ export type UploadImageResult = {
27
+ cid: `ipfs://${string}`;
28
+ dimensions?: {
29
+ width: number;
30
+ height: number;
31
+ };
32
+ };
33
+ export type CreateImageParams = ImageSource & {
34
+ name?: string;
35
+ description?: string;
36
+ id?: Id | string;
37
+ alternativeGateway?: boolean;
38
+ };
39
+ export type CreateResult = {
40
+ id: Id;
41
+ ops: Op[];
42
+ };
43
+ export type CreateImageResult = CreateResult & {
44
+ cid: string;
45
+ dimensions?: {
46
+ width: number;
47
+ height: number;
48
+ };
49
+ };
50
+ export type DeleteEntityParams = {
51
+ id: Id | string;
52
+ spaceId: Id | string;
53
+ };
54
+ export type CreateCommentParams = {
55
+ id?: Id | string;
56
+ content: string;
57
+ replyTo: {
58
+ entityId: Id | string;
59
+ spaceId: Id | string;
60
+ };
61
+ resolved?: boolean;
62
+ };
63
+ export type UpdateCommentParams = {
64
+ id: Id | string;
65
+ content?: string;
66
+ resolved?: boolean;
67
+ };
68
+ export type CalldataResult = {
69
+ to: `0x${string}`;
70
+ calldata: `0x${string}`;
71
+ };
72
+ export type CreatePersonalSpaceParams = {
73
+ name: string;
74
+ accountAddress: Address;
75
+ };
76
+ export type CreatePersonalSpaceResult = CalldataResult & {
77
+ spaceEntityId: Id;
78
+ accountId: string;
79
+ ops: Op[];
80
+ };
81
+ export type SetPersonalSpaceTopicParams = {
82
+ spaceId: Id | string;
83
+ topicId: Id | string;
84
+ authorSpaceId?: Id | string;
85
+ };
86
+ export type HasPersonalSpaceParams = {
87
+ address: Hex;
88
+ rpcUrl?: string;
89
+ };
90
+ export type PublishEditParams = {
91
+ name: string;
92
+ ops: Op[];
93
+ author: Id | string;
94
+ };
95
+ export type PublishEditResult = {
96
+ cid: `ipfs://${string}`;
97
+ editId: Id;
98
+ };
99
+ export type PublishPersonalSpaceEditParams = PublishEditParams & {
100
+ spaceId: Id | string;
101
+ };
102
+ export type PublishPersonalSpaceEditResult = PublishEditResult & CalldataResult;
103
+ export type VotingSettingsInput = {
104
+ slowPathPercentageThreshold: number;
105
+ fastPathFlatThreshold: number;
106
+ quorum: number;
107
+ durationInDays: number;
108
+ };
109
+ export type VotingMode = 'SLOW' | 'FAST';
110
+ export type VoteOption = 'YES' | 'NO' | 'ABSTAIN';
111
+ export type CreateDaoSpaceParams = {
112
+ name: string;
113
+ author: Id | string;
114
+ votingSettings: VotingSettingsInput;
115
+ initialEditorSpaceIds: `0x${string}`[];
116
+ initialMemberSpaceIds?: `0x${string}`[];
117
+ initialTopicId?: string;
118
+ ops?: Op[];
119
+ };
120
+ export type CreateDaoSpaceResult = CalldataResult & {
121
+ spaceEntityId: Id;
122
+ cid: `ipfs://${string}`;
123
+ };
124
+ export type ProposalAction = {
125
+ to: `0x${string}`;
126
+ value: bigint;
127
+ data: `0x${string}`;
128
+ };
129
+ export type CreateProposalParams = {
130
+ fromSpaceId: string;
131
+ daoSpaceId: string;
132
+ proposalId?: string;
133
+ votingMode?: VotingMode;
134
+ actions: ProposalAction[];
135
+ };
136
+ export type ProposalResult = CalldataResult & {
137
+ proposalId: `0x${string}`;
138
+ };
139
+ export type ProposeEditParams = PublishEditParams & {
140
+ daoSpaceAddress: `0x${string}`;
141
+ callerSpaceId: string;
142
+ daoSpaceId: string;
143
+ votingMode?: VotingMode;
144
+ proposalId?: string;
145
+ };
146
+ export type ProposeEditResult = PublishEditResult & ProposalResult;
147
+ export type DaoSpaceRoleProposalBaseParams = {
148
+ authorSpaceId: string;
149
+ spaceId: string;
150
+ daoSpaceAddress: `0x${string}`;
151
+ votingMode?: VotingMode;
152
+ proposalId?: string;
153
+ };
154
+ export type ProposeAddMemberParams = DaoSpaceRoleProposalBaseParams & {
155
+ newMemberSpaceId: string;
156
+ };
157
+ export type ProposeRemoveMemberParams = DaoSpaceRoleProposalBaseParams & {
158
+ memberToRemoveSpaceId: string;
159
+ };
160
+ export type ProposeAddEditorParams = Omit<DaoSpaceRoleProposalBaseParams, 'votingMode'> & {
161
+ votingMode?: 'SLOW';
162
+ newEditorSpaceId: string;
163
+ };
164
+ export type ProposeRemoveEditorParams = Omit<DaoSpaceRoleProposalBaseParams, 'votingMode'> & {
165
+ votingMode?: 'SLOW';
166
+ editorToRemoveSpaceId: string;
167
+ };
168
+ export type ProposeRequestMembershipParams = {
169
+ authorSpaceId: string;
170
+ spaceId: string;
171
+ proposalId?: string;
172
+ };
173
+ export type VoteProposalParams = {
174
+ authorSpaceId: string;
175
+ spaceId: string;
176
+ proposalId: string;
177
+ vote: VoteOption;
178
+ };
179
+ export type ExecuteProposalParams = {
180
+ authorSpaceId: string;
181
+ spaceId: string;
182
+ proposalId: string;
183
+ };
184
+ export type EntityVoteParams = {
185
+ authorSpaceId: Id | string;
186
+ spaceId: Id | string;
187
+ entityId: Id | string;
188
+ };
189
+ export type Client = {
190
+ network: GeoNetworkConfig;
191
+ api: {
192
+ graphql<T>(query: string): Promise<GraphQlResponse<T>>;
193
+ getEditCalldata(params: EditCalldataParams): Promise<ApiCalldataResult>;
194
+ };
195
+ storage: {
196
+ uploadImage(params: UploadImageParams): Promise<UploadImageResult>;
197
+ uploadCSV(csvString: string): Promise<`ipfs://${string}`>;
198
+ };
199
+ entities: {
200
+ delete(params: DeleteEntityParams): Promise<CreateResult>;
201
+ };
202
+ images: {
203
+ create(params: CreateImageParams): Promise<CreateImageResult>;
204
+ };
205
+ comments: {
206
+ create(params: CreateCommentParams): Promise<CreateResult>;
207
+ update(params: UpdateCommentParams): CreateResult;
208
+ };
209
+ personalSpaces: {
210
+ create(params: CreatePersonalSpaceParams): CreatePersonalSpaceResult;
211
+ setTopic(params: SetPersonalSpaceTopicParams): CalldataResult;
212
+ hasSpace(params: HasPersonalSpaceParams): Promise<boolean>;
213
+ publishEdit(params: PublishPersonalSpaceEditParams): Promise<PublishPersonalSpaceEditResult>;
214
+ };
215
+ daoSpaces: {
216
+ create(params: CreateDaoSpaceParams): Promise<CreateDaoSpaceResult>;
217
+ proposeEdit(params: ProposeEditParams): Promise<ProposeEditResult>;
218
+ proposeAddMember(params: ProposeAddMemberParams): ProposalResult;
219
+ proposeRemoveMember(params: ProposeRemoveMemberParams): ProposalResult;
220
+ proposeAddEditor(params: ProposeAddEditorParams): ProposalResult;
221
+ proposeRemoveEditor(params: ProposeRemoveEditorParams): ProposalResult;
222
+ proposeRequestMembership(params: ProposeRequestMembershipParams): ProposalResult;
223
+ proposals: {
224
+ create(params: CreateProposalParams): ProposalResult;
225
+ vote(params: VoteProposalParams): CalldataResult;
226
+ execute(params: ExecuteProposalParams): CalldataResult;
227
+ actions: {
228
+ publishEdit(daoSpaceAddress: `0x${string}`, cid: string): ProposalAction;
229
+ addEditor(daoSpaceAddress: `0x${string}`, spaceId: string): ProposalAction;
230
+ removeEditor(daoSpaceAddress: `0x${string}`, spaceId: string): ProposalAction;
231
+ addMember(daoSpaceAddress: `0x${string}`, spaceId: string): ProposalAction;
232
+ removeMember(daoSpaceAddress: `0x${string}`, spaceId: string): ProposalAction;
233
+ updateVotingSettings(daoSpaceAddress: `0x${string}`, votingSettings: VotingSettingsInput): ProposalAction;
234
+ };
235
+ };
236
+ };
237
+ entityVotes: {
238
+ upvote(params: EntityVoteParams): CalldataResult;
239
+ downvote(params: EntityVoteParams): CalldataResult;
240
+ withdraw(params: EntityVoteParams): CalldataResult;
241
+ };
242
+ };
243
+ export type CreateGeoClientParams = {
244
+ /**
245
+ * Built-in or custom network configuration.
246
+ *
247
+ * Pass `GeoTestnetConfig` for the built-in testnet config, or
248
+ * `defineGeoNetworkConfig(...)` when running against a local or custom
249
+ * deployment. The network config is required so callers make an explicit
250
+ * environment choice. String IDs such as `"TESTNET"` are intentionally not
251
+ * accepted by the client.
252
+ *
253
+ * @example
254
+ * ```ts
255
+ * import { GeoTestnetConfig } from '@geoprotocol/geo-sdk';
256
+ *
257
+ * const geo = createGeoClient({ network: GeoTestnetConfig });
258
+ * ```
259
+ */
260
+ network: GeoNetworkConfig;
261
+ /**
262
+ * Fetch implementation used by API, IPFS, and GraphQL-backed helpers.
263
+ *
264
+ * Async helpers that upload or query data use this value, then fall back to
265
+ * `globalThis.fetch`.
266
+ *
267
+ * @example
268
+ * ```ts
269
+ * const geo = createGeoClient({
270
+ * network: GeoTestnetConfig,
271
+ * fetch: customFetch,
272
+ * });
273
+ * ```
274
+ */
275
+ fetch?: FetchLike;
276
+ };
277
+ /**
278
+ * Creates a configured Geo SDK client.
279
+ *
280
+ * The client groups the SDK into namespaces by workflow:
281
+ * - `api`, `storage`, `images`, `comments`, and delete helpers use the
282
+ * configured API origin and fetch implementation.
283
+ * - transaction/calldata helpers use contract addresses from the configured
284
+ * network.
285
+ *
286
+ * @example
287
+ * ```ts
288
+ * import { createGeoClient, GeoTestnetConfig } from '@geoprotocol/geo-sdk';
289
+ * import * as Ops from '@geoprotocol/geo-sdk/ops';
290
+ *
291
+ * const geo = createGeoClient({ network: GeoTestnetConfig });
292
+ * const { ops } = Ops.entities.create({ name: 'Geo entity' });
293
+ * const edit = await geo.personalSpaces.publishEdit({
294
+ * name: 'Create entity',
295
+ * spaceId,
296
+ * author,
297
+ * ops,
298
+ * });
299
+ * ```
300
+ *
301
+ * @example
302
+ * Create a client for a custom deployment.
303
+ *
304
+ * ```ts
305
+ * import { createGeoClient, defineGeoNetworkConfig } from '@geoprotocol/geo-sdk';
306
+ *
307
+ * const local = defineGeoNetworkConfig({
308
+ * id: 'LOCAL',
309
+ * name: 'Local Geo',
310
+ * apiOrigin: 'http://localhost:3000',
311
+ * chain: { id: 31337, name: 'Anvil', rpcUrl: 'http://localhost:8545' },
312
+ * contracts: {
313
+ * SPACE_REGISTRY_ADDRESS: '0x...',
314
+ * DAO_SPACE_FACTORY_ADDRESS: '0x...',
315
+ * },
316
+ * });
317
+ *
318
+ * const geo = createGeoClient({ network: local });
319
+ * ```
320
+ *
321
+ * @param params Network and fetch configuration for context-aware helpers.
322
+ * @returns A configured client with API helpers and transaction workflows.
323
+ */
324
+ export declare function createGeoClient(params: CreateGeoClientParams): Client;
325
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}