@ibgib/core-gib 0.0.4

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 (330) hide show
  1. package/.vscode/core-gib-snippets.code-snippets +189 -0
  2. package/.vscode/launch.json +24 -0
  3. package/.vscode/settings.json +56 -0
  4. package/.vscode/tasks.json +37 -0
  5. package/CHANGELOG.md +11 -0
  6. package/README.md +215 -0
  7. package/dist/common/aws-constants.d.mts +7 -0
  8. package/dist/common/aws-constants.d.mts.map +1 -0
  9. package/dist/common/aws-constants.mjs +7 -0
  10. package/dist/common/aws-constants.mjs.map +1 -0
  11. package/dist/common/bin/bin-types.d.mts +17 -0
  12. package/dist/common/bin/bin-types.d.mts.map +1 -0
  13. package/dist/common/bin/bin-types.mjs +3 -0
  14. package/dist/common/bin/bin-types.mjs.map +1 -0
  15. package/dist/common/cache/cache-types.d.mts +57 -0
  16. package/dist/common/cache/cache-types.d.mts.map +1 -0
  17. package/dist/common/cache/cache-types.mjs +2 -0
  18. package/dist/common/cache/cache-types.mjs.map +1 -0
  19. package/dist/common/comment/comment-constants.d.mts +11 -0
  20. package/dist/common/comment/comment-constants.d.mts.map +1 -0
  21. package/dist/common/comment/comment-constants.mjs +11 -0
  22. package/dist/common/comment/comment-constants.mjs.map +1 -0
  23. package/dist/common/comment/comment-helper.d.mts +59 -0
  24. package/dist/common/comment/comment-helper.d.mts.map +1 -0
  25. package/dist/common/comment/comment-helper.mjs +173 -0
  26. package/dist/common/comment/comment-helper.mjs.map +1 -0
  27. package/dist/common/comment/comment-types.d.mts +16 -0
  28. package/dist/common/comment/comment-types.d.mts.map +1 -0
  29. package/dist/common/comment/comment-types.mjs +2 -0
  30. package/dist/common/comment/comment-types.mjs.map +1 -0
  31. package/dist/common/display/display-helper.d.mts +19 -0
  32. package/dist/common/display/display-helper.d.mts.map +1 -0
  33. package/dist/common/display/display-helper.mjs +68 -0
  34. package/dist/common/display/display-helper.mjs.map +1 -0
  35. package/dist/common/display/display-types.d.mts +97 -0
  36. package/dist/common/display/display-types.d.mts.map +1 -0
  37. package/dist/common/display/display-types.mjs +37 -0
  38. package/dist/common/display/display-types.mjs.map +1 -0
  39. package/dist/common/encrypt/encrypt-constants.d.mts +27 -0
  40. package/dist/common/encrypt/encrypt-constants.d.mts.map +1 -0
  41. package/dist/common/encrypt/encrypt-constants.mjs +27 -0
  42. package/dist/common/encrypt/encrypt-constants.mjs.map +1 -0
  43. package/dist/common/encrypt/encrypt-types.d.mts +116 -0
  44. package/dist/common/encrypt/encrypt-types.d.mts.map +1 -0
  45. package/dist/common/encrypt/encrypt-types.mjs +9 -0
  46. package/dist/common/encrypt/encrypt-types.mjs.map +1 -0
  47. package/dist/common/error/error-constants.d.mts +9 -0
  48. package/dist/common/error/error-constants.d.mts.map +1 -0
  49. package/dist/common/error/error-constants.mjs +9 -0
  50. package/dist/common/error/error-constants.mjs.map +1 -0
  51. package/dist/common/error/error-helper.d.mts +43 -0
  52. package/dist/common/error/error-helper.d.mts.map +1 -0
  53. package/dist/common/error/error-helper.mjs +167 -0
  54. package/dist/common/error/error-helper.mjs.map +1 -0
  55. package/dist/common/error/error-types.d.mts +58 -0
  56. package/dist/common/error/error-types.d.mts.map +1 -0
  57. package/dist/common/error/error-types.mjs +2 -0
  58. package/dist/common/error/error-types.mjs.map +1 -0
  59. package/dist/common/form/form-helper.d.mts +97 -0
  60. package/dist/common/form/form-helper.d.mts.map +1 -0
  61. package/dist/common/form/form-helper.mjs +185 -0
  62. package/dist/common/form/form-helper.mjs.map +1 -0
  63. package/dist/common/form/form-items.d.mts +229 -0
  64. package/dist/common/form/form-items.d.mts.map +1 -0
  65. package/dist/common/form/form-items.mjs +63 -0
  66. package/dist/common/form/form-items.mjs.map +1 -0
  67. package/dist/common/import-export/import-export-types.d.mts +18 -0
  68. package/dist/common/import-export/import-export-types.d.mts.map +1 -0
  69. package/dist/common/import-export/import-export-types.mjs +2 -0
  70. package/dist/common/import-export/import-export-types.mjs.map +1 -0
  71. package/dist/common/legacy/legacy-types.d.mts +2 -0
  72. package/dist/common/legacy/legacy-types.d.mts.map +1 -0
  73. package/dist/common/legacy/legacy-types.mjs +2 -0
  74. package/dist/common/legacy/legacy-types.mjs.map +1 -0
  75. package/dist/common/link/link-constants.d.mts +2 -0
  76. package/dist/common/link/link-constants.d.mts.map +1 -0
  77. package/dist/common/link/link-constants.mjs +2 -0
  78. package/dist/common/link/link-constants.mjs.map +1 -0
  79. package/dist/common/link/link-helper.d.mts +37 -0
  80. package/dist/common/link/link-helper.d.mts.map +1 -0
  81. package/dist/common/link/link-helper.mjs +143 -0
  82. package/dist/common/link/link-helper.mjs.map +1 -0
  83. package/dist/common/link/link-types.d.mts +14 -0
  84. package/dist/common/link/link-types.d.mts.map +1 -0
  85. package/dist/common/link/link-types.mjs +2 -0
  86. package/dist/common/link/link-types.mjs.map +1 -0
  87. package/dist/common/other/graph-helper.d.mts +166 -0
  88. package/dist/common/other/graph-helper.d.mts.map +1 -0
  89. package/dist/common/other/graph-helper.mjs +710 -0
  90. package/dist/common/other/graph-helper.mjs.map +1 -0
  91. package/dist/common/other/ibgib-helper.d.mts +245 -0
  92. package/dist/common/other/ibgib-helper.d.mts.map +1 -0
  93. package/dist/common/other/ibgib-helper.mjs +641 -0
  94. package/dist/common/other/ibgib-helper.mjs.map +1 -0
  95. package/dist/common/other/other-constants.d.mts +53 -0
  96. package/dist/common/other/other-constants.d.mts.map +1 -0
  97. package/dist/common/other/other-constants.mjs +67 -0
  98. package/dist/common/other/other-constants.mjs.map +1 -0
  99. package/dist/common/other/other-types.d.mts +166 -0
  100. package/dist/common/other/other-types.d.mts.map +1 -0
  101. package/dist/common/other/other-types.mjs +30 -0
  102. package/dist/common/other/other-types.mjs.map +1 -0
  103. package/dist/common/other/svg-constants.d.mts +2 -0
  104. package/dist/common/other/svg-constants.d.mts.map +1 -0
  105. package/dist/common/other/svg-constants.mjs +2 -0
  106. package/dist/common/other/svg-constants.mjs.map +1 -0
  107. package/dist/common/other/svg-helper.d.mts +54 -0
  108. package/dist/common/other/svg-helper.d.mts.map +1 -0
  109. package/dist/common/other/svg-helper.mjs +170 -0
  110. package/dist/common/other/svg-helper.mjs.map +1 -0
  111. package/dist/common/pic/pic-constants.d.mts +13 -0
  112. package/dist/common/pic/pic-constants.d.mts.map +1 -0
  113. package/dist/common/pic/pic-constants.mjs +13 -0
  114. package/dist/common/pic/pic-constants.mjs.map +1 -0
  115. package/dist/common/pic/pic-helper.d.mts +70 -0
  116. package/dist/common/pic/pic-helper.d.mts.map +1 -0
  117. package/dist/common/pic/pic-helper.mjs +235 -0
  118. package/dist/common/pic/pic-helper.mjs.map +1 -0
  119. package/dist/common/pic/pic-types.d.mts +23 -0
  120. package/dist/common/pic/pic-types.d.mts.map +1 -0
  121. package/dist/common/pic/pic-types.mjs +2 -0
  122. package/dist/common/pic/pic-types.mjs.map +1 -0
  123. package/dist/common/root/root-constants.d.mts +40 -0
  124. package/dist/common/root/root-constants.d.mts.map +1 -0
  125. package/dist/common/root/root-constants.mjs +40 -0
  126. package/dist/common/root/root-constants.mjs.map +1 -0
  127. package/dist/common/root/root-types.d.mts +9 -0
  128. package/dist/common/root/root-types.d.mts.map +1 -0
  129. package/dist/common/root/root-types.mjs +2 -0
  130. package/dist/common/root/root-types.mjs.map +1 -0
  131. package/dist/common/tag/tag-constants.d.mts +21 -0
  132. package/dist/common/tag/tag-constants.d.mts.map +1 -0
  133. package/dist/common/tag/tag-constants.mjs +28 -0
  134. package/dist/common/tag/tag-constants.mjs.map +1 -0
  135. package/dist/common/tag/tag-types.d.mts +14 -0
  136. package/dist/common/tag/tag-types.d.mts.map +1 -0
  137. package/dist/common/tag/tag-types.mjs +2 -0
  138. package/dist/common/tag/tag-types.mjs.map +1 -0
  139. package/dist/core-constants.d.mts +89 -0
  140. package/dist/core-constants.d.mts.map +1 -0
  141. package/dist/core-constants.mjs +484 -0
  142. package/dist/core-constants.mjs.map +1 -0
  143. package/dist/core-helper.d.mts +6 -0
  144. package/dist/core-helper.d.mts.map +1 -0
  145. package/dist/core-helper.mjs +28 -0
  146. package/dist/core-helper.mjs.map +1 -0
  147. package/dist/core-types.d.mts +520 -0
  148. package/dist/core-types.d.mts.map +1 -0
  149. package/dist/core-types.mjs +2 -0
  150. package/dist/core-types.mjs.map +1 -0
  151. package/dist/index.d.mts +2 -0
  152. package/dist/index.d.mts.map +1 -0
  153. package/dist/index.mjs +3 -0
  154. package/dist/index.mjs.map +1 -0
  155. package/dist/witness/app/app-base-v1.d.mts +130 -0
  156. package/dist/witness/app/app-base-v1.d.mts.map +1 -0
  157. package/dist/witness/app/app-base-v1.mjs +462 -0
  158. package/dist/witness/app/app-base-v1.mjs.map +1 -0
  159. package/dist/witness/app/app-constants.d.mts +10 -0
  160. package/dist/witness/app/app-constants.d.mts.map +1 -0
  161. package/dist/witness/app/app-constants.mjs +13 -0
  162. package/dist/witness/app/app-constants.mjs.map +1 -0
  163. package/dist/witness/app/app-helper.d.mts +85 -0
  164. package/dist/witness/app/app-helper.d.mts.map +1 -0
  165. package/dist/witness/app/app-helper.mjs +258 -0
  166. package/dist/witness/app/app-helper.mjs.map +1 -0
  167. package/dist/witness/app/app-types.d.mts +211 -0
  168. package/dist/witness/app/app-types.d.mts.map +1 -0
  169. package/dist/witness/app/app-types.mjs +49 -0
  170. package/dist/witness/app/app-types.mjs.map +1 -0
  171. package/dist/witness/app/chat-app/chat-app-types.d.mts +18 -0
  172. package/dist/witness/app/chat-app/chat-app-types.d.mts.map +1 -0
  173. package/dist/witness/app/chat-app/chat-app-types.mjs +25 -0
  174. package/dist/witness/app/chat-app/chat-app-types.mjs.map +1 -0
  175. package/dist/witness/app/flash-app/flash-app-types.d.mts +16 -0
  176. package/dist/witness/app/flash-app/flash-app-types.d.mts.map +1 -0
  177. package/dist/witness/app/flash-app/flash-app-types.mjs +23 -0
  178. package/dist/witness/app/flash-app/flash-app-types.mjs.map +1 -0
  179. package/dist/witness/app/raw-app/raw-app-types.d.mts +18 -0
  180. package/dist/witness/app/raw-app/raw-app-types.d.mts.map +1 -0
  181. package/dist/witness/app/raw-app/raw-app-types.mjs +25 -0
  182. package/dist/witness/app/raw-app/raw-app-types.mjs.map +1 -0
  183. package/dist/witness/app/todo-app/todo-app-types.d.ts +33 -0
  184. package/dist/witness/app/todo-app/todo-app-types.d.ts.map +1 -0
  185. package/dist/witness/app/todo-app/todo-app-types.js +31 -0
  186. package/dist/witness/app/todo-app/todo-app-types.js.map +1 -0
  187. package/dist/witness/robbot/robbot-base-v1.d.ts +432 -0
  188. package/dist/witness/robbot/robbot-base-v1.d.ts.map +1 -0
  189. package/dist/witness/robbot/robbot-base-v1.js +1407 -0
  190. package/dist/witness/robbot/robbot-base-v1.js.map +1 -0
  191. package/dist/witness/robbot/robbot-constants.d.mts +24 -0
  192. package/dist/witness/robbot/robbot-constants.d.mts.map +1 -0
  193. package/dist/witness/robbot/robbot-constants.mjs +24 -0
  194. package/dist/witness/robbot/robbot-constants.mjs.map +1 -0
  195. package/dist/witness/robbot/robbot-helper.d.mts +152 -0
  196. package/dist/witness/robbot/robbot-helper.d.mts.map +1 -0
  197. package/dist/witness/robbot/robbot-helper.mjs +609 -0
  198. package/dist/witness/robbot/robbot-helper.mjs.map +1 -0
  199. package/dist/witness/robbot/robbot-types.d.mts +539 -0
  200. package/dist/witness/robbot/robbot-types.d.mts.map +1 -0
  201. package/dist/witness/robbot/robbot-types.mjs +294 -0
  202. package/dist/witness/robbot/robbot-types.mjs.map +1 -0
  203. package/dist/witness/space/bootstrap/bootstrap-constants.d.mts +14 -0
  204. package/dist/witness/space/bootstrap/bootstrap-constants.d.mts.map +1 -0
  205. package/dist/witness/space/bootstrap/bootstrap-constants.mjs +15 -0
  206. package/dist/witness/space/bootstrap/bootstrap-constants.mjs.map +1 -0
  207. package/dist/witness/space/inner-space-v1.d.ts +63 -0
  208. package/dist/witness/space/inner-space-v1.d.ts.map +1 -0
  209. package/dist/witness/space/inner-space-v1.js +356 -0
  210. package/dist/witness/space/inner-space-v1.js.map +1 -0
  211. package/dist/witness/space/outer-space/outer-space-constants.d.mts +2 -0
  212. package/dist/witness/space/outer-space/outer-space-constants.d.mts.map +1 -0
  213. package/dist/witness/space/outer-space/outer-space-constants.mjs +2 -0
  214. package/dist/witness/space/outer-space/outer-space-constants.mjs.map +1 -0
  215. package/dist/witness/space/outer-space/outer-space-helper.d.mts +28 -0
  216. package/dist/witness/space/outer-space/outer-space-helper.d.mts.map +1 -0
  217. package/dist/witness/space/outer-space/outer-space-helper.mjs +87 -0
  218. package/dist/witness/space/outer-space/outer-space-helper.mjs.map +1 -0
  219. package/dist/witness/space/outer-space/outer-space-types.d.mts +548 -0
  220. package/dist/witness/space/outer-space/outer-space-types.d.mts.map +1 -0
  221. package/dist/witness/space/outer-space/outer-space-types.mjs +118 -0
  222. package/dist/witness/space/outer-space/outer-space-types.mjs.map +1 -0
  223. package/dist/witness/space/space-base-v1.d.mts +147 -0
  224. package/dist/witness/space/space-base-v1.d.mts.map +1 -0
  225. package/dist/witness/space/space-base-v1.mjs +350 -0
  226. package/dist/witness/space/space-base-v1.mjs.map +1 -0
  227. package/dist/witness/space/space-constants.d.mts +181 -0
  228. package/dist/witness/space/space-constants.d.mts.map +1 -0
  229. package/dist/witness/space/space-constants.mjs +192 -0
  230. package/dist/witness/space/space-constants.mjs.map +1 -0
  231. package/dist/witness/space/space-helper.d.mts +666 -0
  232. package/dist/witness/space/space-helper.d.mts.map +1 -0
  233. package/dist/witness/space/space-helper.mjs +2830 -0
  234. package/dist/witness/space/space-helper.mjs.map +1 -0
  235. package/dist/witness/space/space-types.d.mts +422 -0
  236. package/dist/witness/space/space-types.d.mts.map +1 -0
  237. package/dist/witness/space/space-types.mjs +52 -0
  238. package/dist/witness/space/space-types.mjs.map +1 -0
  239. package/dist/witness/witness-base-v1.d.ts +144 -0
  240. package/dist/witness/witness-base-v1.d.ts.map +1 -0
  241. package/dist/witness/witness-base-v1.js +300 -0
  242. package/dist/witness/witness-base-v1.js.map +1 -0
  243. package/dist/witness/witness-constants.d.mts +3 -0
  244. package/dist/witness/witness-constants.d.mts.map +1 -0
  245. package/dist/witness/witness-constants.mjs +3 -0
  246. package/dist/witness/witness-constants.mjs.map +1 -0
  247. package/dist/witness/witness-form-builder.d.mts +45 -0
  248. package/dist/witness/witness-form-builder.d.mts.map +1 -0
  249. package/dist/witness/witness-form-builder.mjs +95 -0
  250. package/dist/witness/witness-form-builder.mjs.map +1 -0
  251. package/dist/witness/witness-helper.d.mts +89 -0
  252. package/dist/witness/witness-helper.d.mts.map +1 -0
  253. package/dist/witness/witness-helper.mjs +229 -0
  254. package/dist/witness/witness-helper.mjs.map +1 -0
  255. package/dist/witness/witness-types.d.mts +211 -0
  256. package/dist/witness/witness-types.d.mts.map +1 -0
  257. package/dist/witness/witness-types.mjs +2 -0
  258. package/dist/witness/witness-types.mjs.map +1 -0
  259. package/jasmine-browser.json +18 -0
  260. package/jasmine.json +6 -0
  261. package/package.json +67 -0
  262. package/src/assumptions.spec.mts +45 -0
  263. package/src/common/aws-constants.mts +5 -0
  264. package/src/common/bin/bin-types.mts +17 -0
  265. package/src/common/cache/cache-types.mts +53 -0
  266. package/src/common/comment/comment-constants.mts +10 -0
  267. package/src/common/comment/comment-helper.mts +211 -0
  268. package/src/common/comment/comment-types.mts +19 -0
  269. package/src/common/display/display-helper.mts +88 -0
  270. package/src/common/display/display-types.mts +108 -0
  271. package/src/common/encrypt/encrypt-constants.mts +28 -0
  272. package/src/common/encrypt/encrypt-types.mts +130 -0
  273. package/src/common/error/error-constants.mts +8 -0
  274. package/src/common/error/error-helper.mts +155 -0
  275. package/src/common/error/error-types.mts +62 -0
  276. package/src/common/form/form-helper.mts +253 -0
  277. package/src/common/form/form-items.mts +236 -0
  278. package/src/common/import-export/import-export-types.mts +18 -0
  279. package/src/common/legacy/about-legacy.md +0 -0
  280. package/src/common/legacy/legacy-types.mts +0 -0
  281. package/src/common/link/link-constants.mts +1 -0
  282. package/src/common/link/link-helper.mts +155 -0
  283. package/src/common/link/link-types.mts +16 -0
  284. package/src/common/other/graph-helper.mts +853 -0
  285. package/src/common/other/ibgib-helper.mts +671 -0
  286. package/src/common/other/other-constants.mts +76 -0
  287. package/src/common/other/other-types.mts +186 -0
  288. package/src/common/other/svg-constants.mts +1 -0
  289. package/src/common/other/svg-helper.mts +238 -0
  290. package/src/common/pic/pic-constants.mts +13 -0
  291. package/src/common/pic/pic-helper.mts +295 -0
  292. package/src/common/pic/pic-types.mts +29 -0
  293. package/src/common/root/root-constants.mts +41 -0
  294. package/src/common/root/root-types.mts +8 -0
  295. package/src/common/tag/tag-constants.mts +34 -0
  296. package/src/common/tag/tag-types.mts +19 -0
  297. package/src/core-constants.mts +506 -0
  298. package/src/core-helper.mts +33 -0
  299. package/src/core-types.mts +519 -0
  300. package/src/helper.spec.mts +64 -0
  301. package/src/index.mts +1 -0
  302. package/src/witness/app/app-base-v1.mts +584 -0
  303. package/src/witness/app/app-constants.mts +16 -0
  304. package/src/witness/app/app-helper.mts +322 -0
  305. package/src/witness/app/app-types.mts +252 -0
  306. package/src/witness/app/chat-app/chat-app-types.mts +40 -0
  307. package/src/witness/app/flash-app/flash-app-types.mts +38 -0
  308. package/src/witness/app/raw-app/raw-app-types.mts +40 -0
  309. package/src/witness/app/todo-app/todo-app-types.ts +59 -0
  310. package/src/witness/robbot/robbot-base-v1.ts +1531 -0
  311. package/src/witness/robbot/robbot-constants.mts +25 -0
  312. package/src/witness/robbot/robbot-helper.mts +676 -0
  313. package/src/witness/robbot/robbot-helper.spec.mts +135 -0
  314. package/src/witness/robbot/robbot-types.mts +797 -0
  315. package/src/witness/space/bootstrap/bootstrap-constants.mts +15 -0
  316. package/src/witness/space/inner-space-v1.ts +372 -0
  317. package/src/witness/space/outer-space/outer-space-constants.mts +1 -0
  318. package/src/witness/space/outer-space/outer-space-helper.mts +91 -0
  319. package/src/witness/space/outer-space/outer-space-types.mts +627 -0
  320. package/src/witness/space/space-base-v1.mts +414 -0
  321. package/src/witness/space/space-constants.mts +208 -0
  322. package/src/witness/space/space-helper.mts +3242 -0
  323. package/src/witness/space/space-types.mts +476 -0
  324. package/src/witness/witness-base-v1.ts +325 -0
  325. package/src/witness/witness-constants.mts +2 -0
  326. package/src/witness/witness-form-builder.mts +128 -0
  327. package/src/witness/witness-helper.mts +256 -0
  328. package/src/witness/witness-types.mts +249 -0
  329. package/tsconfig.json +15 -0
  330. package/tsconfig.test.json +10 -0
