@gitpod/gitpod-protocol 0.1.5-private-repos-after-cancellation.0 → 0.1.5-protected-secrets.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 (407) hide show
  1. package/data/gitpod-schema.json +145 -7
  2. package/lib/accounting-protocol.d.ts +18 -12
  3. package/lib/accounting-protocol.d.ts.map +1 -1
  4. package/lib/accounting-protocol.js +43 -42
  5. package/lib/accounting-protocol.js.map +1 -1
  6. package/lib/admin-protocol.d.ts +28 -4
  7. package/lib/admin-protocol.d.ts.map +1 -1
  8. package/lib/admin-protocol.js +2 -13
  9. package/lib/admin-protocol.js.map +1 -1
  10. package/lib/analytics.d.ts +12 -2
  11. package/lib/analytics.d.ts.map +1 -1
  12. package/lib/analytics.js.map +1 -1
  13. package/lib/attribution.d.ts +23 -0
  14. package/lib/attribution.d.ts.map +1 -0
  15. package/lib/attribution.js +50 -0
  16. package/lib/attribution.js.map +1 -0
  17. package/lib/auth.d.ts.map +1 -1
  18. package/lib/billing-mode.d.ts +43 -0
  19. package/lib/billing-mode.d.ts.map +1 -0
  20. package/lib/billing-mode.js +44 -0
  21. package/lib/billing-mode.js.map +1 -0
  22. package/lib/blocked-repositories-protocol.d.ts +13 -0
  23. package/lib/blocked-repositories-protocol.d.ts.map +1 -0
  24. package/lib/blocked-repositories-protocol.js +8 -0
  25. package/lib/blocked-repositories-protocol.js.map +1 -0
  26. package/lib/context-url.d.ts +18 -5
  27. package/lib/context-url.d.ts.map +1 -1
  28. package/lib/context-url.js +63 -10
  29. package/lib/context-url.js.map +1 -1
  30. package/lib/context-url.spec.d.ts +2 -0
  31. package/lib/context-url.spec.d.ts.map +1 -1
  32. package/lib/context-url.spec.js +81 -48
  33. package/lib/context-url.spec.js.map +1 -1
  34. package/lib/encryption/container-module.d.ts.map +1 -1
  35. package/lib/encryption/container-module.js +4 -4
  36. package/lib/encryption/container-module.js.map +1 -1
  37. package/lib/encryption/encryption-engine.d.ts.map +1 -1
  38. package/lib/encryption/encryption-engine.js +25 -26
  39. package/lib/encryption/encryption-engine.js.map +1 -1
  40. package/lib/encryption/encryption-engine.spec.d.ts.map +1 -1
  41. package/lib/encryption/encryption-engine.spec.js +29 -37
  42. package/lib/encryption/encryption-engine.spec.js.map +1 -1
  43. package/lib/encryption/encryption-service.d.ts.map +1 -1
  44. package/lib/encryption/encryption-service.js +30 -44
  45. package/lib/encryption/encryption-service.js.map +1 -1
  46. package/lib/encryption/key-provider.d.ts.map +1 -1
  47. package/lib/encryption/key-provider.js +31 -38
  48. package/lib/encryption/key-provider.js.map +1 -1
  49. package/lib/env.d.ts +0 -6
  50. package/lib/env.d.ts.map +1 -1
  51. package/lib/env.js +7 -27
  52. package/lib/env.js.map +1 -1
  53. package/lib/experiments/always-default.d.ts +8 -0
  54. package/lib/experiments/always-default.d.ts.map +1 -0
  55. package/lib/experiments/always-default.js +20 -0
  56. package/lib/experiments/always-default.js.map +1 -0
  57. package/lib/experiments/configcat-server.d.ts +10 -0
  58. package/lib/experiments/configcat-server.d.ts.map +1 -0
  59. package/lib/experiments/configcat-server.js +36 -0
  60. package/lib/experiments/configcat-server.js.map +1 -0
  61. package/lib/experiments/configcat.d.ts +21 -0
  62. package/lib/experiments/configcat.d.ts.map +1 -0
  63. package/lib/experiments/configcat.js +51 -0
  64. package/lib/experiments/configcat.js.map +1 -0
  65. package/lib/experiments/types.d.ts +22 -0
  66. package/lib/experiments/types.d.ts.map +1 -0
  67. package/lib/experiments/types.js +10 -0
  68. package/lib/experiments/types.js.map +1 -0
  69. package/lib/gitpod-file-parser.d.ts.map +1 -1
  70. package/lib/gitpod-file-parser.js +26 -42
  71. package/lib/gitpod-file-parser.js.map +1 -1
  72. package/lib/gitpod-file-parser.spec.js +145 -142
  73. package/lib/gitpod-file-parser.spec.js.map +1 -1
  74. package/lib/gitpod-service.d.ts +127 -52
  75. package/lib/gitpod-service.d.ts.map +1 -1
  76. package/lib/gitpod-service.js +190 -315
  77. package/lib/gitpod-service.js.map +1 -1
  78. package/lib/headless-workspace-log.d.ts +3 -13
  79. package/lib/headless-workspace-log.d.ts.map +1 -1
  80. package/lib/headless-workspace-log.js +3 -8
  81. package/lib/headless-workspace-log.js.map +1 -1
  82. package/lib/ide-frontend-service.d.ts +1 -1
  83. package/lib/ide-protocol.d.ts +113 -0
  84. package/lib/ide-protocol.d.ts.map +1 -0
  85. package/lib/{util/without.js → ide-protocol.js} +2 -2
  86. package/lib/ide-protocol.js.map +1 -0
  87. package/lib/index.d.ts +16 -12
  88. package/lib/index.d.ts.map +1 -1
  89. package/lib/index.js +5 -1
  90. package/lib/index.js.map +1 -1
  91. package/lib/installation-admin-protocol.d.ts +30 -0
  92. package/lib/installation-admin-protocol.d.ts.map +1 -0
  93. package/lib/installation-admin-protocol.js +31 -0
  94. package/lib/installation-admin-protocol.js.map +1 -0
  95. package/lib/license-protocol.d.ts +7 -0
  96. package/lib/license-protocol.d.ts.map +1 -1
  97. package/lib/license-protocol.js.map +1 -1
  98. package/lib/messaging/browser/connection.d.ts +3 -3
  99. package/lib/messaging/browser/connection.d.ts.map +1 -1
  100. package/lib/messaging/browser/connection.js +173 -36
  101. package/lib/messaging/browser/connection.js.map +1 -1
  102. package/lib/messaging/browser/window-connection.d.ts +4 -4
  103. package/lib/messaging/browser/window-connection.d.ts.map +1 -1
  104. package/lib/messaging/browser/window-connection.js +42 -59
  105. package/lib/messaging/browser/window-connection.js.map +1 -1
  106. package/lib/messaging/client-call-metrics.d.ts +19 -0
  107. package/lib/messaging/client-call-metrics.d.ts.map +1 -0
  108. package/lib/messaging/client-call-metrics.js +82 -0
  109. package/lib/messaging/client-call-metrics.js.map +1 -0
  110. package/lib/messaging/error.d.ts +10 -2
  111. package/lib/messaging/error.d.ts.map +1 -1
  112. package/lib/messaging/error.js +20 -4
  113. package/lib/messaging/error.js.map +1 -1
  114. package/lib/messaging/handler.d.ts +10 -0
  115. package/lib/messaging/handler.d.ts.map +1 -1
  116. package/lib/messaging/handler.js +1 -1
  117. package/lib/messaging/node/connection.d.ts +1 -17
  118. package/lib/messaging/node/connection.d.ts.map +1 -1
  119. package/lib/messaging/node/connection.js +24 -60
  120. package/lib/messaging/node/connection.js.map +1 -1
  121. package/lib/messaging/proxy-factory.d.ts +3 -1
  122. package/lib/messaging/proxy-factory.d.ts.map +1 -1
  123. package/lib/messaging/proxy-factory.js +75 -162
  124. package/lib/messaging/proxy-factory.js.map +1 -1
  125. package/lib/oss-allowlist.d.ts +14 -0
  126. package/lib/oss-allowlist.d.ts.map +1 -0
  127. package/lib/oss-allowlist.js +8 -0
  128. package/lib/oss-allowlist.js.map +1 -0
  129. package/lib/payment-protocol.d.ts.map +1 -1
  130. package/lib/payment-protocol.js +1 -1
  131. package/lib/payment-protocol.js.map +1 -1
  132. package/lib/permission.d.ts +9 -4
  133. package/lib/permission.d.ts.map +1 -1
  134. package/lib/permission.js +39 -31
  135. package/lib/permission.js.map +1 -1
  136. package/lib/plans.d.ts +5 -4
  137. package/lib/plans.d.ts.map +1 -1
  138. package/lib/plans.js +229 -209
  139. package/lib/plans.js.map +1 -1
  140. package/lib/protocol.d.ts +234 -143
  141. package/lib/protocol.d.ts.map +1 -1
  142. package/lib/protocol.js +339 -193
  143. package/lib/protocol.js.map +1 -1
  144. package/{src/util/without.ts → lib/protocol.spec.d.ts} +2 -3
  145. package/lib/protocol.spec.d.ts.map +1 -0
  146. package/lib/protocol.spec.js +127 -0
  147. package/lib/protocol.spec.js.map +1 -0
  148. package/lib/snapshot-url.d.ts +14 -0
  149. package/lib/snapshot-url.d.ts.map +1 -0
  150. package/lib/snapshot-url.js +26 -0
  151. package/lib/snapshot-url.js.map +1 -0
  152. package/{src/theia-plugins.ts → lib/snapshot-url.spec.d.ts} +2 -6
  153. package/lib/snapshot-url.spec.d.ts.map +1 -0
  154. package/lib/snapshot-url.spec.js +41 -0
  155. package/lib/snapshot-url.spec.js.map +1 -0
  156. package/lib/team-subscription-protocol.d.ts +22 -4
  157. package/lib/team-subscription-protocol.d.ts.map +1 -1
  158. package/lib/team-subscription-protocol.js +33 -18
  159. package/lib/team-subscription-protocol.js.map +1 -1
  160. package/lib/teams-projects-protocol.d.ts +130 -0
  161. package/lib/teams-projects-protocol.d.ts.map +1 -0
  162. package/lib/teams-projects-protocol.js +30 -0
  163. package/lib/teams-projects-protocol.js.map +1 -0
  164. package/lib/typings/globals.d.ts +2 -2
  165. package/lib/typings/globals.d.ts.map +1 -1
  166. package/lib/usage.d.ts +61 -0
  167. package/lib/usage.d.ts.map +1 -0
  168. package/lib/usage.js +14 -0
  169. package/lib/usage.js.map +1 -0
  170. package/lib/util/analytics.d.ts.map +1 -1
  171. package/lib/util/analytics.js +44 -26
  172. package/lib/util/analytics.js.map +1 -1
  173. package/lib/util/async-iterator.d.ts.map +1 -1
  174. package/lib/util/async-iterator.js +57 -135
  175. package/lib/util/async-iterator.js.map +1 -1
  176. package/lib/util/cancelable.js +17 -59
  177. package/lib/util/cancelable.js.map +1 -1
  178. package/lib/util/date-time.js +11 -11
  179. package/lib/util/date-time.js.map +1 -1
  180. package/lib/util/debug-app.d.ts +25 -0
  181. package/lib/util/debug-app.d.ts.map +1 -0
  182. package/lib/util/debug-app.js +100 -0
  183. package/lib/util/debug-app.js.map +1 -0
  184. package/lib/util/deferred.js +10 -12
  185. package/lib/util/deferred.js.map +1 -1
  186. package/lib/util/disposable.d.ts.map +1 -1
  187. package/lib/util/disposable.js +27 -40
  188. package/lib/util/disposable.js.map +1 -1
  189. package/lib/util/event.d.ts.map +1 -1
  190. package/lib/util/event.js +63 -77
  191. package/lib/util/event.js.map +1 -1
  192. package/lib/util/garbage-collected-cache.d.ts +1 -0
  193. package/lib/util/garbage-collected-cache.d.ts.map +1 -1
  194. package/lib/util/garbage-collected-cache.js +32 -47
  195. package/lib/util/garbage-collected-cache.js.map +1 -1
  196. package/lib/util/generate-workspace-id.d.ts +6 -1
  197. package/lib/util/generate-workspace-id.d.ts.map +1 -1
  198. package/lib/util/generate-workspace-id.js +469 -504
  199. package/lib/util/generate-workspace-id.js.map +1 -1
  200. package/lib/util/generate-workspace-id.spec.js +68 -78
  201. package/lib/util/generate-workspace-id.spec.js.map +1 -1
  202. package/lib/util/gitpod-cookie.d.ts +20 -0
  203. package/lib/util/gitpod-cookie.d.ts.map +1 -0
  204. package/lib/util/gitpod-cookie.js +41 -0
  205. package/lib/util/gitpod-cookie.js.map +1 -0
  206. package/lib/util/gitpod-host-url.d.ts +4 -1
  207. package/lib/util/gitpod-host-url.d.ts.map +1 -1
  208. package/lib/util/gitpod-host-url.js +124 -114
  209. package/lib/util/gitpod-host-url.js.map +1 -1
  210. package/lib/util/gitpod-host-url.spec.d.ts.map +1 -1
  211. package/lib/util/gitpod-host-url.spec.js +97 -135
  212. package/lib/util/gitpod-host-url.spec.js.map +1 -1
  213. package/lib/util/grpc.d.ts +34 -0
  214. package/lib/util/grpc.d.ts.map +1 -0
  215. package/lib/util/grpc.js +90 -0
  216. package/lib/util/grpc.js.map +1 -0
  217. package/lib/util/jaeger-client-types.d.ts +68 -0
  218. package/lib/util/jaeger-client-types.d.ts.map +1 -0
  219. package/lib/{theia-plugins.js → util/jaeger-client-types.js} +1 -1
  220. package/lib/util/jaeger-client-types.js.map +1 -0
  221. package/lib/util/logging.d.ts +49 -33
  222. package/lib/util/logging.d.ts.map +1 -1
  223. package/lib/util/logging.js +132 -129
  224. package/lib/util/logging.js.map +1 -1
  225. package/lib/util/logging.spec.d.ts +7 -0
  226. package/lib/util/logging.spec.d.ts.map +1 -0
  227. package/lib/util/logging.spec.js +52 -0
  228. package/lib/util/logging.spec.js.map +1 -0
  229. package/lib/util/make-link.js +5 -5
  230. package/lib/util/make-link.js.map +1 -1
  231. package/lib/util/nice-grpc.d.ts +9 -0
  232. package/lib/util/nice-grpc.d.ts.map +1 -0
  233. package/lib/util/nice-grpc.js +119 -0
  234. package/lib/util/nice-grpc.js.map +1 -0
  235. package/lib/util/parse-workspace-id.d.ts +10 -0
  236. package/lib/util/parse-workspace-id.d.ts.map +1 -1
  237. package/lib/util/parse-workspace-id.js +30 -7
  238. package/lib/util/parse-workspace-id.js.map +1 -1
  239. package/lib/util/parse-workspace-id.spec.d.ts +4 -0
  240. package/lib/util/parse-workspace-id.spec.d.ts.map +1 -1
  241. package/lib/util/parse-workspace-id.spec.js +123 -84
  242. package/lib/util/parse-workspace-id.spec.js.map +1 -1
  243. package/lib/util/queue.js +16 -55
  244. package/lib/util/queue.js.map +1 -1
  245. package/lib/util/queue.spec.js +147 -288
  246. package/lib/util/queue.spec.js.map +1 -1
  247. package/lib/util/repeat.d.ts +15 -0
  248. package/lib/util/repeat.d.ts.map +1 -0
  249. package/lib/util/repeat.js +55 -0
  250. package/lib/util/repeat.js.map +1 -0
  251. package/lib/util/semaphore.d.ts.map +1 -1
  252. package/lib/util/semaphore.js +15 -46
  253. package/lib/util/semaphore.js.map +1 -1
  254. package/lib/util/skip-if.d.ts.map +1 -1
  255. package/lib/util/skip-if.js +6 -6
  256. package/lib/util/skip-if.js.map +1 -1
  257. package/lib/util/timeutil.d.ts +2 -0
  258. package/lib/util/timeutil.d.ts.map +1 -1
  259. package/lib/util/timeutil.js +29 -17
  260. package/lib/util/timeutil.js.map +1 -1
  261. package/lib/util/timeutil.spec.d.ts +2 -0
  262. package/lib/util/timeutil.spec.d.ts.map +1 -1
  263. package/lib/util/timeutil.spec.js +54 -23
  264. package/lib/util/timeutil.spec.js.map +1 -1
  265. package/lib/util/tracing.d.ts +52 -6
  266. package/lib/util/tracing.d.ts.map +1 -1
  267. package/lib/util/tracing.js +197 -64
  268. package/lib/util/tracing.js.map +1 -1
  269. package/lib/util/tracing.spec.d.ts +7 -0
  270. package/lib/util/tracing.spec.d.ts.map +1 -0
  271. package/lib/util/tracing.spec.js +121 -0
  272. package/lib/util/tracing.spec.js.map +1 -0
  273. package/lib/util/workspace-port-authentication.d.ts +7 -7
  274. package/lib/util/workspace-port-authentication.d.ts.map +1 -1
  275. package/lib/util/workspace-port-authentication.js +9 -12
  276. package/lib/util/workspace-port-authentication.js.map +1 -1
  277. package/lib/webhook-event.d.ts +44 -0
  278. package/lib/webhook-event.d.ts.map +1 -0
  279. package/lib/webhook-event.js +8 -0
  280. package/lib/webhook-event.js.map +1 -0
  281. package/lib/workspace-class.d.ts +14 -0
  282. package/lib/workspace-class.d.ts.map +1 -0
  283. package/lib/workspace-class.js +8 -0
  284. package/lib/workspace-class.js.map +1 -0
  285. package/lib/workspace-cluster.d.ts +15 -5
  286. package/lib/workspace-cluster.d.ts.map +1 -1
  287. package/lib/workspace-cluster.js +19 -4
  288. package/lib/workspace-cluster.js.map +1 -1
  289. package/lib/workspace-instance.d.ts +44 -5
  290. package/lib/workspace-instance.d.ts.map +1 -1
  291. package/lib/wsready.d.ts +1 -1
  292. package/lib/wsready.d.ts.map +1 -1
  293. package/lib/wsready.js +2 -2
  294. package/package.json +34 -15
  295. package/pkg-yarn.lock +21 -9
  296. package/provenance-bundle.jsonl +2 -0
  297. package/src/accounting-protocol.ts +66 -54
  298. package/src/admin-protocol.ts +53 -21
  299. package/src/analytics.ts +28 -16
  300. package/src/attribution.ts +59 -0
  301. package/src/auth.ts +2 -2
  302. package/src/billing-mode.ts +81 -0
  303. package/src/blocked-repositories-protocol.ts +13 -0
  304. package/src/context-url.spec.ts +37 -9
  305. package/src/context-url.ts +94 -36
  306. package/src/encryption/container-module.ts +2 -3
  307. package/src/encryption/encryption-engine.spec.ts +9 -8
  308. package/src/encryption/encryption-engine.ts +20 -16
  309. package/src/encryption/encryption-service.ts +4 -5
  310. package/src/encryption/key-provider.ts +16 -19
  311. package/src/env.ts +0 -22
  312. package/src/experiments/always-default.ts +24 -0
  313. package/src/experiments/configcat-server.ts +41 -0
  314. package/src/experiments/configcat.ts +56 -0
  315. package/src/experiments/types.ts +34 -0
  316. package/src/gitpod-file-parser.spec.ts +55 -61
  317. package/src/gitpod-file-parser.ts +16 -17
  318. package/src/gitpod-service.ts +286 -143
  319. package/src/headless-workspace-log.ts +8 -19
  320. package/src/ide-frontend-service.ts +2 -2
  321. package/src/ide-protocol.ts +129 -0
  322. package/src/index.ts +16 -12
  323. package/src/installation-admin-protocol.ts +45 -0
  324. package/src/license-protocol.ts +12 -6
  325. package/src/messaging/browser/connection.ts +185 -21
  326. package/src/messaging/browser/window-connection.ts +39 -29
  327. package/src/messaging/client-call-metrics.ts +77 -0
  328. package/src/messaging/error.ts +29 -7
  329. package/src/messaging/handler.ts +13 -1
  330. package/src/messaging/node/connection.ts +23 -70
  331. package/src/messaging/proxy-factory.ts +35 -34
  332. package/src/oss-allowlist.ts +15 -0
  333. package/src/payment-protocol.ts +2 -2
  334. package/src/permission.ts +40 -33
  335. package/src/plans.ts +240 -189
  336. package/src/protocol.spec.ts +97 -0
  337. package/src/protocol.ts +612 -340
  338. package/src/snapshot-url.spec.ts +27 -0
  339. package/src/snapshot-url.ts +27 -0
  340. package/src/team-subscription-protocol.ts +59 -23
  341. package/src/teams-projects-protocol.ts +166 -0
  342. package/src/typings/globals.ts +4 -4
  343. package/src/usage.ts +71 -0
  344. package/src/util/analytics.ts +56 -18
  345. package/src/util/async-iterator.ts +4 -5
  346. package/src/util/cancelable.ts +3 -3
  347. package/src/util/date-time.ts +8 -8
  348. package/src/util/debug-app.ts +81 -0
  349. package/src/util/deferred.ts +6 -6
  350. package/src/util/disposable.ts +3 -6
  351. package/src/util/event.ts +9 -11
  352. package/src/util/garbage-collected-cache.ts +14 -6
  353. package/src/util/generate-workspace-id.spec.ts +34 -7
  354. package/src/util/generate-workspace-id.ts +464 -440
  355. package/src/util/gitpod-cookie.ts +38 -0
  356. package/src/util/gitpod-host-url.spec.ts +40 -13
  357. package/src/util/gitpod-host-url.ts +61 -37
  358. package/src/util/grpc.ts +104 -0
  359. package/src/util/jaeger-client-types.ts +102 -0
  360. package/src/util/logging.spec.ts +23 -0
  361. package/src/util/logging.ts +156 -74
  362. package/src/util/make-link.ts +6 -7
  363. package/src/util/nice-grpc.ts +93 -0
  364. package/src/util/parse-workspace-id.spec.ts +37 -8
  365. package/src/util/parse-workspace-id.ts +32 -7
  366. package/src/util/queue.spec.ts +27 -25
  367. package/src/util/repeat.ts +45 -0
  368. package/src/util/semaphore.ts +4 -6
  369. package/src/util/skip-if.ts +9 -6
  370. package/src/util/timeutil.spec.ts +40 -14
  371. package/src/util/timeutil.ts +27 -11
  372. package/src/util/tracing.spec.ts +88 -0
  373. package/src/util/tracing.ts +200 -31
  374. package/src/util/workspace-port-authentication.ts +10 -13
  375. package/src/webhook-event.ts +55 -0
  376. package/src/workspace-class.ts +14 -0
  377. package/src/workspace-cluster.ts +29 -10
  378. package/src/workspace-instance.ts +89 -24
  379. package/src/wsready.ts +3 -3
  380. package/data/builtin-theia-plugins.json +0 -372
  381. package/lib/email-protocol.d.ts +0 -50
  382. package/lib/email-protocol.d.ts.map +0 -1
  383. package/lib/email-protocol.js +0 -28
  384. package/lib/email-protocol.js.map +0 -1
  385. package/lib/messaging/connection-error-handler.d.ts +0 -27
  386. package/lib/messaging/connection-error-handler.d.ts.map +0 -1
  387. package/lib/messaging/connection-error-handler.js +0 -46
  388. package/lib/messaging/connection-error-handler.js.map +0 -1
  389. package/lib/theia-plugins.d.ts +0 -11
  390. package/lib/theia-plugins.d.ts.map +0 -1
  391. package/lib/theia-plugins.js.map +0 -1
  392. package/lib/util/repeater.d.ts +0 -22
  393. package/lib/util/repeater.d.ts.map +0 -1
  394. package/lib/util/repeater.js +0 -118
  395. package/lib/util/repeater.js.map +0 -1
  396. package/lib/util/safe-promise.d.ts +0 -11
  397. package/lib/util/safe-promise.d.ts.map +0 -1
  398. package/lib/util/safe-promise.js +0 -34
  399. package/lib/util/safe-promise.js.map +0 -1
  400. package/lib/util/without.d.ts +0 -7
  401. package/lib/util/without.d.ts.map +0 -1
  402. package/lib/util/without.js.map +0 -1
  403. package/src/email-protocol.ts +0 -67
  404. package/src/messaging/connection-error-handler.ts +0 -62
  405. package/src/util/jaeger-client.d.ts +0 -105
  406. package/src/util/repeater.ts +0 -49
  407. package/src/util/safe-promise.ts +0 -26
