@bufbuild/protobuf 1.9.0 → 2.0.0-alpha.2

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 (429) hide show
  1. package/dist/cjs/clone.d.ts +6 -0
  2. package/dist/cjs/clone.js +77 -0
  3. package/dist/cjs/codegenv1/boot.d.ts +63 -0
  4. package/dist/cjs/codegenv1/boot.js +102 -0
  5. package/dist/cjs/codegenv1/embed.d.ts +43 -0
  6. package/dist/cjs/codegenv1/embed.js +238 -0
  7. package/dist/cjs/codegenv1/enum.d.ts +17 -0
  8. package/dist/cjs/codegenv1/enum.js +41 -0
  9. package/dist/cjs/codegenv1/extension.d.ts +9 -0
  10. package/dist/cjs/codegenv1/extension.js +29 -0
  11. package/dist/cjs/codegenv1/file.d.ts +7 -0
  12. package/dist/cjs/codegenv1/file.js +38 -0
  13. package/dist/cjs/codegenv1/index.d.ts +9 -0
  14. package/dist/cjs/codegenv1/index.js +38 -0
  15. package/dist/cjs/codegenv1/message.d.ts +9 -0
  16. package/dist/cjs/codegenv1/message.js +25 -0
  17. package/dist/cjs/codegenv1/restore-json-names.d.ts +5 -0
  18. package/dist/cjs/codegenv1/restore-json-names.js +30 -0
  19. package/dist/cjs/codegenv1/service.d.ts +8 -0
  20. package/dist/cjs/codegenv1/service.js +28 -0
  21. package/dist/cjs/codegenv1/symbols.d.ts +125 -0
  22. package/dist/cjs/codegenv1/symbols.js +67 -0
  23. package/dist/cjs/codegenv1/types.d.ts +72 -0
  24. package/dist/cjs/codegenv1/types.js +21 -0
  25. package/dist/cjs/create.d.ts +9 -0
  26. package/dist/cjs/create.js +231 -0
  27. package/dist/{esm/descriptor-set.d.ts → cjs/desc-types.d.ts} +162 -243
  28. package/dist/cjs/equals.d.ts +9 -0
  29. package/dist/cjs/equals.js +133 -0
  30. package/dist/cjs/extensions.d.ts +59 -0
  31. package/dist/cjs/extensions.js +169 -0
  32. package/dist/cjs/fields.d.ts +23 -0
  33. package/dist/cjs/fields.js +46 -0
  34. package/dist/cjs/from-binary.d.ts +34 -0
  35. package/dist/cjs/from-binary.js +211 -0
  36. package/dist/cjs/from-json.d.ts +48 -0
  37. package/dist/cjs/from-json.js +610 -0
  38. package/dist/cjs/index.d.ts +16 -42
  39. package/dist/cjs/index.js +23 -55
  40. package/dist/cjs/is-message.d.ts +5 -20
  41. package/dist/cjs/is-message.js +11 -29
  42. package/dist/cjs/json-value.d.ts +16 -0
  43. package/dist/cjs/proto-int64.js +2 -2
  44. package/dist/cjs/reflect/error.d.ts +9 -0
  45. package/dist/cjs/reflect/error.js +36 -0
  46. package/dist/cjs/reflect/guard.d.ts +20 -0
  47. package/dist/cjs/reflect/guard.js +78 -0
  48. package/dist/cjs/reflect/index.d.ts +8 -0
  49. package/dist/cjs/reflect/index.js +41 -0
  50. package/dist/cjs/reflect/names.d.ts +11 -0
  51. package/dist/cjs/reflect/names.js +74 -0
  52. package/dist/cjs/reflect/nested-types.d.ts +12 -0
  53. package/dist/cjs/reflect/nested-types.js +71 -0
  54. package/dist/cjs/reflect/reflect-check.d.ts +10 -0
  55. package/dist/cjs/reflect/reflect-check.js +150 -0
  56. package/dist/cjs/reflect/reflect-types.d.ts +284 -0
  57. package/dist/cjs/{extension.js → reflect/reflect-types.js} +1 -0
  58. package/dist/cjs/reflect/reflect.d.ts +32 -0
  59. package/dist/cjs/reflect/reflect.js +434 -0
  60. package/dist/cjs/reflect/registry.d.ts +82 -0
  61. package/dist/cjs/reflect/registry.js +879 -0
  62. package/dist/{esm → cjs/reflect}/scalar.d.ts +21 -1
  63. package/dist/cjs/reflect/scalar.js +298 -0
  64. package/dist/cjs/reflect/unsafe.d.ts +58 -0
  65. package/dist/cjs/reflect/unsafe.js +166 -0
  66. package/dist/cjs/to-binary.d.ts +24 -0
  67. package/dist/cjs/to-binary.js +192 -0
  68. package/dist/cjs/to-json.d.ts +50 -0
  69. package/dist/cjs/to-json.js +364 -0
  70. package/dist/cjs/types.d.ts +68 -0
  71. package/dist/cjs/wire/base64-encoding.d.ts +23 -0
  72. package/dist/cjs/wire/base64-encoding.js +156 -0
  73. package/dist/cjs/wire/binary-encoding.d.ts +244 -0
  74. package/dist/cjs/{binary-encoding.js → wire/binary-encoding.js} +27 -20
  75. package/dist/cjs/wire/index.d.ts +5 -0
  76. package/dist/cjs/wire/index.js +34 -0
  77. package/dist/cjs/wire/size-delimited.d.ts +51 -0
  78. package/dist/cjs/wire/size-delimited.js +154 -0
  79. package/dist/cjs/wire/text-encoding.d.ts +26 -0
  80. package/dist/cjs/wire/text-encoding.js +55 -0
  81. package/dist/cjs/wire/text-format.d.ts +14 -0
  82. package/dist/cjs/{private → wire}/text-format.js +12 -2
  83. package/dist/{esm/google → cjs/wire}/varint.d.ts +2 -2
  84. package/dist/cjs/{google → wire}/varint.js +11 -10
  85. package/dist/cjs/wkt/any.d.ts +38 -0
  86. package/dist/cjs/wkt/any.js +76 -0
  87. package/dist/{esm → cjs/wkt/gen}/google/protobuf/any_pb.d.ts +13 -27
  88. package/dist/cjs/wkt/gen/google/protobuf/any_pb.js +27 -0
  89. package/dist/cjs/{google → wkt/gen/google}/protobuf/api_pb.d.ts +29 -38
  90. package/dist/cjs/wkt/gen/google/protobuf/api_pb.js +39 -0
  91. package/dist/cjs/{google → wkt/gen/google}/protobuf/compiler/plugin_pb.d.ts +67 -75
  92. package/dist/cjs/wkt/gen/google/protobuf/compiler/plugin_pb.js +68 -0
  93. package/dist/cjs/{google → wkt/gen/google}/protobuf/descriptor_pb.d.ts +564 -527
  94. package/dist/cjs/wkt/gen/google/protobuf/descriptor_pb.js +794 -0
  95. package/dist/cjs/{google → wkt/gen/google}/protobuf/duration_pb.d.ts +13 -18
  96. package/dist/cjs/wkt/gen/google/protobuf/duration_pb.js +27 -0
  97. package/dist/cjs/wkt/gen/google/protobuf/empty_pb.d.ts +24 -0
  98. package/dist/cjs/wkt/gen/google/protobuf/empty_pb.js +27 -0
  99. package/dist/{esm → cjs/wkt/gen}/google/protobuf/field_mask_pb.d.ts +13 -18
  100. package/dist/cjs/wkt/gen/google/protobuf/field_mask_pb.js +27 -0
  101. package/dist/cjs/wkt/gen/google/protobuf/source_context_pb.d.ts +26 -0
  102. package/dist/cjs/wkt/gen/google/protobuf/source_context_pb.js +27 -0
  103. package/dist/{esm → cjs/wkt/gen}/google/protobuf/struct_pb.d.ts +44 -55
  104. package/dist/cjs/wkt/gen/google/protobuf/struct_pb.js +59 -0
  105. package/dist/cjs/{google → wkt/gen/google}/protobuf/timestamp_pb.d.ts +13 -21
  106. package/dist/cjs/wkt/gen/google/protobuf/timestamp_pb.js +27 -0
  107. package/dist/{esm → cjs/wkt/gen}/google/protobuf/type_pb.d.ts +77 -80
  108. package/dist/cjs/wkt/gen/google/protobuf/type_pb.js +242 -0
  109. package/dist/cjs/wkt/gen/google/protobuf/wrappers_pb.d.ts +186 -0
  110. package/dist/cjs/wkt/gen/google/protobuf/wrappers_pb.js +67 -0
  111. package/dist/cjs/wkt/index.d.ts +15 -0
  112. package/dist/cjs/wkt/index.js +44 -0
  113. package/dist/cjs/wkt/timestamp.d.ts +21 -0
  114. package/dist/cjs/wkt/timestamp.js +58 -0
  115. package/dist/cjs/wkt/wrappers.d.ts +15 -0
  116. package/dist/cjs/wkt/wrappers.js +43 -0
  117. package/dist/esm/clone.d.ts +6 -0
  118. package/dist/esm/clone.js +73 -0
  119. package/dist/esm/codegenv1/boot.d.ts +63 -0
  120. package/dist/esm/codegenv1/boot.js +97 -0
  121. package/dist/esm/codegenv1/embed.d.ts +43 -0
  122. package/dist/esm/codegenv1/embed.js +232 -0
  123. package/dist/esm/codegenv1/enum.d.ts +17 -0
  124. package/dist/esm/codegenv1/enum.js +36 -0
  125. package/dist/esm/codegenv1/extension.d.ts +9 -0
  126. package/dist/esm/codegenv1/extension.js +25 -0
  127. package/dist/esm/codegenv1/file.d.ts +7 -0
  128. package/dist/esm/codegenv1/file.js +34 -0
  129. package/dist/esm/codegenv1/index.d.ts +9 -0
  130. package/dist/esm/codegenv1/index.js +22 -0
  131. package/dist/esm/codegenv1/message.d.ts +9 -0
  132. package/dist/esm/codegenv1/message.js +21 -0
  133. package/dist/esm/codegenv1/restore-json-names.d.ts +5 -0
  134. package/dist/esm/codegenv1/restore-json-names.js +26 -0
  135. package/dist/esm/codegenv1/service.d.ts +8 -0
  136. package/dist/esm/codegenv1/service.js +24 -0
  137. package/dist/esm/codegenv1/symbols.d.ts +125 -0
  138. package/dist/esm/codegenv1/symbols.js +64 -0
  139. package/dist/esm/codegenv1/types.d.ts +72 -0
  140. package/dist/esm/{field-list.js → codegenv1/types.js} +6 -0
  141. package/dist/esm/create.d.ts +9 -0
  142. package/dist/esm/create.js +228 -0
  143. package/dist/{cjs/descriptor-set.d.ts → esm/desc-types.d.ts} +162 -243
  144. package/dist/esm/equals.d.ts +9 -0
  145. package/dist/esm/equals.js +129 -0
  146. package/dist/esm/extensions.d.ts +59 -0
  147. package/dist/esm/extensions.js +159 -0
  148. package/dist/esm/fields.d.ts +23 -0
  149. package/dist/esm/fields.js +41 -0
  150. package/dist/esm/from-binary.d.ts +34 -0
  151. package/dist/esm/from-binary.js +205 -0
  152. package/dist/esm/from-json.d.ts +48 -0
  153. package/dist/esm/from-json.js +603 -0
  154. package/dist/esm/index.d.ts +16 -42
  155. package/dist/esm/index.js +13 -30
  156. package/dist/esm/is-message.d.ts +5 -20
  157. package/dist/esm/is-message.js +11 -29
  158. package/dist/esm/json-value.d.ts +16 -0
  159. package/dist/esm/proto-int64.js +2 -2
  160. package/dist/esm/reflect/error.d.ts +9 -0
  161. package/dist/esm/reflect/error.js +31 -0
  162. package/dist/esm/reflect/guard.d.ts +20 -0
  163. package/dist/esm/reflect/guard.js +70 -0
  164. package/dist/esm/reflect/index.d.ts +8 -0
  165. package/dist/esm/reflect/index.js +21 -0
  166. package/dist/esm/reflect/names.d.ts +11 -0
  167. package/dist/esm/reflect/names.js +69 -0
  168. package/dist/esm/reflect/nested-types.d.ts +12 -0
  169. package/dist/esm/reflect/nested-types.js +66 -0
  170. package/dist/esm/reflect/reflect-check.d.ts +10 -0
  171. package/dist/esm/reflect/reflect-check.js +143 -0
  172. package/dist/esm/reflect/reflect-types.d.ts +284 -0
  173. package/dist/esm/reflect/reflect-types.js +15 -0
  174. package/dist/esm/reflect/reflect.d.ts +32 -0
  175. package/dist/esm/reflect/reflect.js +428 -0
  176. package/dist/esm/reflect/registry.d.ts +82 -0
  177. package/dist/esm/reflect/registry.js +874 -0
  178. package/dist/{cjs → esm/reflect}/scalar.d.ts +21 -1
  179. package/dist/esm/reflect/scalar.js +289 -0
  180. package/dist/esm/reflect/unsafe.d.ts +58 -0
  181. package/dist/esm/reflect/unsafe.js +155 -0
  182. package/dist/esm/to-binary.d.ts +24 -0
  183. package/dist/esm/to-binary.js +187 -0
  184. package/dist/esm/to-json.d.ts +50 -0
  185. package/dist/esm/to-json.js +359 -0
  186. package/dist/esm/types.d.ts +68 -0
  187. package/dist/esm/wire/base64-encoding.d.ts +23 -0
  188. package/dist/esm/wire/base64-encoding.js +151 -0
  189. package/dist/esm/wire/binary-encoding.d.ts +244 -0
  190. package/dist/esm/{binary-encoding.js → wire/binary-encoding.js} +27 -20
  191. package/dist/esm/wire/index.d.ts +5 -0
  192. package/dist/esm/wire/index.js +18 -0
  193. package/dist/esm/wire/size-delimited.d.ts +51 -0
  194. package/dist/esm/wire/size-delimited.js +148 -0
  195. package/dist/esm/wire/text-encoding.d.ts +26 -0
  196. package/dist/esm/wire/text-encoding.js +50 -0
  197. package/dist/esm/wire/text-format.d.ts +14 -0
  198. package/dist/esm/{private → wire}/text-format.js +12 -2
  199. package/dist/{cjs/google → esm/wire}/varint.d.ts +2 -2
  200. package/dist/esm/{google → wire}/varint.js +11 -10
  201. package/dist/esm/wkt/any.d.ts +38 -0
  202. package/dist/esm/wkt/any.js +69 -0
  203. package/dist/{cjs → esm/wkt/gen}/google/protobuf/any_pb.d.ts +13 -27
  204. package/dist/esm/wkt/gen/google/protobuf/any_pb.js +24 -0
  205. package/dist/esm/{google → wkt/gen/google}/protobuf/api_pb.d.ts +29 -38
  206. package/dist/esm/wkt/gen/google/protobuf/api_pb.js +36 -0
  207. package/dist/esm/{google → wkt/gen/google}/protobuf/compiler/plugin_pb.d.ts +67 -75
  208. package/dist/esm/wkt/gen/google/protobuf/compiler/plugin_pb.js +65 -0
  209. package/dist/esm/{google → wkt/gen/google}/protobuf/descriptor_pb.d.ts +564 -527
  210. package/dist/esm/wkt/gen/google/protobuf/descriptor_pb.js +790 -0
  211. package/dist/esm/{google → wkt/gen/google}/protobuf/duration_pb.d.ts +13 -18
  212. package/dist/esm/wkt/gen/google/protobuf/duration_pb.js +24 -0
  213. package/dist/esm/wkt/gen/google/protobuf/empty_pb.d.ts +24 -0
  214. package/dist/esm/wkt/gen/google/protobuf/empty_pb.js +24 -0
  215. package/dist/{cjs → esm/wkt/gen}/google/protobuf/field_mask_pb.d.ts +13 -18
  216. package/dist/esm/wkt/gen/google/protobuf/field_mask_pb.js +24 -0
  217. package/dist/esm/wkt/gen/google/protobuf/source_context_pb.d.ts +26 -0
  218. package/dist/esm/wkt/gen/google/protobuf/source_context_pb.js +24 -0
  219. package/dist/{cjs → esm/wkt/gen}/google/protobuf/struct_pb.d.ts +44 -55
  220. package/dist/esm/wkt/gen/google/protobuf/struct_pb.js +56 -0
  221. package/dist/esm/{google → wkt/gen/google}/protobuf/timestamp_pb.d.ts +13 -21
  222. package/dist/esm/wkt/gen/google/protobuf/timestamp_pb.js +24 -0
  223. package/dist/{cjs → esm/wkt/gen}/google/protobuf/type_pb.d.ts +77 -80
  224. package/dist/esm/wkt/gen/google/protobuf/type_pb.js +239 -0
  225. package/dist/esm/wkt/gen/google/protobuf/wrappers_pb.d.ts +186 -0
  226. package/dist/esm/wkt/gen/google/protobuf/wrappers_pb.js +64 -0
  227. package/dist/esm/wkt/index.d.ts +15 -0
  228. package/dist/esm/wkt/index.js +28 -0
  229. package/dist/esm/wkt/timestamp.d.ts +21 -0
  230. package/dist/esm/wkt/timestamp.js +50 -0
  231. package/dist/esm/wkt/wrappers.d.ts +15 -0
  232. package/dist/esm/wkt/wrappers.js +38 -0
  233. package/package.json +37 -5
  234. package/dist/cjs/binary-encoding.d.ts +0 -420
  235. package/dist/cjs/binary-format.d.ts +0 -113
  236. package/dist/cjs/codegen-info.d.ts +0 -33
  237. package/dist/cjs/codegen-info.js +0 -69
  238. package/dist/cjs/create-descriptor-set.d.ts +0 -36
  239. package/dist/cjs/create-descriptor-set.js +0 -910
  240. package/dist/cjs/create-registry-from-desc.d.ts +0 -15
  241. package/dist/cjs/create-registry-from-desc.js +0 -264
  242. package/dist/cjs/create-registry.d.ts +0 -9
  243. package/dist/cjs/create-registry.js +0 -94
  244. package/dist/cjs/enum.d.ts +0 -35
  245. package/dist/cjs/extension-accessor.d.ts +0 -35
  246. package/dist/cjs/extension-accessor.js +0 -114
  247. package/dist/cjs/extension.d.ts +0 -24
  248. package/dist/cjs/field-list.d.ts +0 -27
  249. package/dist/cjs/field-list.js +0 -15
  250. package/dist/cjs/field.d.ts +0 -314
  251. package/dist/cjs/field.js +0 -15
  252. package/dist/cjs/google/protobuf/any_pb.js +0 -273
  253. package/dist/cjs/google/protobuf/api_pb.js +0 -316
  254. package/dist/cjs/google/protobuf/compiler/plugin_pb.js +0 -219
  255. package/dist/cjs/google/protobuf/descriptor_pb.js +0 -2034
  256. package/dist/cjs/google/protobuf/duration_pb.js +0 -169
  257. package/dist/cjs/google/protobuf/empty_pb.d.ts +0 -28
  258. package/dist/cjs/google/protobuf/empty_pb.js +0 -52
  259. package/dist/cjs/google/protobuf/field_mask_pb.js +0 -311
  260. package/dist/cjs/google/protobuf/source_context_pb.d.ts +0 -29
  261. package/dist/cjs/google/protobuf/source_context_pb.js +0 -55
  262. package/dist/cjs/google/protobuf/struct_pb.js +0 -240
  263. package/dist/cjs/google/protobuf/timestamp_pb.js +0 -213
  264. package/dist/cjs/google/protobuf/type_pb.js +0 -562
  265. package/dist/cjs/google/protobuf/wrappers_pb.d.ts +0 -267
  266. package/dist/cjs/google/protobuf/wrappers_pb.js +0 -569
  267. package/dist/cjs/json-format.d.ts +0 -111
  268. package/dist/cjs/json-format.js +0 -15
  269. package/dist/cjs/message-type.d.ts +0 -51
  270. package/dist/cjs/message-type.js +0 -15
  271. package/dist/cjs/message.d.ts +0 -131
  272. package/dist/cjs/message.js +0 -129
  273. package/dist/cjs/private/binary-format.d.ts +0 -7
  274. package/dist/cjs/private/binary-format.js +0 -430
  275. package/dist/cjs/private/enum.d.ts +0 -27
  276. package/dist/cjs/private/enum.js +0 -94
  277. package/dist/cjs/private/extensions.d.ts +0 -34
  278. package/dist/cjs/private/extensions.js +0 -86
  279. package/dist/cjs/private/feature-set.d.ts +0 -19
  280. package/dist/cjs/private/feature-set.js +0 -106
  281. package/dist/cjs/private/field-list.d.ts +0 -18
  282. package/dist/cjs/private/field-list.js +0 -76
  283. package/dist/cjs/private/field-normalize.d.ts +0 -9
  284. package/dist/cjs/private/field-normalize.js +0 -69
  285. package/dist/cjs/private/field-wrapper.d.ts +0 -25
  286. package/dist/cjs/private/field-wrapper.js +0 -57
  287. package/dist/cjs/private/field.d.ts +0 -16
  288. package/dist/cjs/private/field.js +0 -45
  289. package/dist/cjs/private/json-format.d.ts +0 -2
  290. package/dist/cjs/private/json-format.js +0 -626
  291. package/dist/cjs/private/message-type.d.ts +0 -18
  292. package/dist/cjs/private/message-type.js +0 -50
  293. package/dist/cjs/private/names.d.ts +0 -43
  294. package/dist/cjs/private/names.js +0 -278
  295. package/dist/cjs/private/options-map.d.ts +0 -7
  296. package/dist/cjs/private/options-map.js +0 -15
  297. package/dist/cjs/private/proto-runtime.d.ts +0 -53
  298. package/dist/cjs/private/proto-runtime.js +0 -41
  299. package/dist/cjs/private/reflect.d.ts +0 -9
  300. package/dist/cjs/private/reflect.js +0 -79
  301. package/dist/cjs/private/reify-wkt.d.ts +0 -102
  302. package/dist/cjs/private/reify-wkt.js +0 -172
  303. package/dist/cjs/private/scalars.d.ts +0 -18
  304. package/dist/cjs/private/scalars.js +0 -105
  305. package/dist/cjs/private/text-format.d.ts +0 -4
  306. package/dist/cjs/private/util-common.d.ts +0 -2
  307. package/dist/cjs/private/util-common.js +0 -237
  308. package/dist/cjs/private/util.d.ts +0 -38
  309. package/dist/cjs/private/util.js +0 -15
  310. package/dist/cjs/proto-base64.d.ts +0 -18
  311. package/dist/cjs/proto-base64.js +0 -128
  312. package/dist/cjs/proto-delimited.d.ts +0 -54
  313. package/dist/cjs/proto-delimited.js +0 -155
  314. package/dist/cjs/proto-double.d.ts +0 -5
  315. package/dist/cjs/proto-double.js +0 -29
  316. package/dist/cjs/proto2.d.ts +0 -4
  317. package/dist/cjs/proto2.js +0 -53
  318. package/dist/cjs/proto3.d.ts +0 -4
  319. package/dist/cjs/proto3.js +0 -56
  320. package/dist/cjs/scalar.js +0 -81
  321. package/dist/cjs/service-type.d.ts +0 -96
  322. package/dist/cjs/service-type.js +0 -53
  323. package/dist/cjs/to-plain-message.d.ts +0 -12
  324. package/dist/cjs/to-plain-message.js +0 -72
  325. package/dist/cjs/type-registry.d.ts +0 -57
  326. package/dist/cjs/type-registry.js +0 -15
  327. package/dist/esm/binary-encoding.d.ts +0 -420
  328. package/dist/esm/binary-format.d.ts +0 -113
  329. package/dist/esm/codegen-info.d.ts +0 -33
  330. package/dist/esm/codegen-info.js +0 -67
  331. package/dist/esm/create-descriptor-set.d.ts +0 -36
  332. package/dist/esm/create-descriptor-set.js +0 -906
  333. package/dist/esm/create-registry-from-desc.d.ts +0 -15
  334. package/dist/esm/create-registry-from-desc.js +0 -261
  335. package/dist/esm/create-registry.d.ts +0 -9
  336. package/dist/esm/create-registry.js +0 -90
  337. package/dist/esm/descriptor-set.js +0 -14
  338. package/dist/esm/enum.d.ts +0 -35
  339. package/dist/esm/extension-accessor.d.ts +0 -35
  340. package/dist/esm/extension-accessor.js +0 -107
  341. package/dist/esm/extension.d.ts +0 -24
  342. package/dist/esm/field-list.d.ts +0 -27
  343. package/dist/esm/field.d.ts +0 -314
  344. package/dist/esm/field.js +0 -14
  345. package/dist/esm/google/protobuf/any_pb.js +0 -269
  346. package/dist/esm/google/protobuf/api_pb.js +0 -310
  347. package/dist/esm/google/protobuf/compiler/plugin_pb.js +0 -212
  348. package/dist/esm/google/protobuf/descriptor_pb.js +0 -1999
  349. package/dist/esm/google/protobuf/duration_pb.js +0 -165
  350. package/dist/esm/google/protobuf/empty_pb.d.ts +0 -28
  351. package/dist/esm/google/protobuf/empty_pb.js +0 -48
  352. package/dist/esm/google/protobuf/field_mask_pb.js +0 -307
  353. package/dist/esm/google/protobuf/source_context_pb.d.ts +0 -29
  354. package/dist/esm/google/protobuf/source_context_pb.js +0 -51
  355. package/dist/esm/google/protobuf/struct_pb.js +0 -234
  356. package/dist/esm/google/protobuf/timestamp_pb.js +0 -209
  357. package/dist/esm/google/protobuf/type_pb.js +0 -554
  358. package/dist/esm/google/protobuf/wrappers_pb.d.ts +0 -267
  359. package/dist/esm/google/protobuf/wrappers_pb.js +0 -557
  360. package/dist/esm/json-format.d.ts +0 -111
  361. package/dist/esm/json-format.js +0 -14
  362. package/dist/esm/message-type.d.ts +0 -51
  363. package/dist/esm/message-type.js +0 -14
  364. package/dist/esm/message.d.ts +0 -131
  365. package/dist/esm/message.js +0 -125
  366. package/dist/esm/private/binary-format.d.ts +0 -7
  367. package/dist/esm/private/binary-format.js +0 -426
  368. package/dist/esm/private/enum.d.ts +0 -27
  369. package/dist/esm/private/enum.js +0 -87
  370. package/dist/esm/private/extensions.d.ts +0 -34
  371. package/dist/esm/private/extensions.js +0 -81
  372. package/dist/esm/private/feature-set.d.ts +0 -19
  373. package/dist/esm/private/feature-set.js +0 -102
  374. package/dist/esm/private/field-list.d.ts +0 -18
  375. package/dist/esm/private/field-list.js +0 -72
  376. package/dist/esm/private/field-normalize.d.ts +0 -9
  377. package/dist/esm/private/field-normalize.js +0 -65
  378. package/dist/esm/private/field-wrapper.d.ts +0 -25
  379. package/dist/esm/private/field-wrapper.js +0 -53
  380. package/dist/esm/private/field.d.ts +0 -16
  381. package/dist/esm/private/field.js +0 -41
  382. package/dist/esm/private/json-format.d.ts +0 -2
  383. package/dist/esm/private/json-format.js +0 -623
  384. package/dist/esm/private/message-type.d.ts +0 -18
  385. package/dist/esm/private/message-type.js +0 -46
  386. package/dist/esm/private/names.d.ts +0 -43
  387. package/dist/esm/private/names.js +0 -269
  388. package/dist/esm/private/options-map.d.ts +0 -7
  389. package/dist/esm/private/options-map.js +0 -14
  390. package/dist/esm/private/proto-runtime.d.ts +0 -53
  391. package/dist/esm/private/proto-runtime.js +0 -37
  392. package/dist/esm/private/reflect.d.ts +0 -9
  393. package/dist/esm/private/reflect.js +0 -74
  394. package/dist/esm/private/reify-wkt.d.ts +0 -102
  395. package/dist/esm/private/reify-wkt.js +0 -168
  396. package/dist/esm/private/scalars.d.ts +0 -18
  397. package/dist/esm/private/scalars.js +0 -99
  398. package/dist/esm/private/text-format.d.ts +0 -4
  399. package/dist/esm/private/util-common.d.ts +0 -2
  400. package/dist/esm/private/util-common.js +0 -234
  401. package/dist/esm/private/util.d.ts +0 -38
  402. package/dist/esm/private/util.js +0 -14
  403. package/dist/esm/proto-base64.d.ts +0 -18
  404. package/dist/esm/proto-base64.js +0 -125
  405. package/dist/esm/proto-delimited.d.ts +0 -54
  406. package/dist/esm/proto-delimited.js +0 -152
  407. package/dist/esm/proto-double.d.ts +0 -5
  408. package/dist/esm/proto-double.js +0 -26
  409. package/dist/esm/proto2.d.ts +0 -4
  410. package/dist/esm/proto2.js +0 -50
  411. package/dist/esm/proto3.d.ts +0 -4
  412. package/dist/esm/proto3.js +0 -53
  413. package/dist/esm/scalar.js +0 -78
  414. package/dist/esm/service-type.d.ts +0 -96
  415. package/dist/esm/service-type.js +0 -50
  416. package/dist/esm/to-plain-message.d.ts +0 -12
  417. package/dist/esm/to-plain-message.js +0 -70
  418. package/dist/esm/type-registry.d.ts +0 -57
  419. package/dist/esm/type-registry.js +0 -14
  420. /package/dist/cjs/{binary-format.js → desc-types.js} +0 -0
  421. /package/dist/cjs/{descriptor-set.js → json-value.js} +0 -0
  422. /package/dist/cjs/{private → reflect}/assert.d.ts +0 -0
  423. /package/dist/cjs/{private → reflect}/assert.js +0 -0
  424. /package/dist/cjs/{enum.js → types.js} +0 -0
  425. /package/dist/esm/{binary-format.js → desc-types.js} +0 -0
  426. /package/dist/esm/{enum.js → json-value.js} +0 -0
  427. /package/dist/esm/{private → reflect}/assert.d.ts +0 -0
  428. /package/dist/esm/{private → reflect}/assert.js +0 -0
  429. /package/dist/esm/{extension.js → types.js} +0 -0