@@ -0,0 +1,666 @@
1
+ import { Ib, IbGibAddr, TransformResult } from '@ibgib/ts-gib';
2
+ import { IbGib_V1 } from '@ibgib/ts-gib/dist/V1/index.mjs';
3
+ import { GetIbGibOpts, GetIbGibResult, PutIbGibOpts, PutIbGibResult, DeleteIbGibOpts, DeleteIbGibResult, SpecialIbGibType, IbGibTimelineUpdateInfo } from '../../common/other/other-types.mjs';
4
+ import { TagIbGib_V1 } from '../../common/tag/tag-types.mjs';
5
+ import { SpaceLockScope, IbGibSpaceLockIbGib, BootstrapIbGib, SpaceId, IbGibSpaceLockOptions, TxId, IbGibSpaceResultIbGib, IbGibSpaceResultData, IbGibSpaceResultRel8ns } from './space-types.mjs';
6
+ import { IbGibSpaceAny } from './space-base-v1.mjs';
7
+ import { RootData } from '../../common/root/root-types.mjs';
8
+ import { IbGibCacheService } from '../../common/cache/cache-types.mjs';
9
+ /**
10
+ * Two spaces can be equivalent if they point to the same area.
11
+ *
12
+ * @returns true if the "same" space
13
+ */
14
+ export declare function isSameSpace({ a, b, mustHaveSameData, }: {
15
+ a: IbGibSpaceAny;
16
+ b: IbGibSpaceAny;
17
+ /**
18
+ * If true, then only same exact internal data will do.
19
+ * Be careful if they have last modified timestamps.
20
+ */
21
+ mustHaveSameData?: boolean;
22
+ }): boolean;
23
+ /**
24
+ * wrapper for dealing with a space.
25
+ *
26
+ * @returns legacy `GetIbGibResult`
27
+ */
28
+ export declare function getFromSpace({ addr, addrs, isMeta, isDna, space, force, }: GetIbGibOpts): Promise<GetIbGibResult>;
29
+ /**
30
+ * Wrapper for saving ibgib in a given space.
31
+ *
32
+ * ## warnings
33
+ *
34
+ * The given space doesn't have to work this way.
35
+ * This is a convenience for me ATOW.
36
+ */
37
+ export declare function putInSpace({ ibGib, ibGibs, isMeta, isDna, force, space, }: PutIbGibOpts): Promise<PutIbGibResult>;
38
+ /**
39
+ * Wrapper for removing ibgib from the a given space, else the current space.
40
+ */
41
+ export declare function deleteFromSpace({ addr, isMeta, isDna, space, }: DeleteIbGibOpts): Promise<DeleteIbGibResult>;
42
+ /**
43
+ * Convenience function for persisting a transform result, which has
44
+ * a newIbGib and optionally intermediate ibGibs and/or dnas.
45
+ *
46
+ * it persists these ibgibs into the given space, else the current space.
47
+ */
48
+ export declare function persistTransformResult({ resTransform, space, isMeta, force, }: {
49
+ resTransform: TransformResult<IbGib_V1>;
50
+ space: IbGibSpaceAny;
51
+ isMeta?: boolean;
52
+ force?: boolean;
53
+ }): Promise<void>;
54
+ export declare function getSyncSpaces({ space, }: {
55
+ space: IbGibSpaceAny;
56
+ }): Promise<IbGibSpaceAny[]>;
57
+ export declare function getSpecialRel8dIbGibs<TIbGib extends IbGib_V1 = IbGib_V1>({ type, rel8nName, space, }: {
58
+ type: SpecialIbGibType;
59
+ rel8nName: string;
60
+ space: IbGibSpaceAny;
61
+ }): Promise<TIbGib[]>;
62
+ /**
63
+ * Gets one of the app's special ibGibs, e.g., TagsIbGib.
64
+ *
65
+ * When initializing tags, this will generate some boilerplate tags.
66
+ * I'm going to be doing roots here also, and who knows what else, but each
67
+ * one will have its own initialize specifics.
68
+ *
69
+ * @param initialize initialize (i.e. create) ONLY IF IbGib not found. Used for initializing app (first run).
70
+ *
71
+ * @see {@link createSpecial}
72
+ * @see {@link createSpecial_Tags}
73
+ */
74
+ export declare function getSpecialIbGib({ type, initialize, space, zeroSpace, fnUpdateBootstrap, fnBroadcast, fnGetInitializing, fnSetInitializing, }: {
75
+ type: SpecialIbGibType;
76
+ initialize?: boolean;
77
+ space: IbGibSpaceAny;
78
+ /**
79
+ * Only required if `initialize` is true.
80
+ */
81
+ zeroSpace?: IbGibSpaceAny;
82
+ /**
83
+ * Only required if `initialize` is true.
84
+ */
85
+ fnUpdateBootstrap?: (newSpace: IbGibSpaceAny) => Promise<void>;
86
+ /**
87
+ * Only required if `initialize` is true.
88
+ */
89
+ fnBroadcast?: (info: IbGibTimelineUpdateInfo) => void;
90
+ /**
91
+ * Initialization lock getter function.
92
+ */
93
+ fnGetInitializing?: () => boolean;
94
+ /**
95
+ * Initialization lock setter function.
96
+ *
97
+ * Because we don't want to initialize while we're initializing.
98
+ */
99
+ fnSetInitializing?: (x: boolean) => void;
100
+ }): Promise<IbGib_V1 | null>;
101
+ /**
102
+ * Gets a config addr from the current space via the given key
103
+ * as the space's rel8n name.
104
+ *
105
+ * For example, for `key = tags`, a space may look like:
106
+ *
107
+ * ```json
108
+ * {
109
+ * ib: space xyz,
110
+ * gib: e89ff8a1c4954db28432007615a78952,
111
+ * rel8ns: {
112
+ * past: [space xyz^21cb29cc353f45a491d2b49ff2f130db],
113
+ * ancestor: [space^gib],
114
+ * tags: [tags^99b388355f8f4a979ca30ba284d3a686], // <<< rel8n with name specified by key
115
+ * }
116
+ * }
117
+ * ```
118
+ *
119
+ * @param key config key
120
+ * @returns addr in config if exists, else undefined
121
+ */
122
+ export declare function getConfigAddr({ key, space, }: {
123
+ key: string;
124
+ space: IbGibSpaceAny;
125
+ }): Promise<string | undefined>;
126
+ export declare function setConfigAddr({ key, addr, space, zeroSpace, fnUpdateBootstrap, }: {
127
+ key: string;
128
+ addr: string;
129
+ space: IbGibSpaceAny;
130
+ zeroSpace: IbGibSpaceAny;
131
+ fnUpdateBootstrap?: (newSpace: IbGibSpaceAny) => Promise<void>;
132
+ }): Promise<IbGibSpaceAny>;
133
+ export declare function getCurrentRoot({ space, }: {
134
+ space: IbGibSpaceAny;
135
+ }): Promise<IbGib_V1<RootData> | undefined>;
136
+ export declare function setCurrentRoot({ root, space, zeroSpace, fnUpdateBootstrap, fnBroadcast, }: {
137
+ root: IbGib_V1<RootData>;
138
+ space: IbGibSpaceAny;
139
+ zeroSpace: IbGibSpaceAny;
140
+ fnUpdateBootstrap?: (newSpace: IbGibSpaceAny) => Promise<void>;
141
+ fnBroadcast?: (info: IbGibTimelineUpdateInfo) => void;
142
+ }): Promise<void>;
143
+ /**
144
+ * Every tjp should be related to one of the roots in a space.
145
+ *
146
+ * You should NOT relate every ibgib frame of a given ibGib.
147
+ */
148
+ export declare function rel8ToCurrentRoot({ ibGib, linked, rel8nName, space, fnBroadcast, zeroSpace, fnUpdateBootstrap, }: {
149
+ ibGib: IbGib_V1;
150
+ linked?: boolean;
151
+ rel8nName?: string;
152
+ space: IbGibSpaceAny;
153
+ fnBroadcast?: (info: IbGibTimelineUpdateInfo) => void;
154
+ zeroSpace: IbGibSpaceAny;
155
+ fnUpdateBootstrap?: (newSpace: IbGibSpaceAny) => Promise<void>;
156
+ }): Promise<void>;
157
+ /**
158
+ * Used for tracking tjpAddr -> latest ibGibAddr.
159
+ *
160
+ * Call this when you create a new ibGib.
161
+ *
162
+ * Need to put this in another service at some point, but crunch crunch
163
+ * like pacman's lunch.
164
+ */
165
+ export declare function registerNewIbGib({ ibGib, space, fnBroadcast, zeroSpace, fnUpdateBootstrap, }: {
166
+ ibGib: IbGib_V1;
167
+ space: IbGibSpaceAny;
168
+ fnBroadcast?: (info: IbGibTimelineUpdateInfo) => void;
169
+ zeroSpace: IbGibSpaceAny;
170
+ fnUpdateBootstrap?: (newSpace: IbGibSpaceAny) => Promise<void>;
171
+ }): Promise<void>;
172
+ /**
173
+ * Performs a rel8 transform on the special ibgib corresponding to the incoming
174
+ * `type`.
175
+ *
176
+ * ## special ibgibs
177
+ *
178
+ * much metadata configuration is stored via "special" ibgibs. Most of these are
179
+ * tracked in a space's ibgib directly, and the space itself is tracked in the
180
+ * bootstrap. So when storing configuration data, I usually create a new special
181
+ * ibgib. this function performs the plumbing for the rel8 transform related to
182
+ * that special ibgib.
183
+ *
184
+ * ## notes
185
+ *
186
+ * * special ibgib must exist in the space, i.e. previously initialized
187
+ * * i'm using this atm for mainly the local ionic space, but sometimes
188
+ * might be good in sync space, i dunno at this point.
189
+ * * I've migrated a lot of local space behavior into this space-agnostic file.
190
+ *
191
+ * @returns new special ibgib addr
192
+ */
193
+ export declare function rel8ToSpecialIbGib({ type, rel8nName, ibGibsToRel8, ibGibsToUnRel8, linked, severPast, deletePreviousSpecialIbGib, space, zeroSpace, fnUpdateBootstrap, fnBroadcast, }: {
194
+ /**
195
+ * the "name" of the special ibgib.
196
+ *
197
+ * This will drive deterministically what the special ibgib's `ib` will be,
198
+ * among other things.
199
+ */
200
+ type: SpecialIbGibType;
201
+ /**
202
+ * The rel8nName by which to rel8 the target incoming `ibGibsToRel8`.
203
+ */
204
+ rel8nName: string;
205
+ /**
206
+ * multiple ibgibs to rel8
207
+ */
208
+ ibGibsToRel8?: IbGib_V1[];
209
+ /**
210
+ * multiple ibgibs to UNrel8
211
+ */
212
+ ibGibsToUnRel8?: IbGib_V1[];
213
+ /**
214
+ * If linked, then the rel8nName will only contain one address, i.e. the
215
+ * last rel8d ibgib's address.
216
+ *
217
+ * This depends on your use case.
218
+ */
219
+ linked?: boolean;
220
+ /**
221
+ * Clears out the special.rel8ns.past array to an empty array.
222
+ *
223
+ * {@see deletePreviousSpecialIbGib} for driving use case.
224
+ */
225
+ severPast?: boolean;
226
+ /**
227
+ * Deletes the previous special ibGib.
228
+ *
229
+ * ## driving use case
230
+ *
231
+ * the latest ibGib is one that is completely ephemeral. It doesn't get attached
232
+ * to the current root, and it only has the current instance. So we don't want to
233
+ * keep around past incarnations.
234
+ */
235
+ deletePreviousSpecialIbGib?: boolean;
236
+ /**
237
+ * The space in which the special ibgib resides.
238
+ */
239
+ space: IbGibSpaceAny;
240
+ /**
241
+ * The default zero space that contains metaspace information, i.e.
242
+ * bootstrap ibgib, space ibgibs, etc.
243
+ */
244
+ zeroSpace: IbGibSpaceAny;
245
+ /**
246
+ * The function by which to update the bootstrap ibgib.
247
+ *
248
+ * This is necessary, because when you update a special ibgib,
249
+ * the address of that special ibgib must be updated in the given
250
+ * `space`. This will require an update to the space's address, which
251
+ * itself is tracked in the bootstrap ibgib.
252
+ */
253
+ fnUpdateBootstrap?: (newSpace: IbGibSpaceAny) => Promise<void>;
254
+ /**
255
+ * Use this if you want to broadcast the new space's address after this
256
+ * function performs the rel8 transform.
257
+ */
258
+ fnBroadcast?: (info: IbGibTimelineUpdateInfo) => void;
259
+ }): Promise<IbGibAddr>;
260
+ export declare function getTjpIbGib({ ibGib, naive, space, }: {
261
+ ibGib: IbGib_V1<any>;
262
+ naive?: boolean;
263
+ space: IbGibSpaceAny;
264
+ }): Promise<IbGib_V1<any> | undefined>;
265
+ /**
266
+ * Routing function to various `create_____` functions.
267
+ *
268
+ * @returns address of newly created special.
269
+ */
270
+ export declare function createSpecial({ type, space, zeroSpace, fnUpdateBootstrap, fnBroadcast, }: {
271
+ type: SpecialIbGibType;
272
+ space: IbGibSpaceAny;
273
+ zeroSpace: IbGibSpaceAny;
274
+ fnUpdateBootstrap?: (newSpace: IbGibSpaceAny) => Promise<void>;
275
+ fnBroadcast?: (info: IbGibTimelineUpdateInfo) => void;
276
+ }): Promise<IbGibAddr | null>;
277
+ /**
278
+ * Creates a new special ibgib, persists it and if not skipped, relates
279
+ * it to the current root.
280
+ *
281
+ * @returns newly created ibgib (not just address)
282
+ */
283
+ export declare function createSpecialIbGib({ type, skipRel8ToRoot, space, zeroSpace, fnUpdateBootstrap, fnBroadcast, }: {
284
+ type: SpecialIbGibType;
285
+ skipRel8ToRoot?: boolean;
286
+ space: IbGibSpaceAny;
287
+ zeroSpace: IbGibSpaceAny;
288
+ fnUpdateBootstrap?: (newSpace: IbGibSpaceAny) => Promise<void>;
289
+ fnBroadcast?: (info: IbGibTimelineUpdateInfo) => void;
290
+ }): Promise<IbGib_V1>;
291
+ /**
292
+ * Creates a new tags^gib instance (unique to current space), as well as
293
+ * default initial tags, e.g. "home", "favorites", etc., and relates these
294
+ * individual tags to the tags ibGib itself.
295
+ *
296
+ * Stores the tags ibGib's addr in config.
297
+ */
298
+ export declare function createSpecial_Tags({ space, zeroSpace, fnUpdateBootstrap, fnBroadcast, }: {
299
+ space: IbGibSpaceAny;
300
+ zeroSpace: IbGibSpaceAny;
301
+ fnUpdateBootstrap?: (newSpace: IbGibSpaceAny) => Promise<void>;
302
+ fnBroadcast?: (info: IbGibTimelineUpdateInfo) => void;
303
+ }): Promise<IbGibAddr | null>;
304
+ /**
305
+ * 1. Creates a new tag ibgib with the given properties.
306
+ * 2. Persists graph in given {@link space}
307
+ * 3. Registers the new tag ibgib in that space, using the given
308
+ * {@link fnUpdateBootstrap} and {@link fnBroadcast} functions.
309
+ * 4. Relates the new tag to the special tags ibgib.
310
+ *
311
+ * @returns the new tag ibgib and new tags address.
312
+ */
313
+ export declare function createTagIbGibAndSundry({ text, icon, description, space, zeroSpace, fnUpdateBootstrap, fnBroadcast, }: {
314
+ text: string;
315
+ icon?: string;
316
+ description?: string;
317
+ space: IbGibSpaceAny;
318
+ zeroSpace: IbGibSpaceAny;
319
+ fnUpdateBootstrap?: (newSpace: IbGibSpaceAny) => Promise<void>;
320
+ fnBroadcast?: (info: IbGibTimelineUpdateInfo) => void;
321
+ }): Promise<{
322
+ newTagIbGib: TagIbGib_V1;
323
+ newTagsAddr: string;
324
+ }>;
325
+ export declare function createSpecial_Roots({ space, zeroSpace, fnUpdateBootstrap, fnBroadcast, }: {
326
+ space: IbGibSpaceAny;
327
+ zeroSpace: IbGibSpaceAny;
328
+ fnUpdateBootstrap?: (newSpace: IbGibSpaceAny) => Promise<void>;
329
+ fnBroadcast?: (info: IbGibTimelineUpdateInfo) => void;
330
+ }): Promise<IbGibAddr | null>;
331
+ export declare function createSpecial_Robbots({ space, zeroSpace, fnUpdateBootstrap, fnBroadcast, }: {
332
+ space: IbGibSpaceAny;
333
+ zeroSpace: IbGibSpaceAny;
334
+ fnUpdateBootstrap?: (newSpace: IbGibSpaceAny) => Promise<void>;
335
+ fnBroadcast?: (info: IbGibTimelineUpdateInfo) => void;
336
+ }): Promise<IbGibAddr | null>;
337
+ export declare function createSpecial_Apps({ space, zeroSpace, fnUpdateBootstrap, fnBroadcast, }: {
338
+ space: IbGibSpaceAny;
339
+ zeroSpace: IbGibSpaceAny;
340
+ fnUpdateBootstrap?: (newSpace: IbGibSpaceAny) => Promise<void>;
341
+ fnBroadcast?: (info: IbGibTimelineUpdateInfo) => void;
342
+ }): Promise<IbGibAddr | null>;
343
+ export declare function createApp({ defaultAppData, defaultAppRel8ns, space, zeroSpace, fnUpdateBootstrap, fnBroadcast, }: {
344
+ /**
345
+ * object that contains all of the default "data" for the app. Data here
346
+ * does not mean an app's data like other apps. In ibgib, data is
347
+ * everywhere. This means particularly the defalut app ibGib's data, i.e.
348
+ * `ibGib.data`.
349
+ */
350
+ defaultAppData: any;
351
+ defaultAppRel8ns: any;
352
+ space: IbGibSpaceAny;
353
+ zeroSpace: IbGibSpaceAny;
354
+ fnUpdateBootstrap?: (newSpace: IbGibSpaceAny) => Promise<void>;
355
+ fnBroadcast?: (info: IbGibTimelineUpdateInfo) => void;
356
+ }): Promise<IbGibAddr | null>;
357
+ /**
358
+ * Relates the given tag to the TagsIbGib, saves the generated
359
+ * TagsIbGib and updates the settings to point to the new TagsIbGib.
360
+ *
361
+ * @param tagIbGib to add to Tags
362
+ */
363
+ export declare function rel8TagToTagsIbGib({ tagIbGib, space, zeroSpace, fnUpdateBootstrap, fnBroadcast, }: {
364
+ tagIbGib: IbGib_V1;
365
+ space: IbGibSpaceAny;
366
+ zeroSpace: IbGibSpaceAny;
367
+ fnUpdateBootstrap?: (newSpace: IbGibSpaceAny) => Promise<void>;
368
+ fnBroadcast?: (info: IbGibTimelineUpdateInfo) => void;
369
+ }): Promise<IbGibAddr>;
370
+ /**
371
+ * Throws an error if any duplicates found in either array.
372
+ *
373
+ * ## notes
374
+ *
375
+ * Only pass in ibGib or ibGibAddrs, not both. Warns if both are passed in though.
376
+ *
377
+ * @throws if both params are falsy or if addrs || mapped addrs contains duplicates.
378
+ */
379
+ export declare function throwIfDuplicates({ ibGibs, ibGibAddrs, }: {
380
+ ibGibs?: IbGib_V1[];
381
+ ibGibAddrs?: IbGibAddr[];
382
+ }): void;
383
+ export declare function getSpaceLockAddr({ space, scope, }: {
384
+ space: IbGibSpaceAny;
385
+ scope: SpaceLockScope;
386
+ }): IbGibAddr;
387
+ /**
388
+ * Executes some function `fn` against/in a given `space` while
389
+ * performing lock plumbing in that space.
390
+ *
391
+ * By this, I mean that this function takes care of acquiring the lock,
392
+ * attempting retries according to the parameters, and then unlocking
393
+ * the space regardless of result/error.
394
+ *
395
+ * @returns result of inner `fn` with `TResult`
396
+ */
397
+ export declare function execInSpaceWithLocking<TResult>({ space, scope, secondsValid, maxDelayMs, fn, callerInstanceId, maxLockAttempts, }: {
398
+ space: IbGibSpaceAny;
399
+ scope: string;
400
+ secondsValid: number;
401
+ /**
402
+ * If resource locked, will delay at max this ms.
403
+ */
404
+ maxDelayMs?: number;
405
+ fn: () => Promise<TResult>;
406
+ /**
407
+ * for use differentiating among tabs.
408
+ *
409
+ * ## intent
410
+ * the idea is the ibgibs service has an instance id and passes it in here.
411
+ */
412
+ callerInstanceId?: string;
413
+ /**
414
+ * if given, will try to acquire lock at most this many times, else
415
+ * will default to {@link DEFAULT_MAX_DELAY_RETRY_LOCK_ACQUIRE_ATTEMPTS}.
416
+ */
417
+ maxLockAttempts?: number;
418
+ }): Promise<TResult>;
419
+ /**
420
+ * Gets the bootstrap ibgib in the given `zeroSpace`.
421
+ *
422
+ * @example
423
+ *
424
+ * ```json
425
+ * {
426
+ * "ib":"bootstrap",
427
+ * "gib":"gib",
428
+ * "data":{
429
+ * "defaultSpaceId":"d455d9a72807617634ccbf1e532b71037c45762f824ec85fcd9a4c2275562f33",
430
+ * "spaceIds":["d455d9a72807617634ccbf1e532b71037c45762f824ec85fcd9a4c2275562f33"]
431
+ * },
432
+ * "rel8ns":{
433
+ * "d455d9a72807617634ccbf1e532b71037c45762f824ec85fcd9a4c2275562f33":[
434
+ * "witness space IonicSpace_V1 oij d455d9a72807617634ccbf1e532b71037c45762f824ec85fcd9a4c2275562f33^B336251655E8C56B38E9E86F20E0E42E6C153785F1A0A798ADE6916E71CF055B"
435
+ * ]
436
+ * }
437
+ * }
438
+ * ```
439
+ *
440
+ * @returns bootstrapIbGib if found
441
+ */
442
+ export declare function getValidatedBootstrapIbGib({ zeroSpace, }: {
443
+ zeroSpace: IbGibSpaceAny;
444
+ }): Promise<BootstrapIbGib | null>;
445
+ /**
446
+ * So when loading the local user space, even if the class changes or default
447
+ * constructors change, the internal `data` is loaded from file.
448
+ */
449
+ export declare function getLocalSpace<TSpace extends IbGibSpaceAny>({ zeroSpace, bootstrapIbGib, localSpaceId, lock, callerInstanceId, fnDtoToSpace, localSpaceCacheSvc, }: {
450
+ /**
451
+ * A zero space is a space that is built with default settings that
452
+ * is not specific to a user.
453
+ *
454
+ * This is the foundational space that all spaces share, out of which
455
+ * a bootstrap ibgib can be found that will itself have rel8ns to other
456
+ * spaces.
457
+ *
458
+ * ## notes
459
+ *
460
+ * This is what I was calling a zeroSpace, but that will in the future
461
+ * mean a default space among a group of spaces.
462
+ */
463
+ zeroSpace: IbGibSpaceAny;
464
+ /**
465
+ * bootstrap ibGib, if provided, which was found in the zero space.
466
+ * The bootstrap ibgib should have a rel8n entry to the local space.
467
+ *
468
+ * ## future
469
+ *
470
+ * We will have multiple local spaces to choose from, with a default
471
+ * being the one that we're referring to atow.
472
+ */
473
+ bootstrapIbGib?: BootstrapIbGib;
474
+ /**
475
+ * If provided, will look for the space via this id in the bootstrap ibgib.
476
+ * If not provided, will use the bootstrap ibgib's default spaceId.
477
+ */
478
+ localSpaceId?: SpaceId;
479
+ /**
480
+ * If true, we will lock on getting the bootstrap ibgib (if needed), as
481
+ * well as getting the user space.
482
+ */
483
+ lock?: boolean;
484
+ /**
485
+ * for use differentiating among tabs.
486
+ *
487
+ * ## intent
488
+ * the idea is the ibgibs service has an instance id and passes it in here.
489
+ */
490
+ callerInstanceId: string;
491
+ /**
492
+ * function that turns the space dto into the space witness.
493
+ *
494
+ * ## intent
495
+ *
496
+ * When loading a space, the only part stored is the ibgib data. You still
497
+ * need a function that hydrates a witness class with that data.
498
+ */
499
+ fnDtoToSpace: (spaceDto: IbGib_V1) => Promise<TSpace>;
500
+ /**
501
+ * Optional caching service
502
+ */
503
+ localSpaceCacheSvc?: IbGibCacheService;
504
+ }): Promise<TSpace>;
505
+ export declare function lockSpace({ space, scope, secondsValid, instanceId, }: IbGibSpaceLockOptions): Promise<IbGibSpaceLockIbGib>;
506
+ export declare function unlockSpace({ space, scope, instanceId, }: IbGibSpaceLockOptions): Promise<IbGibSpaceLockIbGib | undefined>;
507
+ /**
508
+ * Updates the bootstrap^gib record in the default space data store
509
+ * with the 'space' rel8n set to the `newSpaceAddr`.
510
+ *
511
+ * This way, if the app closes at this point, it will know to look at this
512
+ * space when it loads.
513
+ *
514
+ * ## notes
515
+ *
516
+ * I'm probably typing this all over, but the bootstrap^gib is the
517
+ * first record that the app looks at to know what space to load.
518
+ * The space itself has configuration and has a proper gib hash
519
+ * so it's verifiable. But the initial bootstrap^gib record is
520
+ * NOT, since it only has 'gib' as its address (and thus its not hashed).
521
+ *
522
+ * In the future, this could be alleviated by asking other witnesses
523
+ * "Hey what was my last bootstrap^gib hash", but there's no way to
524
+ * do it beyond this without using some kind of authentication/secret(s)
525
+ * that generate the record, i.e. encrypting bootstrap^gib cleverly.
526
+ */
527
+ export declare function updateBootstrapIbGib({ space, zeroSpace, setSpaceAsDefault, createIfNotFound, }: {
528
+ /**
529
+ * space to add/replace in the bootstrap^gib ibgib.
530
+ */
531
+ space: IbGibSpaceAny;
532
+ /**
533
+ * default "zero" space which contains a bootstrap^gib ibgib.
534
+ */
535
+ zeroSpace?: IbGibSpaceAny;
536
+ /**
537
+ * set the space as the default local space in the bootstrap^gib ibgib.
538
+ */
539
+ setSpaceAsDefault?: boolean;
540
+ /**
541
+ * If bootstrap not found, create a new one
542
+ */
543
+ createIfNotFound?: boolean;
544
+ }): Promise<void>;
545
+ export declare function getSpaceArgMetadata({ space }: {
546
+ space: IbGibSpaceAny;
547
+ }): string;
548
+ export declare function getSpaceResultMetadata({ space }: {
549
+ space: IbGibSpaceAny;
550
+ }): string;
551
+ export declare function getSpaceIb({ space, classname, }: {
552
+ space: IbGibSpaceAny;
553
+ classname: string;
554
+ }): Ib;
555
+ export declare function isSpaceIb({ ib }: {
556
+ ib: Ib;
557
+ }): boolean;
558
+ /**
559
+ * ## current schema FOR LOCAL (IONIC) SPACES:
560
+ *
561
+ * `witness space [classname] [spaceName] [spaceId]`
562
+ *
563
+ * ## current schema FOR SYNC (AWS) OUTERSPACES:
564
+ *
565
+ * `outerspace sync [spaceName]
566
+ *
567
+ * ## I need to fix this somehow...
568
+ *
569
+ * This is why I'm working on streamlining space management
570
+ *
571
+ * (To start with, I just had to get the ball rolling and tried my best.)
572
+ *
573
+ * ## NOTES
574
+ *
575
+ * * both schemas are space-delimited
576
+ */
577
+ export declare function getInfoFromSpaceIb({ spaceIb, }: {
578
+ spaceIb: Ib;
579
+ }): {
580
+ /**
581
+ * currently this can be SpaceId OR undefined.
582
+ */
583
+ spaceClassname: string | undefined;
584
+ /**
585
+ * non-unique spaceName of the given space (i.e. most likely space.data.name)
586
+ */
587
+ spaceName: string;
588
+ /**
589
+ * currently this returns EITHER SpaceId OR undefined.
590
+ *
591
+ * This is because of my using different schemas for local/outer spaces...
592
+ *
593
+ * (for better or worse)
594
+ */
595
+ spaceId: SpaceId | undefined;
596
+ spaceType: 'outer' | 'local' | 'inner';
597
+ };
598
+ /**
599
+ * Helper function that generates a unique-ish id.
600
+ *
601
+ * atow this is just `return (await getUUID()).slice(0, DEFAULT_TX_ID_LENGTH);`
602
+ *
603
+ * ## notes
604
+ *
605
+ * The thinking is that it only has to be a couple characters in length
606
+ * because this is supposed to only be a unique id within the scope of
607
+ * a tx which has its own tjp (gib) used as the id for the entire communication
608
+ * saga.
609
+ *
610
+ * @returns txId
611
+ */
612
+ export declare function getNewTxId({ length, }?: {
613
+ /**
614
+ * length of txId
615
+ *
616
+ * @default DEFAULT_TX_ID_LENGTH
617
+ */
618
+ length?: number;
619
+ }): Promise<TxId>;
620
+ /**
621
+ * wrapper for dealing with a space.
622
+ *
623
+ * convenience function for creating an arg ibgib to send to the given space
624
+ * using Cmd/CmdModifiers for getting latest addrs.
625
+ *
626
+ * @returns space result ibgib from the given `space.witness` call.
627
+ */
628
+ export declare function getLatestAddrs({ ibGibs, addrs, tjps, tjpAddrs, space, }: {
629
+ ibGibs?: IbGib_V1[];
630
+ addrs?: IbGibAddr[];
631
+ tjps?: IbGib_V1[];
632
+ tjpAddrs?: IbGibAddr[];
633
+ space: IbGibSpaceAny;
634
+ }): Promise<IbGibSpaceResultIbGib<IbGib_V1, IbGibSpaceResultData, IbGibSpaceResultRel8ns>>;
635
+ /**
636
+ * I'm making this because i want to archive on a special tags index ibgib.
637
+ * But we can't allow archiving on any old special ibgib, like the 'latest' index.
638
+ * so this checks to see if it's on the forbidden list (winging that atm), and if it
639
+ * is then this throws.
640
+ *
641
+ * use this function inside of commands that act on ibgibs that are special.
642
+ */
643
+ export declare function throwIfContextIsSpecial({ ibGib_Context, }: {
644
+ ibGib_Context: IbGib_V1;
645
+ }): void;
646
+ export declare function trash({ ibGib_Context, rel8nName_Context, addr, space, zeroSpace, fnUpdateBootstrap, fnBroadcast, }: {
647
+ ibGib_Context: IbGib_V1;
648
+ rel8nName_Context: string;
649
+ addr: IbGibAddr;
650
+ space: IbGibSpaceAny;
651
+ zeroSpace: IbGibSpaceAny;
652
+ fnUpdateBootstrap?: (newSpace: IbGibSpaceAny) => Promise<void>;
653
+ fnBroadcast?: (info: IbGibTimelineUpdateInfo) => void;
654
+ }): Promise<void>;
655
+ export declare function archive({ ibGib_Context, rel8nName_Context, addr, space, zeroSpace, fnUpdateBootstrap, fnBroadcast, }: {
656
+ ibGib_Context: IbGib_V1;
657
+ rel8nName_Context: string;
658
+ addr: IbGibAddr;
659
+ space: IbGibSpaceAny;
660
+ zeroSpace: IbGibSpaceAny;
661
+ fnUpdateBootstrap?: (newSpace: IbGibSpaceAny) => Promise<void>;
662
+ fnBroadcast?: (info: IbGibTimelineUpdateInfo) => void;
663
+ }): Promise<void>;
664
+ export declare function spaceNameIsValid(name: string): boolean;
665
+ export declare function validateBootstrapIbGib(bootstrapSpace: IbGib_V1): Promise<boolean>;
666
+ //# sourceMappingURL=space-helper.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"space-helper.d.mts","sourceRoot":"","sources":["../../../src/witness/space/space-helper.mts"],"names":[],"mappings":"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"}