package/lib/protocol.d.ts CHANGED
@@ -5,6 +5,8 @@
5
5
  */
6
6
  import { WorkspaceInstance, PortVisibility } from "./workspace-instance";
7
7
  import { RoleOrPermission } from "./permission";
8
+ import { Project } from "./teams-projects-protocol";
9
+ import { AttributionId } from "./attribution";
8
10
  export interface UserInfo {
9
11
  name?: string;
10
12
  }
@@ -18,7 +20,6 @@ export interface User {
18
20
  /** Optional for backwards compatibility */
19
21
  fullName?: string;
20
22
  identities: Identity[];
21
- allowsMarketingCommunication: boolean;
22
23
  /**
23
24
  * Whether the user has been blocked to use our service, because of TOS violation for example.
24
25
  * Optional for backwards compatibility.
@@ -31,13 +32,35 @@ export interface User {
31
32
  /** Whether the user is logical deleted. This flag is respected by all queries in UserDB */
32
33
  markedDeleted?: boolean;
33
34
  additionalData?: AdditionalUserData;
35
+ usageAttributionId?: string;
36
+ lastVerificationTime?: string;
37
+ verificationPhoneNumber?: string;
34
38
  }
35
39
  export declare namespace User {
36
40
  function is(data: any): data is User;
37
41
  function getIdentity(user: User, authProviderId: string): Identity | undefined;
38
42
  function censor(user: User): User;
39
- function getPrimaryEmail(user: User): string;
43
+ /**
44
+ * Returns the stored email or if it doesn't exist returns the primaryEmail of the first identity this user signed up with.
45
+ * @param user
46
+ * @returns A primaryEmail, or undefined if there is none.
47
+ */
48
+ function getPrimaryEmail(user: User): string | undefined;
40
49
  function getName(user: User): string | undefined;
50
+ function hasPreferredIde(user: User): boolean;
51
+ function isOnboardingUser(user: User): boolean;
52
+ function migrationIDESettings(user: User): void;
53
+ function getProfile(user: User): Profile;
54
+ function setProfile(user: User, profile: Profile): User;
55
+ interface Profile {
56
+ name: string;
57
+ email: string;
58
+ company?: string;
59
+ avatarURL?: string;
60
+ }
61
+ namespace Profile {
62
+ function hasChanges(before: Profile, after: Profile): boolean;
63
+ }
41
64
  }