@@ -1,44 +1,7 @@
1
- import type { DescriptorProto, Edition, EnumDescriptorProto, EnumValueDescriptorProto, FieldDescriptorProto, FileDescriptorProto, MethodDescriptorProto, OneofDescriptorProto, ServiceDescriptorProto } from "./google/protobuf/descriptor_pb.js";
2
- import { LongType, ScalarType } from "./scalar.js";
3
- import type { MethodIdempotency, MethodKind } from "./service-type.js";
4
- import type { MergedFeatureSet } from "./private/feature-set.js";
5
- /**
6
- * DescriptorSet provides a convenient interface for working with a set
7
- * of google.protobuf.FileDescriptorProto.
8
- *
9
- * When protobuf sources are compiled, each file is parsed into a
10
- * google.protobuf.FileDescriptorProto. Those messages describe all parts
11
- * of the source file that are required to generate code for them.
12
- *
13
- * DescriptorSet resolves references between the descriptors, hides
14
- * implementation details like synthetic map entry messages, and provides
15
- * simple access to comments.
16
- */
17
- export interface DescriptorSet {
18
- /**
19
- * All files, in the order they were added to the set.
20
- */
21
- readonly files: DescFile[];
22
- /**
23
- * All enumerations, indexed by their fully qualified type name.
24
- * (We omit the leading dot.)
25
- */
26
- readonly enums: ReadonlyMap<string, DescEnum>;
27
- /**
28
- * All messages, indexed by their fully qualified type name.
29
- * (We omit the leading dot.)
30
- */
31
- readonly messages: ReadonlyMap<string, DescMessage>;
32
- /**
33
- * All services, indexed by their fully qualified type name.
34
- * (We omit the leading dot.)
35
- */
36
- readonly services: ReadonlyMap<string, DescService>;
37
- /**
38
- * All extensions, indexed by their fully qualified type name.
39
- */
40
- readonly extensions: ReadonlyMap<string, DescExtension>;
41
- }
1
+ import type { DescriptorProto, Edition, EnumDescriptorProto, EnumValueDescriptorProto, FeatureSet_FieldPresence, FieldDescriptorProto, FileDescriptorProto, MethodDescriptorProto, MethodOptions_IdempotencyLevel, OneofDescriptorProto, ServiceDescriptorProto } from "./wkt/gen/google/protobuf/descriptor_pb.js";
2
+ import type { LongType, ScalarType, ScalarValue } from "./reflect/scalar.js";
3
+ export type SupportedEdition = Extract<Edition, Edition.EDITION_PROTO2 | Edition.EDITION_PROTO3 | Edition.EDITION_2023>;
4
+ type SupportedFieldPresence = Extract<FeatureSet_FieldPresence, FeatureSet_FieldPresence.EXPLICIT | FeatureSet_FieldPresence.IMPLICIT | FeatureSet_FieldPresence.LEGACY_REQUIRED>;
42
5
  /**
43
6
  * A union of all descriptors, discriminated by a `kind` property.
44
7
  */
@@ -48,15 +11,11 @@ export type AnyDesc = DescFile | DescEnum | DescEnumValue | DescMessage | DescFi
48
11
  */
49
12
  export interface DescFile {
50
13
  readonly kind: "file";
51
- /**
52
- * The syntax specified in the protobuf source.
53
- */
54
- readonly syntax: "proto3" | "proto2" | "editions";
55
14
  /**
56
15
  * The edition of the protobuf file. Will be EDITION_PROTO2 for syntax="proto2",
57
16
  * EDITION_PROTO3 for syntax="proto3";
58
17
  */
59
- readonly edition: Exclude<Edition, Edition.EDITION_1_TEST_ONLY | Edition.EDITION_2_TEST_ONLY | Edition.EDITION_99997_TEST_ONLY | Edition.EDITION_99998_TEST_ONLY | Edition.EDITION_99999_TEST_ONLY>;
18
+ readonly edition: SupportedEdition;
60
19
  /**
61
20
  * The name of the file, excluding the .proto suffix.
62
21
  * For a protobuf file `foo/bar.proto`, this is `foo/bar`.
@@ -93,18 +52,6 @@ export interface DescFile {
93
52
  * The compiler-generated descriptor.
94
53
  */
95
54
  readonly proto: FileDescriptorProto;
96
- /**
97
- * Get comments on the syntax element in the protobuf source.
98
- */
99
- getSyntaxComments(): DescComments;
100
- /**
101
- * Get comments on the package element in the protobuf source.
102
- */
103
- getPackageComments(): DescComments;
104
- /**
105
- * Get the edition features for this protobuf element.
106
- */
107
- getFeatures(): MergedFeatureSet;
108
55
  toString(): string;
109
56
  }