42
65
  export interface AdditionalUserData {
43
66
  platforms?: UserPlatform[];
@@ -51,13 +74,34 @@ export interface AdditionalUserData {
51
74
  [key: string]: string;
52
75
  };
53
76
  knownGitHubOrgs?: string[];
77
+ dotfileRepo?: string;
78
+ workspaceClasses?: WorkspaceClasses;
79
+ profile?: ProfileDetails;
80
+ }
81
+ export declare namespace AdditionalUserData {
82
+ function set(user: User, partialData: Partial<AdditionalUserData>): User;
83
+ }
84
+ export interface ProfileDetails {
85
+ lastUpdatedDetailsNudge?: string;
86
+ companyName?: string;
87
+ emailAddress?: string;
54
88
  }
55
89
  export interface EmailNotificationSettings {
56
- disallowTransactionalEmails?: boolean;
90
+ allowsChangelogMail?: boolean;
91
+ allowsDevXMail?: boolean;
92
+ allowsOnboardingMail?: boolean;
57
93
  }
58
94
  export declare type IDESettings = {
95
+ settingVersion?: string;
59
96
  defaultIde?: string;
97
+ useDesktopIde?: boolean;
98
+ defaultDesktopIde?: string;
99
+ useLatestVersion?: boolean;
60
100
  };