110
57
  /**
@@ -128,13 +75,18 @@ export interface DescEnum {
128
75
  * The parent message, if this enumeration was declared inside a message declaration.
129
76
  */
130
77
  readonly parent: DescMessage | undefined;
78
+ /**
79
+ * Enumerations can be open or closed.
80
+ * See https://protobuf.dev/programming-guides/enum/
81
+ */
82
+ readonly open: boolean;
131
83
  /**
132
84
  * Values declared for this enumeration.
133
85
  */
134
86
  readonly values: DescEnumValue[];
135
87
  /**
136
88
  * A prefix shared by all enum values.
137
- * For example, `MY_ENUM_` for `enum MyEnum {MY_ENUM_A=0; MY_ENUM_B=1;}`
89
+ * For example, `my_enum_` for `enum MyEnum {MY_ENUM_A=0; MY_ENUM_B=1;}`
138
90
  */
139
91
  readonly sharedPrefix?: string;
140
92
  /**
@@ -145,25 +97,21 @@ export interface DescEnum {
145
97
  * The compiler-generated descriptor.
146
98
  */
147
99
  readonly proto: EnumDescriptorProto;
148
- /**
149
- * Get comments on the element in the protobuf source.
150
- */
151
- getComments(): DescComments;
152
- /**
153
- * Get the edition features for this protobuf element.
154
- */
155
- getFeatures(): MergedFeatureSet;
156
100
  toString(): string;
157
101
  }
158
102
  /**
159
103
  * Describes an individual value of an enumeration in a protobuf source file.
160
104
  */
161
105
  export interface DescEnumValue {
162
- kind: "enum_value";
106
+ readonly kind: "enum_value";
163
107
  /**
164
108
  * The name of the enumeration value, as specified in the protobuf source.
165
109
  */
166
110
  readonly name: string;
111
+ /**
112
+ * A safe and idiomatic name for the value in a TypeScript enum.
113
+ */
114
+ readonly localName: string;
167
115
  /**
168
116
  * The enumeration this value belongs to.
169
117
  */
@@ -180,19 +128,6 @@ export interface DescEnumValue {
180
128
  * The compiler-generated descriptor.
181
129
  */
182
130
  readonly proto: EnumValueDescriptorProto;
183
- /**
184
- * Return a string that (closely) matches the definition of the enumeration
185
- * value in the protobuf source.
186
- */
187
- declarationString(): string;
188
- /**
189
- * Get comments on the element in the protobuf source.
190
- */
191
- getComments(): DescComments;
192
- /**
193
- * Get the edition features for this protobuf element.
194
- */
195
- getFeatures(): MergedFeatureSet;
196
131
  toString(): string;
197
132
  }
198
133
  /**
@@ -221,6 +156,10 @@ export interface DescMessage {
221
156
  * group.
222
157
  */
223
158
  readonly fields: DescField[];
159
+ /**
160
+ * All fields of this message by their "localName".
161
+ */
162
+ readonly field: Record<string, DescField>;
224
163
  /**
225
164
  * Oneof groups declared for this message.
226
165
  * This does not include synthetic oneofs for proto3 optionals.
@@ -252,30 +191,28 @@ export interface DescMessage {
252
191
  * The compiler-generated descriptor.
253
192
  */
254
193
  readonly proto: DescriptorProto;
255
- /**
256
- * Get comments on the element in the protobuf source.
257
- */
258
- getComments(): DescComments;
259
- /**
260
- * Get the edition features for this protobuf element.
261
- */
262
- getFeatures(): MergedFeatureSet;
263
194
  toString(): string;
264
195
  }