101
+ export interface WorkspaceClasses {
102
+ regular: string;
103
+ prebuild: string;
104
+ }
61
105
  export interface UserPlatform {
62
106
  uid: string;
63
107
  userAgent: string;
@@ -75,45 +119,82 @@ export interface UserPlatform {
75
119
  browserExtensionUninstalledSince?: string;
76
120
  }
77
121
  export interface UserFeatureSettings {
78
- /**
79
- * This field is used as marker to grant users a free trial for using private repositories,
80
- * independent of any subscription or Chargebee.
81
- * - it is set when the user uses their first private repo
82
- * - whether the trial is expired or not is juged by the UserService
83
- */
84
- privateRepoTrialStartDate?: string;
85
122
  /**
86
123
  * Permanent feature flags are added to each and every workspace instance
87
124
  * this user starts.
88
125
  */
89
126
  permanentWSFeatureFlags?: NamedWorkspaceFeatureFlag[];
90
127
  }
128
+ export declare type BillingTier = "paid" | "free";
91
129
  /**
92
130
  * The values of this type MUST MATCH enum values in WorkspaceFeatureFlag from ws-manager/client/core_pb.d.ts
93
131
  * If they don't we'll break things during workspace startup.
94
132
  */
95
133
  export declare const WorkspaceFeatureFlags: {
96
134
  full_workspace_backup: undefined;
97
- fixed_resources: undefined;
135
+ persistent_volume_claim: undefined;
136
+ workspace_class_limiting: undefined;
137
+ workspace_connection_limiting: undefined;
138
+ workspace_psi: undefined;
98
139
  };
99
- export declare type NamedWorkspaceFeatureFlag = keyof (typeof WorkspaceFeatureFlags);
100
- export interface UserEnvVarValue {
101
- id?: string;
140
+ export declare type NamedWorkspaceFeatureFlag = keyof typeof WorkspaceFeatureFlags;
141
+ export declare namespace NamedWorkspaceFeatureFlag {
142
+ const WORKSPACE_PERSISTED_FEATTURE_FLAGS: NamedWorkspaceFeatureFlag[];
143
+ function isWorkspacePersisted(ff: NamedWorkspaceFeatureFlag): boolean;
144
+ }
145
+ export interface EnvVarWithValue {
102
146
  name: string;
103
- repositoryPattern: string;
104
147
  value: string;
105
148
  }
149
+ export interface ProjectEnvVarWithValue extends EnvVarWithValue {
150
+ id: string;
151
+ projectId: string;
152
+ censored: boolean;
153
+ }
154
+ export declare type ProjectEnvVar = Omit<ProjectEnvVarWithValue, "value">;
155
+ export interface UserEnvVarValue extends EnvVarWithValue {
156
+ id?: string;
157
+ repositoryPattern: string;
158
+ }
106
159
  export interface UserEnvVar extends UserEnvVarValue {
107
160
  id: string;
108
161
  userId: string;
109
162
  deleted?: boolean;
110
163
  }
111
164
  export declare namespace UserEnvVar {
165
+ /**
166
+ * @param variable
167
+ * @returns Either a string containing an error message or undefined.
168
+ */
169
+ function validate(variable: UserEnvVarValue): string | undefined;
112
170
  function normalizeRepoPattern(pattern: string): string;
113
171
  function score(value: UserEnvVarValue): number;
114
172
  function filter<T extends UserEnvVarValue>(vars: T[], owner: string, repo: string): T[];
115
173
  function splitRepositoryPattern(repositoryPattern: string): string[];
116
174
  }
175
+ export interface SSHPublicKeyValue {
176
+ name: string;
177
+ key: string;
178
+ }
179
+ export interface UserSSHPublicKey extends SSHPublicKeyValue {
180
+ id: string;
181
+ key: string;
182
+ userId: string;
183
+ fingerprint: string;
184
+ creationTime: string;
185
+ lastUsedTime?: string;
186
+ }
187
+ export declare type UserSSHPublicKeyValue = Omit<UserSSHPublicKey, "key" | "userId">;
188
+ export declare namespace SSHPublicKeyValue {
189
+ function validate(value: SSHPublicKeyValue): string | undefined;
190
+ function getData(value: SSHPublicKeyValue): {
191
+ type: string;
192
+ key: string;
193
+ email: string | undefined;
194
+ };
195
+ function getFingerprint(value: SSHPublicKeyValue): string;
196
+ const MAXIMUM_KEY_LENGTH = 5;
197
+ }
117
198
  export interface GitpodToken {
118
199
  /** Hash value (SHA256) of the token (primary key). */
119
200
  tokenHash: string;
@@ -205,25 +286,31 @@ export interface PendingGithubEvent {
205
286
  creationDate: Date;
206
287
  type: string;
207
288
  event: string;
289
+ deleted: boolean;
208
290
  }
209
291
  export interface Snapshot {
210
292
  id: string;
211
293
  creationTime: string;
294
+ availableTime?: string;
212
295
  originalWorkspaceId: string;
213
296
  bucketId: string;
214
- layoutData?: string;
297
+ state: SnapshotState;
298
+ message?: string;
215
299
  }
216
- export interface LayoutData {
300
+ export interface VolumeSnapshot {
301
+ id: string;
217
302
  workspaceId: string;
218
- lastUpdatedTime: string;
219
- layoutData: string;
303
+ creationTime: string;
304
+ volumeHandle: string;
220
305
  }
306
+ export declare type SnapshotState = "pending" | "available" | "error";
221
307
  export interface Workspace {
222
308
  id: string;
223
309
  creationTime: string;
224
310
  contextURL: string;
225
311
  description: string;
226
312
  ownerId: string;
313
+ projectId?: string;
227
314
  context: WorkspaceContext;
228
315
  config: WorkspaceConfig;
229
316
  /**
@@ -264,7 +351,7 @@ export interface Workspace {
264
351
  basedOnSnapshotId?: string;
265
352
  }
266
353
  export declare type WorkspaceSoftDeletion = "user" | "gc";
267
- export declare type WorkspaceType = "regular" | "prebuild" | "probe";
354
+ export declare type WorkspaceType = "regular" | "prebuild";
268
355
  export declare namespace Workspace {
269
356
  function getFullRepositoryName(ws: Workspace): string | undefined;
270
357
  function getFullRepositoryUrl(ws: Workspace): string | undefined;
@@ -273,20 +360,6 @@ export declare namespace Workspace {
273
360
  function getBranchName(ws: Workspace): string | undefined;
274
361
  function getCommit(ws: Workspace): string | undefined;
275
362
  }
276
- export interface PreparePluginUploadParams {
277
- fullPluginName: string;
278
- }
279
- export interface ResolvePluginsParams {
280
- config?: WorkspaceConfig;
281
- builtins?: ResolvedPlugins;
282
- vsxRegistryUrl?: string;
283
- }
284
- export interface InstallPluginsParams {
285
- pluginIds: string[];
286
- }
287
- export interface UninstallPluginParams {
288
- pluginId: string;
289
- }
290
363
  export interface GuessGitTokenScopesParams {
291
364
  host: string;
292
365
  repoUrl: string;
@@ -302,19 +375,36 @@ export interface GuessedGitTokenScopes {
302
375
  message?: string;
303
376
  scopes?: string[];
304
377
  }
305
- export declare type ResolvedPluginKind = 'user' | 'workspace' | 'builtin';
306
- export interface ResolvedPlugins {
307
- [pluginId: string]: ResolvedPlugin | undefined;
378
+ export interface VSCodeConfig {
379
+ extensions?: string[];
380
+ }
381
+ export interface JetBrainsConfig {
382
+ intellij?: JetBrainsProductConfig;
383
+ goland?: JetBrainsProductConfig;
384
+ pycharm?: JetBrainsProductConfig;
385
+ phpstorm?: JetBrainsProductConfig;
386
+ rubymine?: JetBrainsProductConfig;
387
+ webstorm?: JetBrainsProductConfig;
388
+ }
389
+ export interface JetBrainsProductConfig {
390
+ prebuilds?: JetBrainsPrebuilds;
391
+ vmoptions?: string;
392
+ }
393
+ export interface JetBrainsPrebuilds {
394
+ version?: "stable" | "latest" | "both";
308
395
  }
309
- export interface ResolvedPlugin {
310
- fullPluginName: string;
396
+ export interface RepositoryCloneInformation {
311
397
  url: string;
312
- kind: ResolvedPluginKind;
398
+ checkoutLocation?: string;
313
399
  }
314
- export interface VSCodeConfig {
315
- extensions?: string[];
400
+ export interface CoreDumpConfig {
401
+ enabled?: boolean;
402
+ softLimit?: number;
403
+ hardLimit?: number;
316
404
  }
317
405
  export interface WorkspaceConfig {
406
+ mainConfiguration?: string;
407
+ additionalRepositories?: RepositoryCloneInformation[];
318
408
  image?: ImageConfig;
319
409
  ports?: PortConfig[];
320
410
  tasks?: TaskConfig[];
@@ -325,6 +415,10 @@ export interface WorkspaceConfig {
325
415
  };
326
416
  github?: GithubAppConfig;
327
417
  vscode?: VSCodeConfig;
418
+ jetbrains?: JetBrainsConfig;
419
+ coreDump?: CoreDumpConfig;
420
+ /** deprecated. Enabled by default **/
421
+ experimentalNetwork?: boolean;
328
422
  /**
329
423
  * Where the config object originates from.
330
424
  *
@@ -334,7 +428,7 @@ export interface WorkspaceConfig {
334
428
  * additional-content - config comes from additional content, usually provided through the project's configuration
335
429
  * default - our static catch-all default config
336
430
  */
337
- _origin?: 'repo' | 'definitely-gp' | 'derived' | 'additional-content' | 'default';
431
+ _origin?: "repo" | "definitely-gp" | "derived" | "additional-content" | "default";
338
432
  /**
339
433
  * Set of automatically infered feature flags. That's not something the user can set, but
340
434
  * that is set by gitpod at workspace creation time.
@@ -349,7 +443,7 @@ export interface GithubAppPrebuildConfig {
349
443
  branches?: boolean;
350
444
  pullRequests?: boolean;
351
445
  pullRequestsFromForks?: boolean;
352
- addCheck?: boolean;
446
+ addCheck?: boolean | "prevent-merge-on-error";
353
447
  addBadge?: boolean;
354
448
  addLabel?: boolean | string;
355
449
  addComment?: boolean;
@@ -373,7 +467,7 @@ export interface WorkspaceImageSourceReference {
373
467
  export declare namespace WorkspaceImageSourceReference {
374
468
  function is(obj: object): obj is WorkspaceImageSourceReference;
375
469
  }
376
- export declare type PrebuiltWorkspaceState = "queued" | "building" | "aborted" | "timeout" | "available";
470
+ export declare type PrebuiltWorkspaceState = "queued" | "building" | "aborted" | "timeout" | "available" | "failed";
377
471
  export interface PrebuiltWorkspace {
378
472
  id: string;
379
473
  cloneURL: string;
@@ -383,6 +477,7 @@ export interface PrebuiltWorkspace {
383
477
  buildWorkspaceId: string;
384
478
  creationTime: string;
385
479
  state: PrebuiltWorkspaceState;
480
+ statusVersion: number;
386
481
  error?: string;
387
482
  snapshot?: string;
388
483
  }
@@ -398,6 +493,10 @@ export interface PrebuiltWorkspaceUpdatable {
398
493
  repo: string;
399
494
  isResolved: boolean;
400
495
  installationId: string;
496
+ /**
497
+ * the commitSHA of the commit that triggered the prebuild
498
+ */
499
+ commitSHA?: string;
401
500
  issue?: string;
402
501
  contextUrl?: string;
403
502
  }
@@ -407,11 +506,13 @@ export interface WhitelistedRepository {
407
506
  description?: string;
408
507
  avatar?: string;
409
508
  }
410
- export declare type PortOnOpen = 'open-browser' | 'open-preview' | 'notify' | 'ignore';
509
+ export declare type PortOnOpen = "open-browser" | "open-preview" | "notify" | "ignore";
411
510
  export interface PortConfig {
412
511
  port: number;
413
512
  onOpen?: PortOnOpen;
414
513
  visibility?: PortVisibility;
514
+ description?: string;
515
+ name?: string;
415
516
  }
416
517
  export declare namespace PortConfig {
417
518
  function is(config: any): config is PortConfig;
@@ -430,16 +531,16 @@ export interface TaskConfig {
430
531
  prebuild?: string;
431
532
  command?: string;
432
533
  env?: {
433
- [env: string]: string;
534
+ [env: string]: any;
434
535
  };
435
- openIn?: 'bottom' | 'main' | 'left' | 'right';
436
- openMode?: 'split-top' | 'split-left' | 'split-right' | 'split-bottom' | 'tab-before' | 'tab-after';
536
+ openIn?: "bottom" | "main" | "left" | "right";
537
+ openMode?: "split-top" | "split-left" | "split-right" | "split-bottom" | "tab-before" | "tab-after";
437
538
  }
438
539
  export declare namespace TaskConfig {
439
540
  function is(config: any): config is TaskConfig;
440
541
  }
441
542
  export declare namespace WorkspaceImageBuild {
442
- type Phase = 'BaseImage' | 'GitpodLayer' | 'Error' | 'Done';
543
+ type Phase = "BaseImage" | "GitpodLayer" | "Error" | "Done";
443
544
  interface StateInfo {
444
545
  phase: Phase;
445
546
  currentStep?: number;
@@ -476,6 +577,8 @@ export declare namespace ExternalImageConfigFile {
476
577
  }
477
578
  export interface WorkspaceContext {
478
579
  title: string;
580
+ ref?: string;
581
+ /** This contains the URL portion of the contextURL (which might contain other modifiers as well). It's optional because it's not set for older workspaces. */
479
582
  normalizedContextURL?: string;
480
583
  forceCreateNewWorkspace?: boolean;
481
584
  forceImageBuild?: boolean;
@@ -489,14 +592,24 @@ export interface WithSnapshot {
489
592
  export declare namespace WithSnapshot {
490
593
  function is(context: any): context is WithSnapshot;
491
594
  }
492
- export interface WithPrebuild {
493
- snapshotBucketId: string;
595
+ export interface WithPrebuild extends WithSnapshot {
494
596
  prebuildWorkspaceId: string;
495
597
  wasPrebuilt: true;
496
598
  }
497
599
  export declare namespace WithPrebuild {
498
600
  function is(context: any): context is WithPrebuild;
499
601
  }
602
+ /**
603
+ * WithDefaultConfig contexts disable the download of the gitpod.yml from the repository
604
+ * and fall back to the built-in configuration.
605
+ */
606
+ export interface WithDefaultConfig {
607
+ withDefaultConfig: true;
608
+ }
609
+ export declare namespace WithDefaultConfig {
610
+ function is(context: any): context is WithDefaultConfig;
611
+ function mark(ctx: WorkspaceContext): WorkspaceContext & WithDefaultConfig;
612
+ }
500
613
  export interface SnapshotContext extends WorkspaceContext, WithSnapshot {
501
614
  snapshotId: string;
502
615
  }
@@ -506,6 +619,10 @@ export declare namespace SnapshotContext {
506
619
  export interface StartPrebuildContext extends WorkspaceContext {
507
620
  actual: WorkspaceContext;
508
621
  commitHistory?: string[];
622
+ additionalRepositoryCommitHistories?: {
623
+ cloneUrl: string;
624
+ commitHistory: string[];
625
+ }[];
509
626
  project?: Project;
510
627
  branch?: string;
511
628
  }
@@ -520,19 +637,19 @@ export interface PrebuiltWorkspaceContext extends WorkspaceContext {
520
637
  export declare namespace PrebuiltWorkspaceContext {
521
638
  function is(context: any): context is PrebuiltWorkspaceContext;
522
639
  }
640
+ export interface WithReferrerContext extends WorkspaceContext {
641
+ referrer: string;
642
+ referrerIde?: string;
643
+ }
644
+ export declare namespace WithReferrerContext {
645
+ function is(context: any): context is WithReferrerContext;
646
+ }
523
647
  export interface WithEnvvarsContext extends WorkspaceContext {
524
- envvars: UserEnvVarValue[];
648
+ envvars: EnvVarWithValue[];
525
649
  }
526
650
  export declare namespace WithEnvvarsContext {
527
651
  function is(context: any): context is WithEnvvarsContext;
528
652
  }
529
- export interface WorkspaceProbeContext extends WorkspaceContext {
530
- responseURL: string;
531
- responseToken: string;
532
- }
533
- export declare namespace WorkspaceProbeContext {
534
- function is(context: any): context is WorkspaceProbeContext;
535
- }
536
653
  export declare type RefType = "branch" | "tag" | "revision";
537
654
  export declare namespace RefType {
538
655
  const getRefType: (commit: Commit) => RefType;
@@ -543,7 +660,7 @@ export interface Commit {
543
660
  ref?: string;
544
661
  refType?: RefType;
545
662
  }
546
- export interface AdditionalContentContext {
663
+ export interface AdditionalContentContext extends WorkspaceContext {
547
664
  /**
548
665
  * utf-8 encoded contents that will be copied on top of the workspace's filesystem
549
666
  */
@@ -555,9 +672,33 @@ export declare namespace AdditionalContentContext {
555
672
  function is(ctx: any): ctx is AdditionalContentContext;
556
673
  function hasDockerConfig(ctx: any, config: WorkspaceConfig): boolean;
557
674
  }
558
- export interface CommitContext extends WorkspaceContext, Commit {
675
+ export interface OpenPrebuildContext extends WorkspaceContext {
676
+ openPrebuildID: string;
677
+ }
678
+ export declare namespace OpenPrebuildContext {
679
+ function is(ctx: any): ctx is OpenPrebuildContext;
680
+ }
681
+ export interface CommitContext extends WorkspaceContext, GitCheckoutInfo {
559
682
  /** @deprecated Moved to .repository.cloneUrl, left here for backwards-compatibility for old workspace contextes in the DB */
560
683
  cloneUrl?: string;
684
+ /**
685
+ * The clone and checkout information for additional repositories in case of multi-repo projects.
686
+ */
687
+ additionalRepositoryCheckoutInfo?: GitCheckoutInfo[];
688
+ }
689
+ export declare namespace CommitContext {
690
+ /**
691
+ * Creates a hash for all the commits of the CommitContext and all sub-repo commit infos.
692
+ * The hash is max 255 chars long.
693
+ * @param commitContext
694
+ * @returns hash for commitcontext
695
+ */
696
+ function computeHash(commitContext: CommitContext): string;
697
+ }
698
+ export interface GitCheckoutInfo extends Commit {
699
+ checkoutLocation?: string;
700
+ upstreamRemoteURI?: string;
701
+ localBranch?: string;
561
702
  }
562
703
  export declare namespace CommitContext {
563
704
  function is(commit: any): commit is CommitContext;
@@ -593,6 +734,7 @@ export interface Repository {
593
734
  owner: string;
594
735
  name: string;
595
736
  cloneUrl: string;
737
+ repoKind?: string;
596
738
  description?: string;
597
739
  avatarUrl?: string;
598
740
  webUrl?: string;
@@ -603,6 +745,18 @@ export interface Repository {
603
745
  parent: Repository;
604
746
  };
605
747
  }
748
+ export interface Branch {
749
+ name: string;
750
+ commit: CommitInfo;
751
+ htmlUrl: string;
752
+ }
753
+ export interface CommitInfo {
754
+ author: string;
755
+ sha: string;
756
+ commitMessage: string;
757
+ authorAvatarUrl?: string;
758
+ authorDate?: string;
759
+ }
606
760
  export declare namespace Repository {
607
761
  function fullRepoName(repo: Repository): string;
608
762
  }
@@ -638,7 +792,7 @@ export interface WorkspaceCreationResult {
638
792
  };
639
793
  runningPrebuildWorkspaceID?: string;
640
794
  }
641
- export declare type RunningWorkspacePrebuildStarting = 'queued' | 'starting' | 'running';
795
+ export declare type RunningWorkspacePrebuildStarting = "queued" | "starting" | "running";
642
796
  export declare enum CreateWorkspaceMode {
643
797
  Default = "default",
644
798
  ForceNew = "force-new",
@@ -685,6 +839,8 @@ export interface AuthProviderEntry {
685
839
  readonly ownerId: string;
686
840
  readonly status: AuthProviderEntry.Status;
687
841
  readonly oauth: OAuth2Config;
842
+ /** A random string that is to change whenever oauth changes (enforced on DB level) */
843
+ readonly oauthRevision?: string;
688
844
  }
689
845
  export interface OAuth2Config {
690
846
  readonly clientId: string;
@@ -710,38 +866,6 @@ export declare namespace AuthProviderEntry {
710
866
  type UpdateEntry = Pick<AuthProviderEntry, "id" | "ownerId"> & Pick<OAuth2Config, "clientId" | "clientSecret">;
711
867
  function redact(entry: AuthProviderEntry): AuthProviderEntry;
712
868
  }
713
- export interface Branding {
714
- readonly name: string;
715
- readonly favicon?: string;
716
- /** Either including domain OR absolute path (interpreted relative to host URL) */
717
- readonly logo: string;
718
- readonly startupLogo: string;
719
- readonly showProductivityTips: boolean;
720
- readonly redirectUrlIfNotAuthenticated?: string;
721
- readonly redirectUrlAfterLogout?: string;
722
- readonly homepage: string;
723
- readonly ide?: {
724
- readonly logo: string;
725
- readonly showReleaseNotes: boolean;
726
- readonly helpMenu: Branding.Link[];
727
- };
728
- readonly links: {
729
- readonly header: Branding.Link[];
730
- readonly footer: Branding.Link[];
731
- readonly social: Branding.SocialLink[];
732
- readonly legal: Branding.Link[];
733
- };
734
- }
735
- export declare namespace Branding {
736
- interface Link {
737
- readonly name: string;
738
- readonly url: string;
739
- }
740
- interface SocialLink {
741
- readonly type: string;
742
- readonly url: string;
743
- }
744
- }
745
869
  export interface Configuration {
746
870
  readonly daysBeforeGarbageCollection: number;
747
871
  readonly garbageCollectionStartDate: number;
@@ -779,54 +903,21 @@ export interface Terms {
779
903
  readonly content: string;
780
904
  readonly formElements?: object;
781
905
  }
782
- export interface Project {
783
- id: string;
784
- name: string;
785
- cloneUrl: string;
786
- teamId: string;
787
- appInstallationId: string;
788
- creationTime: string;
789
- /** This is a flag that triggers the HARD DELETION of this entity */
790
- deleted?: boolean;
791
- }
792
- export interface ProjectInfo extends Project {
793
- lastPrebuild?: PrebuildInfo;
794
- }
795
- export interface PrebuildInfo {
796
- id: string;
797
- teamId: string;
798
- project: string;
799
- cloneUrl: string;
800
- branch: string;
801
- startedAt: string;
802
- startedBy: string;
803
- status: PrebuiltWorkspaceState;
804
- }
805
- export interface Team {
806
- id: string;
807
- name: string;
808
- slug: string;
809
- creationTime: string;
810
- /** This is a flag that triggers the HARD DELETION of this entity */
811
- deleted?: boolean;
812
- }
813
- export declare type TeamMemberRole = "owner" | "member";
814
- export interface TeamMemberInfo {
815
- userId: string;
816
- fullName?: string;
817
- primaryEmail?: string;
818
- avatarUrl?: string;
819
- role: TeamMemberRole;
820
- memberSince: string;
906
+ export interface StripeConfig {
907
+ individualUsagePriceIds: {
908
+ [currency: string]: string;
909
+ };
910
+ teamUsagePriceIds: {
911
+ [currency: string]: string;
912
+ };
821
913
  }
822
- export interface TeamMembershipInvite {
823
- id: string;
824
- teamId: string;
825
- role: TeamMemberRole;
826
- creationTime: string;
827
- invalidationTime: string;
828
- invitedEmail?: string;
829
- /** This is a flag that triggers the HARD DELETION of this entity */
830
- deleted?: boolean;
914
+ export declare type BillingStrategy = "other" | "stripe";
915
+ export interface CostCenter {
916
+ readonly id: AttributionId;
917
+ /**
918
+ * Unit: credits
919
+ */
920
+ spendingLimit: number;
921
+ billingStrategy: BillingStrategy;
831
922
  }
832
923
  //# sourceMappingURL=protocol.d.ts.map