265
196
  /**
266
197
  * Describes a field declaration in a protobuf source file.
267
198
  */
268
- export type DescField = DescFieldCommon & (DescFieldScalar | DescFieldMessage | DescFieldEnum | DescFieldMap) & {
199
+ export type DescField = (descFieldScalar & descFieldCommon) | (descFieldList & descFieldCommon) | (descFieldMessage & descFieldCommon) | (descFieldEnum & descFieldCommon) | (descFieldMap & descFieldCommon);
200
+ type descFieldCommon = descFieldAndExtensionShared & {
269
201
  readonly kind: "field";
270
202
  /**
271
203
  * The message this field is declared on.
272
204
  */
273
205
  readonly parent: DescMessage;
206
+ /**
207
+ * A safe and idiomatic name for the field as a property in ECMAScript.
208
+ */
209
+ readonly localName: string;
274
210
  };
275
211
  /**
276
212
  * Describes an extension in a protobuf source file.
277
213
  */
278
- export type DescExtension = DescFieldCommon & (DescFieldScalar | DescFieldMessage | DescFieldEnum | DescFieldMap) & {
214
+ export type DescExtension = (Omit<descFieldScalar, "oneof"> & descExtensionCommon) | (Omit<descFieldEnum, "oneof"> & descExtensionCommon) | (Omit<descFieldMessage, "oneof"> & descExtensionCommon) | (descFieldList & descExtensionCommon);
215
+ type descExtensionCommon = descFieldAndExtensionShared & {
279
216
  readonly kind: "extension";
280
217
  /**
281
218
  * The fully qualified name of the extension.
@@ -293,8 +230,12 @@ export type DescExtension = DescFieldCommon & (DescFieldScalar | DescFieldMessag
293
230
  * The message that this extension extends.
294
231
  */
295
232
  readonly extendee: DescMessage;
233
+ /**
234
+ * The `oneof` group this field belongs to, if any.
235
+ */
236
+ readonly oneof: undefined;
296
237
  };
297
- interface DescFieldCommon {
238
+ interface descFieldAndExtensionShared {
298
239
  /**
299
240
  * The field name, as specified in the protobuf source
300
241
  */
@@ -304,66 +245,41 @@ interface DescFieldCommon {
304
245
  */
305
246
  readonly number: number;
306
247
  /**
307
- * The `oneof` group this field belongs to, if any.
308
- */
309
- readonly oneof: DescOneof | undefined;
310
- /**
311
- * Whether this field was declared with `optional` in the protobuf source.
312
- */
313
- readonly optional: boolean;
314
- /**
315
- * Pack this repeated field?
248
+ * The field name in JSON.
316
249
  */
317
- readonly packed: boolean;
318
- /**
319
- * Is this field packed by default? Only valid for repeated enum fields, and
320
- * for repeated scalar fields except BYTES and STRING.
321
- *
322
- * In proto3 syntax, fields are packed by default. In proto2 syntax, fields
323
- * are unpacked by default.
324
- *
325
- * With editions, the default is whatever the edition specifies as a default.
326
- * In edition 2023, fields are packed by default.
327
- */
328
- readonly packedByDefault: boolean;
329
- /**
330
- * A user-defined name for the JSON format, set with the field option
331
- * [json_name="foo"].
332
- */
333
- readonly jsonName: string | undefined;
250
+ readonly jsonName: string;
334
251
  /**
335
252
  * Marked as deprecated in the protobuf source.
336
253
  */
337
254
  readonly deprecated: boolean;
338
255
  /**
339
- * The compiler-generated descriptor.
340
- */
341
- readonly proto: FieldDescriptorProto;
342
- /**
343
- * Get comments on the element in the protobuf source.
256
+ * Presence of the field.
257
+ * See https://protobuf.dev/programming-guides/field_presence/
344
258
  */
345
- getComments(): DescComments;
259
+ readonly presence: SupportedFieldPresence;
346
260
  /**
347
- * Return a string that (closely) matches the definition of the field in the
348
- * protobuf source.
261
+ * The compiler-generated descriptor.
349
262
  */
350
- declarationString(): string;
263
+ readonly proto: FieldDescriptorProto;
351
264
  /**
352
265
  * Get the edition features for this protobuf element.
353
266
  */
354
- getFeatures(): MergedFeatureSet;
355
267
  toString(): string;
356
268
  }
357
- interface DescFieldScalar {
358
- readonly fieldKind: "scalar";
269
+ type descFieldSingularCommon = {
359
270
  /**
360
- * Is the field repeated?
271
+ * The `oneof` group this field belongs to, if any.
272
+ *
273
+ * This does not include synthetic oneofs for proto3 optionals.
361
274
  */
362
- readonly repeated: boolean;
275
+ readonly oneof: DescOneof | undefined;
276
+ };
277
+ type descFieldScalar<T extends ScalarType = ScalarType> = T extends T ? {
278
+ readonly fieldKind: "scalar";
363
279
  /**
364
280
  * Scalar type, if it is a scalar field.
365
281
  */
366
- readonly scalar: ScalarType;
282
+ readonly scalar: T;
367
283
  /**
368
284
  * JavaScript type for 64 bit integral types (int64, uint64,
369
285
  * sint64, fixed64, sfixed64).
@@ -377,67 +293,41 @@ interface DescFieldScalar {
377
293
  * The enum type, if it is an enum field.
378
294
  */
379
295
  readonly enum: undefined;
380
- /**
381
- * The map key type, if this is a map field.
382
- */
383
- readonly mapKey: undefined;
384
- /**
385
- * The map value type, if this is a map field.
386
- */
387
- readonly mapValue: undefined;
388
296
  /**
389
297
  * Return the default value specified in the protobuf source.
390
- * Only valid for proto2 syntax.
391
298
  */
392
- getDefaultValue(): number | boolean | string | bigint | Uint8Array | undefined;
393
- }
394
- interface DescFieldMessage {
299
+ getDefaultValue(): ScalarValue<T> | undefined;
300
+ } & descFieldSingularCommon : never;
301
+ type descFieldMessage = {
395
302
  readonly fieldKind: "message";
396
- /**
397
- * Is the field repeated?
398
- */
399
- readonly repeated: boolean;
400
303
  /**
401
304
  * Scalar type, if it is a scalar field.
402
305
  */
403
306
  readonly scalar: undefined;
404
- /**
405
- * JavaScript type for 64 bit integral types (int64, uint64,
406
- * sint64, fixed64, sfixed64).
407
- */
408
- readonly longType: undefined;
409
307
  /**
410
308
  * The message type, if it is a message field.
411
309
  */
412
310
  readonly message: DescMessage;
413
311
  /**
414
- * The enum type, if it is an enum field.
312
+ * Encode the message delimited (a.k.a. proto2 group encoding), or
313
+ * length-prefixed?
415
314
  */
416
- readonly enum: undefined;
315
+ readonly delimitedEncoding: boolean;
417
316
  /**
418
- * The map key type, if this is a map field.
317
+ * The enum type, if it is an enum field.
419
318
  */
420
- readonly mapKey: undefined;
319
+ readonly enum: undefined;
421
320
  /**
422
- * The map value type, if this is a map field.
321
+ * Return the default value specified in the protobuf source.
423
322
  */
424
- readonly mapValue: undefined;
425
- }
426
- interface DescFieldEnum {
323
+ getDefaultValue(): undefined;
324
+ } & descFieldSingularCommon;
325
+ type descFieldEnum = {
427
326
  readonly fieldKind: "enum";
428
- /**
429
- * Is the field repeated?
430
- */
431
- readonly repeated: boolean;
432
327
  /**
433
328
  * Scalar type, if it is a scalar field.
434
329
  */
435
330
  readonly scalar: undefined;
436
- /**
437
- * JavaScript type for 64 bit integral types (int64, uint64,
438
- * sint64, fixed64, sfixed64).
439
- */
440
- readonly longType: undefined;
441
331
  /**
442
332
  * The message type, if it is a message field.
443
333
  */
@@ -447,96 +337,141 @@ interface DescFieldEnum {
447
337
  */
448
338
  readonly enum: DescEnum;
449
339
  /**
450
- * The map key type, if this is a map field.
340
+ * Return the default value specified in the protobuf source.
451
341
  */
452
- readonly mapKey: undefined;
342
+ getDefaultValue(): number | undefined;
343
+ } & descFieldSingularCommon;
344
+ type descFieldList = (descFieldListScalar & descFieldListCommon) | (descFieldListEnum & descFieldListCommon) | (descFieldListMessage & descFieldListCommon);
345
+ type descFieldListCommon = {
346
+ readonly fieldKind: "list";
453
347
  /**
454
- * The map value type, if this is a map field.
348
+ * Pack this repeated field? Only valid for repeated enum fields, and
349
+ * for repeated scalar fields except BYTES and STRING.
455
350
  */
456
- readonly mapValue: undefined;
351
+ readonly packed: boolean;
457
352
  /**
458
- * Return the default value specified in the protobuf source.
459
- * Only valid for proto2 syntax.
353
+ * The `oneof` group this field belongs to, if any.
460
354
  */
461
- getDefaultValue(): number | boolean | string | bigint | Uint8Array | undefined;
462
- }
463
- interface DescFieldMap {
464
- readonly fieldKind: "map";
355
+ readonly oneof: undefined;
356
+ };
357
+ type descFieldListScalar<T extends ScalarType = ScalarType> = T extends T ? {
358
+ readonly listKind: "scalar";
359
+ /**
360
+ * The enum list element type.
361
+ */
362
+ readonly enum: undefined;
465
363
  /**
466
- * Is the field repeated?
364
+ * The message list element type.
467
365
  */
468
- readonly repeated: false;
366
+ readonly message: undefined;
469
367
  /**
470
- * Scalar type, if it is a scalar field.
368
+ * Scalar list element type.
471
369
  */
472
- readonly scalar: undefined;
370
+ readonly scalar: T;
473
371
  /**
474
372
  * JavaScript type for 64 bit integral types (int64, uint64,
475
373
  * sint64, fixed64, sfixed64).
476
374
  */
477
- readonly longType: undefined;
375
+ readonly longType: LongType;
376
+ } : never;
377
+ type descFieldListEnum = {
378
+ readonly listKind: "enum";
478
379
  /**
479
- * The message type, if it is a message field.
380
+ * The enum list element type.
381
+ */
382
+ readonly enum: DescEnum;
383
+ /**
384
+ * The message list element type.
480
385
  */
481
386
  readonly message: undefined;
482
387
  /**
483
- * The enum type, if it is an enum field.
388
+ * Scalar list element type.
389
+ */
390
+ readonly scalar: undefined;
391
+ };
392
+ type descFieldListMessage = {
393
+ readonly listKind: "message";
394
+ /**
395
+ * The enum list element type.
484
396
  */
485
397
  readonly enum: undefined;
486
398
  /**
487
- * The map key type, if this is a map field.
399
+ * The message list element type.
488
400
  */
489
- readonly mapKey: Exclude<ScalarType, ScalarType.FLOAT | ScalarType.DOUBLE | ScalarType.BYTES>;
401
+ readonly message: DescMessage;
490
402
  /**
491
- * The map value type, if this is a map field.
403
+ * Scalar list element type.
492
404
  */
493
- readonly mapValue: DescFieldMapValueEnum | DescFieldMapValueMessage | DescFieldMapValueScalar;
494
- }
495
- interface DescFieldMapValueEnum {
496
- readonly kind: "enum";
405
+ readonly scalar: undefined;
497
406
  /**
498
- * The enum type, if this is a map field with enum values.
407
+ * Encode the message delimited (a.k.a. proto2 group encoding), or
408
+ * length-prefixed?
499
409
  */
500
- readonly enum: DescEnum;
410
+ readonly delimitedEncoding: boolean;
411
+ };
412
+ type descFieldMap = (descFieldMapScalar & descFieldMapCommon) | (descFieldMapEnum & descFieldMapCommon) | (descFieldMapMessage & descFieldMapCommon);
413
+ type descFieldMapCommon<T extends ScalarType = ScalarType> = T extends Exclude<ScalarType, ScalarType.FLOAT | ScalarType.DOUBLE | ScalarType.BYTES> ? {
414
+ readonly fieldKind: "map";
501
415
  /**
502
- * The message this message field uses.
416
+ * The scalar map key type.
503
417
  */
504
- readonly message: undefined;
418
+ readonly mapKey: T;
505
419
  /**
506
- * Scalar type, if this is a map field with scalar values.
420
+ * The `oneof` group this field belongs to, if any.
507
421
  */
508
- readonly scalar: undefined;
509
- }
510
- interface DescFieldMapValueMessage {
511
- readonly kind: "message";
422
+ readonly oneof: undefined;
512
423
  /**
513
- * The enum type, if this is a map field with enum values.
424
+ * Encode the map entry message delimited (a.k.a. proto2 group encoding),
425
+ * or length-prefixed? As of Edition 2023, this is always false for map fields,
426
+ * and also applies to map values, if they are messages.
427
+ */
428
+ readonly delimitedEncoding: false;
429
+ } : never;
430
+ type descFieldMapScalar<T extends ScalarType = ScalarType> = T extends T ? {
431
+ readonly mapKind: "scalar";
432
+ /**
433
+ * The enum map value type.
514
434
  */
515
435
  readonly enum: undefined;
516
436
  /**
517
- * The message type, if this is a map field with message values.
437
+ * The message map value type.
518
438
  */
519
- readonly message: DescMessage;
439
+ readonly message: undefined;
440
+ /**
441
+ * Scalar map value type.
442
+ */
443
+ readonly scalar: T;
444
+ } : never;
445
+ type descFieldMapEnum = {
446
+ readonly mapKind: "enum";
520
447
  /**
521
- * Scalar type, if this is a map field with scalar values.
448
+ * The enum map value type.
449
+ */
450
+ readonly enum: DescEnum;
451
+ /**
452
+ * The message map value type.
453
+ */
454
+ readonly message: undefined;
455
+ /**
456
+ * Scalar map value type.
522
457
  */
523
458
  readonly scalar: undefined;
524
- }
525
- interface DescFieldMapValueScalar {
526
- readonly kind: "scalar";
459
+ };
460
+ type descFieldMapMessage = {
461
+ readonly mapKind: "message";
527
462
  /**
528
- * The enum type, if this is a map field with enum values.
463
+ * The enum map value type.
529
464
  */
530
465
  readonly enum: undefined;
531
466
  /**
532
- * The message type, if this is a map field with message values.
467
+ * The message map value type.
533
468
  */
534
- readonly message: undefined;
469
+ readonly message: DescMessage;
535
470
  /**
536
- * Scalar type, if this is a map field with scalar values.
471
+ * Scalar map value type.
537
472
  */
538
- readonly scalar: ScalarType;
539
- }
473
+ readonly scalar: undefined;
474
+ };
540
475
  /**
541
476
  * Describes a oneof group in a protobuf source file.
542
477
  */
@@ -546,6 +481,10 @@ export interface DescOneof {
546
481
  * The name of the oneof group, as specified in the protobuf source.
547
482
  */
548
483
  readonly name: string;
484
+ /**
485
+ * A safe and idiomatic name for the oneof group as a property in ECMAScript.
486
+ */
487
+ readonly localName: string;
549
488
  /**
550
489
  * The message this oneof group was declared in.
551
490
  */
@@ -564,14 +503,6 @@ export interface DescOneof {
564
503
  * The compiler-generated descriptor.
565
504
  */
566
505
  readonly proto: OneofDescriptorProto;
567
- /**
568
- * Get comments on the element in the protobuf source.
569
- */
570
- getComments(): DescComments;
571
- /**
572
- * Get the edition features for this protobuf element.
573
- */
574
- getFeatures(): MergedFeatureSet;
575
506
  toString(): string;
576
507
  }
577
508
  /**
@@ -603,14 +534,6 @@ export interface DescService {
603
534
  * The compiler-generated descriptor.
604
535
  */
605
536
  readonly proto: ServiceDescriptorProto;
606
- /**
607
- * Get comments on the element in the protobuf source.
608
- */
609
- getComments(): DescComments;
610
- /**
611
- * Get the edition features for this protobuf element.
612
- */
613
- getFeatures(): MergedFeatureSet;
614
537
  toString(): string;
615
538
  }
616
539
  /**
@@ -622,6 +545,10 @@ export interface DescMethod {
622
545
  * The name of the RPC, as specified in the protobuf source.
623
546
  */
624
547
  readonly name: string;
548
+ /**
549
+ * A safe and idiomatic name for the RPC as a method in ECMAScript.
550
+ */
551
+ readonly localName: string;
625
552
  /**
626
553
  * The parent service.
627
554
  */
@@ -629,7 +556,7 @@ export interface DescMethod {
629
556
  /**
630
557
  * One of the four available method types.
631
558
  */
632
- readonly methodKind: MethodKind;
559
+ readonly methodKind: "unary" | "server_streaming" | "client_streaming" | "bidi_streaming";
633
560
  /**
634
561
  * The message type for requests.
635
562
  */
@@ -641,7 +568,7 @@ export interface DescMethod {
641
568
  /**
642
569
  * The idempotency level declared in the protobuf source, if any.
643
570
  */
644
- readonly idempotency?: MethodIdempotency;
571
+ readonly idempotency: MethodOptions_IdempotencyLevel;
645
572
  /**
646
573
  * Marked as deprecated in the protobuf source.
647
574
  */
@@ -650,14 +577,6 @@ export interface DescMethod {
650
577
  * The compiler-generated descriptor.
651
578
  */
652
579
  readonly proto: MethodDescriptorProto;
653
- /**
654
- * Get comments on the element in the protobuf source.
655
- */
656
- getComments(): DescComments;
657
- /**
658
- * Get the edition features for this protobuf element.
659
- */
660
- getFeatures(): MergedFeatureSet;
661
580
  toString(): string;
662
581
  }
663
582
  /**
@@ -0,0 +1,9 @@
1
+ import type { MessageShape } from "./types.js";
2
+ import type { DescMessage } from "./desc-types.js";
3
+ /**
4
+ * Compare two messages of the same type.
5
+ *
6
+ * Note that this function disregards extensions and unknown fields, and that
7
+ * NaN is not equal NaN, following the IEEE standard.
8
+ */
9
+ export declare function equals<Desc extends DescMessage>(messageDesc: Desc, a: MessageShape<Desc>, b: MessageShape<Desc>): boolean;