@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.
- package/dist/cjs/clone.d.ts +6 -0
- package/dist/cjs/clone.js +77 -0
- package/dist/cjs/codegenv1/boot.d.ts +63 -0
- package/dist/cjs/codegenv1/boot.js +102 -0
- package/dist/cjs/codegenv1/embed.d.ts +43 -0
- package/dist/cjs/codegenv1/embed.js +238 -0
- package/dist/cjs/codegenv1/enum.d.ts +17 -0
- package/dist/cjs/codegenv1/enum.js +41 -0
- package/dist/cjs/codegenv1/extension.d.ts +9 -0
- package/dist/cjs/codegenv1/extension.js +29 -0
- package/dist/cjs/codegenv1/file.d.ts +7 -0
- package/dist/cjs/codegenv1/file.js +38 -0
- package/dist/cjs/codegenv1/index.d.ts +9 -0
- package/dist/cjs/codegenv1/index.js +38 -0
- package/dist/cjs/codegenv1/message.d.ts +9 -0
- package/dist/cjs/codegenv1/message.js +25 -0
- package/dist/cjs/codegenv1/restore-json-names.d.ts +5 -0
- package/dist/cjs/codegenv1/restore-json-names.js +30 -0
- package/dist/cjs/codegenv1/service.d.ts +8 -0
- package/dist/cjs/codegenv1/service.js +28 -0
- package/dist/cjs/codegenv1/symbols.d.ts +125 -0
- package/dist/cjs/codegenv1/symbols.js +67 -0
- package/dist/cjs/codegenv1/types.d.ts +72 -0
- package/dist/cjs/codegenv1/types.js +21 -0
- package/dist/cjs/create.d.ts +9 -0
- package/dist/cjs/create.js +231 -0
- package/dist/{esm/descriptor-set.d.ts → cjs/desc-types.d.ts} +162 -243
- package/dist/cjs/equals.d.ts +9 -0
- package/dist/cjs/equals.js +133 -0
- package/dist/cjs/extensions.d.ts +59 -0
- package/dist/cjs/extensions.js +169 -0
- package/dist/cjs/fields.d.ts +23 -0
- package/dist/cjs/fields.js +46 -0
- package/dist/cjs/from-binary.d.ts +34 -0
- package/dist/cjs/from-binary.js +211 -0
- package/dist/cjs/from-json.d.ts +48 -0
- package/dist/cjs/from-json.js +610 -0
- package/dist/cjs/index.d.ts +16 -42
- package/dist/cjs/index.js +23 -55
- package/dist/cjs/is-message.d.ts +5 -20
- package/dist/cjs/is-message.js +11 -29
- package/dist/cjs/json-value.d.ts +16 -0
- package/dist/cjs/proto-int64.js +2 -2
- package/dist/cjs/reflect/error.d.ts +9 -0
- package/dist/cjs/reflect/error.js +36 -0
- package/dist/cjs/reflect/guard.d.ts +20 -0
- package/dist/cjs/reflect/guard.js +78 -0
- package/dist/cjs/reflect/index.d.ts +8 -0
- package/dist/cjs/reflect/index.js +41 -0
- package/dist/cjs/reflect/names.d.ts +11 -0
- package/dist/cjs/reflect/names.js +74 -0
- package/dist/cjs/reflect/nested-types.d.ts +12 -0
- package/dist/cjs/reflect/nested-types.js +71 -0
- package/dist/cjs/reflect/reflect-check.d.ts +10 -0
- package/dist/cjs/reflect/reflect-check.js +150 -0
- package/dist/cjs/reflect/reflect-types.d.ts +284 -0
- package/dist/cjs/{extension.js → reflect/reflect-types.js} +1 -0
- package/dist/cjs/reflect/reflect.d.ts +32 -0
- package/dist/cjs/reflect/reflect.js +434 -0
- package/dist/cjs/reflect/registry.d.ts +82 -0
- package/dist/cjs/reflect/registry.js +879 -0
- package/dist/{esm → cjs/reflect}/scalar.d.ts +21 -1
- package/dist/cjs/reflect/scalar.js +298 -0
- package/dist/cjs/reflect/unsafe.d.ts +58 -0
- package/dist/cjs/reflect/unsafe.js +166 -0
- package/dist/cjs/to-binary.d.ts +24 -0
- package/dist/cjs/to-binary.js +192 -0
- package/dist/cjs/to-json.d.ts +50 -0
- package/dist/cjs/to-json.js +364 -0
- package/dist/cjs/types.d.ts +68 -0
- package/dist/cjs/wire/base64-encoding.d.ts +23 -0
- package/dist/cjs/wire/base64-encoding.js +156 -0
- package/dist/cjs/wire/binary-encoding.d.ts +244 -0
- package/dist/cjs/{binary-encoding.js → wire/binary-encoding.js} +27 -20
- package/dist/cjs/wire/index.d.ts +5 -0
- package/dist/cjs/wire/index.js +34 -0
- package/dist/cjs/wire/size-delimited.d.ts +51 -0
- package/dist/cjs/wire/size-delimited.js +154 -0
- package/dist/cjs/wire/text-encoding.d.ts +26 -0
- package/dist/cjs/wire/text-encoding.js +55 -0
- package/dist/cjs/wire/text-format.d.ts +14 -0
- package/dist/cjs/{private → wire}/text-format.js +12 -2
- package/dist/{esm/google → cjs/wire}/varint.d.ts +2 -2
- package/dist/cjs/{google → wire}/varint.js +11 -10
- package/dist/cjs/wkt/any.d.ts +38 -0
- package/dist/cjs/wkt/any.js +76 -0
- package/dist/{esm → cjs/wkt/gen}/google/protobuf/any_pb.d.ts +13 -27
- package/dist/cjs/wkt/gen/google/protobuf/any_pb.js +27 -0
- package/dist/cjs/{google → wkt/gen/google}/protobuf/api_pb.d.ts +29 -38
- package/dist/cjs/wkt/gen/google/protobuf/api_pb.js +39 -0
- package/dist/cjs/{google → wkt/gen/google}/protobuf/compiler/plugin_pb.d.ts +67 -75
- package/dist/cjs/wkt/gen/google/protobuf/compiler/plugin_pb.js +68 -0
- package/dist/cjs/{google → wkt/gen/google}/protobuf/descriptor_pb.d.ts +564 -527
- package/dist/cjs/wkt/gen/google/protobuf/descriptor_pb.js +794 -0
- package/dist/cjs/{google → wkt/gen/google}/protobuf/duration_pb.d.ts +13 -18
- package/dist/cjs/wkt/gen/google/protobuf/duration_pb.js +27 -0
- package/dist/cjs/wkt/gen/google/protobuf/empty_pb.d.ts +24 -0
- package/dist/cjs/wkt/gen/google/protobuf/empty_pb.js +27 -0
- package/dist/{esm → cjs/wkt/gen}/google/protobuf/field_mask_pb.d.ts +13 -18
- package/dist/cjs/wkt/gen/google/protobuf/field_mask_pb.js +27 -0
- package/dist/cjs/wkt/gen/google/protobuf/source_context_pb.d.ts +26 -0
- package/dist/cjs/wkt/gen/google/protobuf/source_context_pb.js +27 -0
- package/dist/{esm → cjs/wkt/gen}/google/protobuf/struct_pb.d.ts +44 -55
- package/dist/cjs/wkt/gen/google/protobuf/struct_pb.js +59 -0
- package/dist/cjs/{google → wkt/gen/google}/protobuf/timestamp_pb.d.ts +13 -21
- package/dist/cjs/wkt/gen/google/protobuf/timestamp_pb.js +27 -0
- package/dist/{esm → cjs/wkt/gen}/google/protobuf/type_pb.d.ts +77 -80
- package/dist/cjs/wkt/gen/google/protobuf/type_pb.js +242 -0
- package/dist/cjs/wkt/gen/google/protobuf/wrappers_pb.d.ts +186 -0
- package/dist/cjs/wkt/gen/google/protobuf/wrappers_pb.js +67 -0
- package/dist/cjs/wkt/index.d.ts +15 -0
- package/dist/cjs/wkt/index.js +44 -0
- package/dist/cjs/wkt/timestamp.d.ts +21 -0
- package/dist/cjs/wkt/timestamp.js +58 -0
- package/dist/cjs/wkt/wrappers.d.ts +15 -0
- package/dist/cjs/wkt/wrappers.js +43 -0
- package/dist/esm/clone.d.ts +6 -0
- package/dist/esm/clone.js +73 -0
- package/dist/esm/codegenv1/boot.d.ts +63 -0
- package/dist/esm/codegenv1/boot.js +97 -0
- package/dist/esm/codegenv1/embed.d.ts +43 -0
- package/dist/esm/codegenv1/embed.js +232 -0
- package/dist/esm/codegenv1/enum.d.ts +17 -0
- package/dist/esm/codegenv1/enum.js +36 -0
- package/dist/esm/codegenv1/extension.d.ts +9 -0
- package/dist/esm/codegenv1/extension.js +25 -0
- package/dist/esm/codegenv1/file.d.ts +7 -0
- package/dist/esm/codegenv1/file.js +34 -0
- package/dist/esm/codegenv1/index.d.ts +9 -0
- package/dist/esm/codegenv1/index.js +22 -0
- package/dist/esm/codegenv1/message.d.ts +9 -0
- package/dist/esm/codegenv1/message.js +21 -0
- package/dist/esm/codegenv1/restore-json-names.d.ts +5 -0
- package/dist/esm/codegenv1/restore-json-names.js +26 -0
- package/dist/esm/codegenv1/service.d.ts +8 -0
- package/dist/esm/codegenv1/service.js +24 -0
- package/dist/esm/codegenv1/symbols.d.ts +125 -0
- package/dist/esm/codegenv1/symbols.js +64 -0
- package/dist/esm/codegenv1/types.d.ts +72 -0
- package/dist/esm/{field-list.js → codegenv1/types.js} +6 -0
- package/dist/esm/create.d.ts +9 -0
- package/dist/esm/create.js +228 -0
- package/dist/{cjs/descriptor-set.d.ts → esm/desc-types.d.ts} +162 -243
- package/dist/esm/equals.d.ts +9 -0
- package/dist/esm/equals.js +129 -0
- package/dist/esm/extensions.d.ts +59 -0
- package/dist/esm/extensions.js +159 -0
- package/dist/esm/fields.d.ts +23 -0
- package/dist/esm/fields.js +41 -0
- package/dist/esm/from-binary.d.ts +34 -0
- package/dist/esm/from-binary.js +205 -0
- package/dist/esm/from-json.d.ts +48 -0
- package/dist/esm/from-json.js +603 -0
- package/dist/esm/index.d.ts +16 -42
- package/dist/esm/index.js +13 -30
- package/dist/esm/is-message.d.ts +5 -20
- package/dist/esm/is-message.js +11 -29
- package/dist/esm/json-value.d.ts +16 -0
- package/dist/esm/proto-int64.js +2 -2
- package/dist/esm/reflect/error.d.ts +9 -0
- package/dist/esm/reflect/error.js +31 -0
- package/dist/esm/reflect/guard.d.ts +20 -0
- package/dist/esm/reflect/guard.js +70 -0
- package/dist/esm/reflect/index.d.ts +8 -0
- package/dist/esm/reflect/index.js +21 -0
- package/dist/esm/reflect/names.d.ts +11 -0
- package/dist/esm/reflect/names.js +69 -0
- package/dist/esm/reflect/nested-types.d.ts +12 -0
- package/dist/esm/reflect/nested-types.js +66 -0
- package/dist/esm/reflect/reflect-check.d.ts +10 -0
- package/dist/esm/reflect/reflect-check.js +143 -0
- package/dist/esm/reflect/reflect-types.d.ts +284 -0
- package/dist/esm/reflect/reflect-types.js +15 -0
- package/dist/esm/reflect/reflect.d.ts +32 -0
- package/dist/esm/reflect/reflect.js +428 -0
- package/dist/esm/reflect/registry.d.ts +82 -0
- package/dist/esm/reflect/registry.js +874 -0
- package/dist/{cjs → esm/reflect}/scalar.d.ts +21 -1
- package/dist/esm/reflect/scalar.js +289 -0
- package/dist/esm/reflect/unsafe.d.ts +58 -0
- package/dist/esm/reflect/unsafe.js +155 -0
- package/dist/esm/to-binary.d.ts +24 -0
- package/dist/esm/to-binary.js +187 -0
- package/dist/esm/to-json.d.ts +50 -0
- package/dist/esm/to-json.js +359 -0
- package/dist/esm/types.d.ts +68 -0
- package/dist/esm/wire/base64-encoding.d.ts +23 -0
- package/dist/esm/wire/base64-encoding.js +151 -0
- package/dist/esm/wire/binary-encoding.d.ts +244 -0
- package/dist/esm/{binary-encoding.js → wire/binary-encoding.js} +27 -20
- package/dist/esm/wire/index.d.ts +5 -0
- package/dist/esm/wire/index.js +18 -0
- package/dist/esm/wire/size-delimited.d.ts +51 -0
- package/dist/esm/wire/size-delimited.js +148 -0
- package/dist/esm/wire/text-encoding.d.ts +26 -0
- package/dist/esm/wire/text-encoding.js +50 -0
- package/dist/esm/wire/text-format.d.ts +14 -0
- package/dist/esm/{private → wire}/text-format.js +12 -2
- package/dist/{cjs/google → esm/wire}/varint.d.ts +2 -2
- package/dist/esm/{google → wire}/varint.js +11 -10
- package/dist/esm/wkt/any.d.ts +38 -0
- package/dist/esm/wkt/any.js +69 -0
- package/dist/{cjs → esm/wkt/gen}/google/protobuf/any_pb.d.ts +13 -27
- package/dist/esm/wkt/gen/google/protobuf/any_pb.js +24 -0
- package/dist/esm/{google → wkt/gen/google}/protobuf/api_pb.d.ts +29 -38
- package/dist/esm/wkt/gen/google/protobuf/api_pb.js +36 -0
- package/dist/esm/{google → wkt/gen/google}/protobuf/compiler/plugin_pb.d.ts +67 -75
- package/dist/esm/wkt/gen/google/protobuf/compiler/plugin_pb.js +65 -0
- package/dist/esm/{google → wkt/gen/google}/protobuf/descriptor_pb.d.ts +564 -527
- package/dist/esm/wkt/gen/google/protobuf/descriptor_pb.js +790 -0
- package/dist/esm/{google → wkt/gen/google}/protobuf/duration_pb.d.ts +13 -18
- package/dist/esm/wkt/gen/google/protobuf/duration_pb.js +24 -0
- package/dist/esm/wkt/gen/google/protobuf/empty_pb.d.ts +24 -0
- package/dist/esm/wkt/gen/google/protobuf/empty_pb.js +24 -0
- package/dist/{cjs → esm/wkt/gen}/google/protobuf/field_mask_pb.d.ts +13 -18
- package/dist/esm/wkt/gen/google/protobuf/field_mask_pb.js +24 -0
- package/dist/esm/wkt/gen/google/protobuf/source_context_pb.d.ts +26 -0
- package/dist/esm/wkt/gen/google/protobuf/source_context_pb.js +24 -0
- package/dist/{cjs → esm/wkt/gen}/google/protobuf/struct_pb.d.ts +44 -55
- package/dist/esm/wkt/gen/google/protobuf/struct_pb.js +56 -0
- package/dist/esm/{google → wkt/gen/google}/protobuf/timestamp_pb.d.ts +13 -21
- package/dist/esm/wkt/gen/google/protobuf/timestamp_pb.js +24 -0
- package/dist/{cjs → esm/wkt/gen}/google/protobuf/type_pb.d.ts +77 -80
- package/dist/esm/wkt/gen/google/protobuf/type_pb.js +239 -0
- package/dist/esm/wkt/gen/google/protobuf/wrappers_pb.d.ts +186 -0
- package/dist/esm/wkt/gen/google/protobuf/wrappers_pb.js +64 -0
- package/dist/esm/wkt/index.d.ts +15 -0
- package/dist/esm/wkt/index.js +28 -0
- package/dist/esm/wkt/timestamp.d.ts +21 -0
- package/dist/esm/wkt/timestamp.js +50 -0
- package/dist/esm/wkt/wrappers.d.ts +15 -0
- package/dist/esm/wkt/wrappers.js +38 -0
- package/package.json +37 -5
- package/dist/cjs/binary-encoding.d.ts +0 -420
- package/dist/cjs/binary-format.d.ts +0 -113
- package/dist/cjs/codegen-info.d.ts +0 -33
- package/dist/cjs/codegen-info.js +0 -69
- package/dist/cjs/create-descriptor-set.d.ts +0 -36
- package/dist/cjs/create-descriptor-set.js +0 -910
- package/dist/cjs/create-registry-from-desc.d.ts +0 -15
- package/dist/cjs/create-registry-from-desc.js +0 -264
- package/dist/cjs/create-registry.d.ts +0 -9
- package/dist/cjs/create-registry.js +0 -94
- package/dist/cjs/enum.d.ts +0 -35
- package/dist/cjs/extension-accessor.d.ts +0 -35
- package/dist/cjs/extension-accessor.js +0 -114
- package/dist/cjs/extension.d.ts +0 -24
- package/dist/cjs/field-list.d.ts +0 -27
- package/dist/cjs/field-list.js +0 -15
- package/dist/cjs/field.d.ts +0 -314
- package/dist/cjs/field.js +0 -15
- package/dist/cjs/google/protobuf/any_pb.js +0 -273
- package/dist/cjs/google/protobuf/api_pb.js +0 -316
- package/dist/cjs/google/protobuf/compiler/plugin_pb.js +0 -219
- package/dist/cjs/google/protobuf/descriptor_pb.js +0 -2034
- package/dist/cjs/google/protobuf/duration_pb.js +0 -169
- package/dist/cjs/google/protobuf/empty_pb.d.ts +0 -28
- package/dist/cjs/google/protobuf/empty_pb.js +0 -52
- package/dist/cjs/google/protobuf/field_mask_pb.js +0 -311
- package/dist/cjs/google/protobuf/source_context_pb.d.ts +0 -29
- package/dist/cjs/google/protobuf/source_context_pb.js +0 -55
- package/dist/cjs/google/protobuf/struct_pb.js +0 -240
- package/dist/cjs/google/protobuf/timestamp_pb.js +0 -213
- package/dist/cjs/google/protobuf/type_pb.js +0 -562
- package/dist/cjs/google/protobuf/wrappers_pb.d.ts +0 -267
- package/dist/cjs/google/protobuf/wrappers_pb.js +0 -569
- package/dist/cjs/json-format.d.ts +0 -111
- package/dist/cjs/json-format.js +0 -15
- package/dist/cjs/message-type.d.ts +0 -51
- package/dist/cjs/message-type.js +0 -15
- package/dist/cjs/message.d.ts +0 -131
- package/dist/cjs/message.js +0 -129
- package/dist/cjs/private/binary-format.d.ts +0 -7
- package/dist/cjs/private/binary-format.js +0 -430
- package/dist/cjs/private/enum.d.ts +0 -27
- package/dist/cjs/private/enum.js +0 -94
- package/dist/cjs/private/extensions.d.ts +0 -34
- package/dist/cjs/private/extensions.js +0 -86
- package/dist/cjs/private/feature-set.d.ts +0 -19
- package/dist/cjs/private/feature-set.js +0 -106
- package/dist/cjs/private/field-list.d.ts +0 -18
- package/dist/cjs/private/field-list.js +0 -76
- package/dist/cjs/private/field-normalize.d.ts +0 -9
- package/dist/cjs/private/field-normalize.js +0 -69
- package/dist/cjs/private/field-wrapper.d.ts +0 -25
- package/dist/cjs/private/field-wrapper.js +0 -57
- package/dist/cjs/private/field.d.ts +0 -16
- package/dist/cjs/private/field.js +0 -45
- package/dist/cjs/private/json-format.d.ts +0 -2
- package/dist/cjs/private/json-format.js +0 -626
- package/dist/cjs/private/message-type.d.ts +0 -18
- package/dist/cjs/private/message-type.js +0 -50
- package/dist/cjs/private/names.d.ts +0 -43
- package/dist/cjs/private/names.js +0 -278
- package/dist/cjs/private/options-map.d.ts +0 -7
- package/dist/cjs/private/options-map.js +0 -15
- package/dist/cjs/private/proto-runtime.d.ts +0 -53
- package/dist/cjs/private/proto-runtime.js +0 -41
- package/dist/cjs/private/reflect.d.ts +0 -9
- package/dist/cjs/private/reflect.js +0 -79
- package/dist/cjs/private/reify-wkt.d.ts +0 -102
- package/dist/cjs/private/reify-wkt.js +0 -172
- package/dist/cjs/private/scalars.d.ts +0 -18
- package/dist/cjs/private/scalars.js +0 -105
- package/dist/cjs/private/text-format.d.ts +0 -4
- package/dist/cjs/private/util-common.d.ts +0 -2
- package/dist/cjs/private/util-common.js +0 -237
- package/dist/cjs/private/util.d.ts +0 -38
- package/dist/cjs/private/util.js +0 -15
- package/dist/cjs/proto-base64.d.ts +0 -18
- package/dist/cjs/proto-base64.js +0 -128
- package/dist/cjs/proto-delimited.d.ts +0 -54
- package/dist/cjs/proto-delimited.js +0 -155
- package/dist/cjs/proto-double.d.ts +0 -5
- package/dist/cjs/proto-double.js +0 -29
- package/dist/cjs/proto2.d.ts +0 -4
- package/dist/cjs/proto2.js +0 -53
- package/dist/cjs/proto3.d.ts +0 -4
- package/dist/cjs/proto3.js +0 -56
- package/dist/cjs/scalar.js +0 -81
- package/dist/cjs/service-type.d.ts +0 -96
- package/dist/cjs/service-type.js +0 -53
- package/dist/cjs/to-plain-message.d.ts +0 -12
- package/dist/cjs/to-plain-message.js +0 -72
- package/dist/cjs/type-registry.d.ts +0 -57
- package/dist/cjs/type-registry.js +0 -15
- package/dist/esm/binary-encoding.d.ts +0 -420
- package/dist/esm/binary-format.d.ts +0 -113
- package/dist/esm/codegen-info.d.ts +0 -33
- package/dist/esm/codegen-info.js +0 -67
- package/dist/esm/create-descriptor-set.d.ts +0 -36
- package/dist/esm/create-descriptor-set.js +0 -906
- package/dist/esm/create-registry-from-desc.d.ts +0 -15
- package/dist/esm/create-registry-from-desc.js +0 -261
- package/dist/esm/create-registry.d.ts +0 -9
- package/dist/esm/create-registry.js +0 -90
- package/dist/esm/descriptor-set.js +0 -14
- package/dist/esm/enum.d.ts +0 -35
- package/dist/esm/extension-accessor.d.ts +0 -35
- package/dist/esm/extension-accessor.js +0 -107
- package/dist/esm/extension.d.ts +0 -24
- package/dist/esm/field-list.d.ts +0 -27
- package/dist/esm/field.d.ts +0 -314
- package/dist/esm/field.js +0 -14
- package/dist/esm/google/protobuf/any_pb.js +0 -269
- package/dist/esm/google/protobuf/api_pb.js +0 -310
- package/dist/esm/google/protobuf/compiler/plugin_pb.js +0 -212
- package/dist/esm/google/protobuf/descriptor_pb.js +0 -1999
- package/dist/esm/google/protobuf/duration_pb.js +0 -165
- package/dist/esm/google/protobuf/empty_pb.d.ts +0 -28
- package/dist/esm/google/protobuf/empty_pb.js +0 -48
- package/dist/esm/google/protobuf/field_mask_pb.js +0 -307
- package/dist/esm/google/protobuf/source_context_pb.d.ts +0 -29
- package/dist/esm/google/protobuf/source_context_pb.js +0 -51
- package/dist/esm/google/protobuf/struct_pb.js +0 -234
- package/dist/esm/google/protobuf/timestamp_pb.js +0 -209
- package/dist/esm/google/protobuf/type_pb.js +0 -554
- package/dist/esm/google/protobuf/wrappers_pb.d.ts +0 -267
- package/dist/esm/google/protobuf/wrappers_pb.js +0 -557
- package/dist/esm/json-format.d.ts +0 -111
- package/dist/esm/json-format.js +0 -14
- package/dist/esm/message-type.d.ts +0 -51
- package/dist/esm/message-type.js +0 -14
- package/dist/esm/message.d.ts +0 -131
- package/dist/esm/message.js +0 -125
- package/dist/esm/private/binary-format.d.ts +0 -7
- package/dist/esm/private/binary-format.js +0 -426
- package/dist/esm/private/enum.d.ts +0 -27
- package/dist/esm/private/enum.js +0 -87
- package/dist/esm/private/extensions.d.ts +0 -34
- package/dist/esm/private/extensions.js +0 -81
- package/dist/esm/private/feature-set.d.ts +0 -19
- package/dist/esm/private/feature-set.js +0 -102
- package/dist/esm/private/field-list.d.ts +0 -18
- package/dist/esm/private/field-list.js +0 -72
- package/dist/esm/private/field-normalize.d.ts +0 -9
- package/dist/esm/private/field-normalize.js +0 -65
- package/dist/esm/private/field-wrapper.d.ts +0 -25
- package/dist/esm/private/field-wrapper.js +0 -53
- package/dist/esm/private/field.d.ts +0 -16
- package/dist/esm/private/field.js +0 -41
- package/dist/esm/private/json-format.d.ts +0 -2
- package/dist/esm/private/json-format.js +0 -623
- package/dist/esm/private/message-type.d.ts +0 -18
- package/dist/esm/private/message-type.js +0 -46
- package/dist/esm/private/names.d.ts +0 -43
- package/dist/esm/private/names.js +0 -269
- package/dist/esm/private/options-map.d.ts +0 -7
- package/dist/esm/private/options-map.js +0 -14
- package/dist/esm/private/proto-runtime.d.ts +0 -53
- package/dist/esm/private/proto-runtime.js +0 -37
- package/dist/esm/private/reflect.d.ts +0 -9
- package/dist/esm/private/reflect.js +0 -74
- package/dist/esm/private/reify-wkt.d.ts +0 -102
- package/dist/esm/private/reify-wkt.js +0 -168
- package/dist/esm/private/scalars.d.ts +0 -18
- package/dist/esm/private/scalars.js +0 -99
- package/dist/esm/private/text-format.d.ts +0 -4
- package/dist/esm/private/util-common.d.ts +0 -2
- package/dist/esm/private/util-common.js +0 -234
- package/dist/esm/private/util.d.ts +0 -38
- package/dist/esm/private/util.js +0 -14
- package/dist/esm/proto-base64.d.ts +0 -18
- package/dist/esm/proto-base64.js +0 -125
- package/dist/esm/proto-delimited.d.ts +0 -54
- package/dist/esm/proto-delimited.js +0 -152
- package/dist/esm/proto-double.d.ts +0 -5
- package/dist/esm/proto-double.js +0 -26
- package/dist/esm/proto2.d.ts +0 -4
- package/dist/esm/proto2.js +0 -50
- package/dist/esm/proto3.d.ts +0 -4
- package/dist/esm/proto3.js +0 -53
- package/dist/esm/scalar.js +0 -78
- package/dist/esm/service-type.d.ts +0 -96
- package/dist/esm/service-type.js +0 -50
- package/dist/esm/to-plain-message.d.ts +0 -12
- package/dist/esm/to-plain-message.js +0 -70
- package/dist/esm/type-registry.d.ts +0 -57
- package/dist/esm/type-registry.js +0 -14
- /package/dist/cjs/{binary-format.js → desc-types.js} +0 -0
- /package/dist/cjs/{descriptor-set.js → json-value.js} +0 -0
- /package/dist/cjs/{private → reflect}/assert.d.ts +0 -0
- /package/dist/cjs/{private → reflect}/assert.js +0 -0
- /package/dist/cjs/{enum.js → types.js} +0 -0
- /package/dist/esm/{binary-format.js → desc-types.js} +0 -0
- /package/dist/esm/{enum.js → json-value.js} +0 -0
- /package/dist/esm/{private → reflect}/assert.d.ts +0 -0
- /package/dist/esm/{private → reflect}/assert.js +0 -0
- /package/dist/esm/{extension.js → types.js} +0 -0
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Copyright 2021-2024 Buf Technologies, Inc.
|
|
3
|
+
//
|
|
4
|
+
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
// you may not use this file except in compliance with the License.
|
|
6
|
+
// You may obtain a copy of the License at
|
|
7
|
+
//
|
|
8
|
+
// http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
//
|
|
10
|
+
// Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
// See the License for the specific language governing permissions and
|
|
14
|
+
// limitations under the License.
|
|
15
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
+
exports.formatVal = exports.checkMapEntry = exports.checkListItem = exports.checkField = void 0;
|
|
17
|
+
const scalar_js_1 = require("./scalar.js");
|
|
18
|
+
const scalar_js_2 = require("./scalar.js");
|
|
19
|
+
const is_message_js_1 = require("../is-message.js");
|
|
20
|
+
const error_js_1 = require("./error.js");
|
|
21
|
+
const guard_js_1 = require("./guard.js");
|
|
22
|
+
function checkField(field, value) {
|
|
23
|
+
const check = field.fieldKind == "list"
|
|
24
|
+
? (0, guard_js_1.isReflectList)(value, field)
|
|
25
|
+
: field.fieldKind == "map"
|
|
26
|
+
? (0, guard_js_1.isReflectMap)(value, field)
|
|
27
|
+
: checkSingular(field, value);
|
|
28
|
+
if (check === true) {
|
|
29
|
+
return undefined;
|
|
30
|
+
}
|
|
31
|
+
let reason;
|
|
32
|
+
switch (field.fieldKind) {
|
|
33
|
+
case "list":
|
|
34
|
+
reason = `expected ${formatReflectList(field)}, got ${formatVal(value)}`;
|
|
35
|
+
break;
|
|
36
|
+
case "map":
|
|
37
|
+
reason = `expected ${formatReflectMap(field)}, got ${formatVal(value)}`;
|
|
38
|
+
break;
|
|
39
|
+
default: {
|
|
40
|
+
reason = reasonSingular(field, value, check);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
return new error_js_1.FieldError(field, reason);
|
|
44
|
+
}
|
|
45
|
+
exports.checkField = checkField;
|
|
46
|
+
function checkListItem(field, index, value) {
|
|
47
|
+
const check = checkSingular(field, value);
|
|
48
|
+
if (check !== true) {
|
|
49
|
+
return new error_js_1.FieldError(field, `list item #${index + 1}: ${reasonSingular(field, value, check)}`);
|
|
50
|
+
}
|
|
51
|
+
return undefined;
|
|
52
|
+
}
|
|
53
|
+
exports.checkListItem = checkListItem;
|
|
54
|
+
function checkMapEntry(field, key, value) {
|
|
55
|
+
const checkKey = (0, scalar_js_2.checkScalarValue)(key, field.mapKey);
|
|
56
|
+
if (checkKey !== true) {
|
|
57
|
+
return new error_js_1.FieldError(field, `invalid map key: ${reasonSingular({ scalar: field.mapKey }, key, checkKey)}`);
|
|
58
|
+
}
|
|
59
|
+
const checkVal = checkSingular(field, value);
|
|
60
|
+
if (checkVal !== true) {
|
|
61
|
+
return new error_js_1.FieldError(field, `map entry ${formatVal(key)}: ${reasonSingular(field, value, checkVal)}`);
|
|
62
|
+
}
|
|
63
|
+
return undefined;
|
|
64
|
+
}
|
|
65
|
+
exports.checkMapEntry = checkMapEntry;
|
|
66
|
+
function checkSingular(field, value) {
|
|
67
|
+
if (field.scalar !== undefined) {
|
|
68
|
+
return (0, scalar_js_2.checkScalarValue)(value, field.scalar);
|
|
69
|
+
}
|
|
70
|
+
if (field.enum !== undefined) {
|
|
71
|
+
if (field.enum.open) {
|
|
72
|
+
return Number.isInteger(value);
|
|
73
|
+
}
|
|
74
|
+
return field.enum.values.some((v) => v.number === value);
|
|
75
|
+
}
|
|
76
|
+
return (0, guard_js_1.isReflectMessage)(value, field.message);
|
|
77
|
+
}
|
|
78
|
+
function reasonSingular(field, val, details) {
|
|
79
|
+
details =
|
|
80
|
+
typeof details == "string" ? `: ${details}` : `, got ${formatVal(val)}`;
|
|
81
|
+
if (field.scalar !== undefined) {
|
|
82
|
+
return `expected ${(0, scalar_js_1.scalarTypeDescription)(field.scalar)}` + details;
|
|
83
|
+
}
|
|
84
|
+
else if (field.enum !== undefined) {
|
|
85
|
+
return `expected ${field.enum.toString()}` + details;
|
|
86
|
+
}
|
|
87
|
+
return `expected ${formatReflectMessage(field.message)}` + details;
|
|
88
|
+
}
|
|
89
|
+
function formatVal(val) {
|
|
90
|
+
switch (typeof val) {
|
|
91
|
+
case "object":
|
|
92
|
+
if (val === null) {
|
|
93
|
+
return "null";
|
|
94
|
+
}
|
|
95
|
+
if (val instanceof Uint8Array) {
|
|
96
|
+
return `Uint8Array(${val.length})`;
|
|
97
|
+
}
|
|
98
|
+
if (Array.isArray(val)) {
|
|
99
|
+
return `Array(${val.length})`;
|
|
100
|
+
}
|
|
101
|
+
if ((0, guard_js_1.isReflectList)(val)) {
|
|
102
|
+
return formatReflectList(val.field());
|
|
103
|
+
}
|
|
104
|
+
if ((0, guard_js_1.isReflectMap)(val)) {
|
|
105
|
+
return formatReflectMap(val.field());
|
|
106
|
+
}
|
|
107
|
+
if ((0, guard_js_1.isReflectMessage)(val)) {
|
|
108
|
+
return formatReflectMessage(val.desc);
|
|
109
|
+
}
|
|
110
|
+
if ((0, is_message_js_1.isMessage)(val)) {
|
|
111
|
+
return `message ${val.$typeName}`;
|
|
112
|
+
}
|
|
113
|
+
return "object";
|
|
114
|
+
case "string":
|
|
115
|
+
return val.length > 30 ? "string" : `"${val.split('"').join('\\"')}"`;
|
|
116
|
+
case "boolean":
|
|
117
|
+
return String(val);
|
|
118
|
+
case "number":
|
|
119
|
+
return String(val);
|
|
120
|
+
case "bigint":
|
|
121
|
+
return String(val) + "n";
|
|
122
|
+
default:
|
|
123
|
+
// "symbol" | "undefined" | "object" | "function"
|
|
124
|
+
return typeof val;
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
exports.formatVal = formatVal;
|
|
128
|
+
function formatReflectMessage(desc) {
|
|
129
|
+
return `ReflectMessage (${desc.typeName})`;
|
|
130
|
+
}
|
|
131
|
+
function formatReflectList(field) {
|
|
132
|
+
switch (field.listKind) {
|
|
133
|
+
case "message":
|
|
134
|
+
return `ReflectList (${field.message.toString()})`;
|
|
135
|
+
case "enum":
|
|
136
|
+
return `ReflectList (${field.enum.toString()})`;
|
|
137
|
+
case "scalar":
|
|
138
|
+
return `ReflectList (${scalar_js_1.ScalarType[field.scalar]})`;
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
function formatReflectMap(field) {
|
|
142
|
+
switch (field.mapKind) {
|
|
143
|
+
case "message":
|
|
144
|
+
return `ReflectMap (${scalar_js_1.ScalarType[field.mapKey]}, ${field.message.toString()})`;
|
|
145
|
+
case "enum":
|
|
146
|
+
return `ReflectMap (${scalar_js_1.ScalarType[field.mapKey]}, ${field.enum.toString()})`;
|
|
147
|
+
case "scalar":
|
|
148
|
+
return `ReflectMap (${scalar_js_1.ScalarType[field.mapKey]}, ${scalar_js_1.ScalarType[field.scalar]})`;
|
|
149
|
+
}
|
|
150
|
+
}
|
|
@@ -0,0 +1,284 @@
|
|
|
1
|
+
import type { DescField, DescMessage, DescOneof } from "../desc-types.js";
|
|
2
|
+
import { FieldError } from "./error.js";
|
|
3
|
+
import { unsafeLocal } from "./unsafe.js";
|
|
4
|
+
import type { Message, UnknownField } from "../types.js";
|
|
5
|
+
import type { LongType, ScalarValue } from "./scalar.js";
|
|
6
|
+
/**
|
|
7
|
+
* ReflectMessage provides dynamic access and manipulation of a message.
|
|
8
|
+
*/
|
|
9
|
+
export interface ReflectMessage {
|
|
10
|
+
/**
|
|
11
|
+
* The underlying message instance.
|
|
12
|
+
*/
|
|
13
|
+
readonly message: Message;
|
|
14
|
+
/**
|
|
15
|
+
* The descriptor for the message.
|
|
16
|
+
*/
|
|
17
|
+
readonly desc: DescMessage;
|
|
18
|
+
/**
|
|
19
|
+
* The fields of the message. This is a shortcut to message.fields.
|
|
20
|
+
*/
|
|
21
|
+
readonly fields: readonly DescField[];
|
|
22
|
+
/**
|
|
23
|
+
* The fields of the message, sorted by field number ascending.
|
|
24
|
+
*/
|
|
25
|
+
readonly sortedFields: readonly DescField[];
|
|
26
|
+
/**
|
|
27
|
+
* Oneof groups of the message. This is a shortcut to message.oneofs.
|
|
28
|
+
*/
|
|
29
|
+
readonly oneofs: readonly DescOneof[];
|
|
30
|
+
/**
|
|
31
|
+
* Fields and oneof groups for this message. This is a shortcut to message.members.
|
|
32
|
+
*/
|
|
33
|
+
readonly members: readonly (DescField | DescOneof)[];
|
|
34
|
+
/**
|
|
35
|
+
* Find a field by number.
|
|
36
|
+
*/
|
|
37
|
+
findNumber(number: number): DescField | undefined;
|
|
38
|
+
/**
|
|
39
|
+
* Returns true if the field is set.
|
|
40
|
+
*
|
|
41
|
+
* - Scalar and enum fields with implicit presence (proto3):
|
|
42
|
+
* Set if not a zero value.
|
|
43
|
+
*
|
|
44
|
+
* - Scalar and enum fields with explicit presence (proto2, oneof):
|
|
45
|
+
* Set if a value was set when creating or parsing the message, or when a
|
|
46
|
+
* value was assigned to the field's property.
|
|
47
|
+
*
|
|
48
|
+
* - Message fields:
|
|
49
|
+
* Set if the property is not undefined.
|
|
50
|
+
*
|
|
51
|
+
* - List and map fields:
|
|
52
|
+
* Set if not empty.
|
|
53
|
+
*/
|
|
54
|
+
isSet(field: DescField): boolean;
|
|
55
|
+
/**
|
|
56
|
+
* Resets the field, so that isSet() will return false.
|
|
57
|
+
*/
|
|
58
|
+
clear(field: DescField): void;
|
|
59
|
+
/**
|
|
60
|
+
* Return the selected field of a oneof group.
|
|
61
|
+
*/
|
|
62
|
+
oneofCase(oneof: DescOneof): DescField | undefined;
|
|
63
|
+
/**
|
|
64
|
+
* Returns the field value. Values are converted or wrapped to make it easier
|
|
65
|
+
* to manipulate messages.
|
|
66
|
+
*
|
|
67
|
+
* - Scalar fields:
|
|
68
|
+
* Returns the value, but converts 64-bit integer fields with the option
|
|
69
|
+
* `jstype=JS_STRING` to a bigint value.
|
|
70
|
+
* If the field is not set, the default value is returned. If no default
|
|
71
|
+
* value is set, the zero value is returned.
|
|
72
|
+
*
|
|
73
|
+
* - Enum fields:
|
|
74
|
+
* Returns the numeric value. If the field is not set, the default value is
|
|
75
|
+
* returned. If no default value is set, the zero value is returned.
|
|
76
|
+
*
|
|
77
|
+
* - Message fields:
|
|
78
|
+
* Returns a ReflectMessage. If the field is not set, a new message is
|
|
79
|
+
* returned, but not set on the field.
|
|
80
|
+
*
|
|
81
|
+
* - List fields:
|
|
82
|
+
* Returns a ReflectList object.
|
|
83
|
+
*
|
|
84
|
+
* - Map fields:
|
|
85
|
+
* Returns a ReflectMap object.
|
|
86
|
+
*
|
|
87
|
+
* Note that get() never returns `undefined`. To determine whether a field is
|
|
88
|
+
* set, use isSet().
|
|
89
|
+
*/
|
|
90
|
+
get<Field extends DescField>(field: Field): ReflectGetValue<Field>;
|
|
91
|
+
/**
|
|
92
|
+
* Set a field value.
|
|
93
|
+
*
|
|
94
|
+
* Expects values in the same form that get() returns:
|
|
95
|
+
*
|
|
96
|
+
* - Scalar fields:
|
|
97
|
+
* 64-bit integer fields with the option `jstype=JS_STRING` as a bigint value.
|
|
98
|
+
*
|
|
99
|
+
* - Message fields:
|
|
100
|
+
* ReflectMessage.
|
|
101
|
+
*
|
|
102
|
+
* - List fields:
|
|
103
|
+
* ReflectList.
|
|
104
|
+
*
|
|
105
|
+
* - Map fields:
|
|
106
|
+
* ReflectMap.
|
|
107
|
+
*
|
|
108
|
+
* Returns an error if the value is invalid for the field. `undefined` is not
|
|
109
|
+
* a valid value. To reset a field, use clear().
|
|
110
|
+
*/
|
|
111
|
+
set<Field extends DescField>(field: Field, value: ReflectSetValue<Field>): FieldError | undefined;
|
|
112
|
+
/**
|
|
113
|
+
* Add an item to a list field.
|
|
114
|
+
*/
|
|
115
|
+
addListItem<Field extends DescField & {
|
|
116
|
+
fieldKind: "list";
|
|
117
|
+
}>(field: Field, value: ReflectAddListItemValue<Field>): FieldError | undefined;
|
|
118
|
+
/**
|
|
119
|
+
* Set a map entry.
|
|
120
|
+
*/
|
|
121
|
+
setMapEntry<Field extends DescField & {
|
|
122
|
+
fieldKind: "map";
|
|
123
|
+
}>(field: Field, key: MapEntryKey, value: ReflectSetMapEntryValue<Field>): FieldError | undefined;
|
|
124
|
+
/**
|
|
125
|
+
* Returns the unknown fields of the message.
|
|
126
|
+
*/
|
|
127
|
+
getUnknown(): UnknownField[] | undefined;
|
|
128
|
+
/**
|
|
129
|
+
* Sets the unknown fields of the message, overwriting any previous values.
|
|
130
|
+
*/
|
|
131
|
+
setUnknown(value: UnknownField[]): void;
|
|
132
|
+
[unsafeLocal]: Message;
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* ReflectList provides dynamic access and manipulation of a list field on a
|
|
136
|
+
* message.
|
|
137
|
+
*
|
|
138
|
+
* ReflectList is iterable - you can loop through all items with a for...of loop.
|
|
139
|
+
*
|
|
140
|
+
* Values are converted or wrapped to make it easier to manipulate them:
|
|
141
|
+
* - Scalar 64-bit integer fields with the option `jstype=JS_STRING` are
|
|
142
|
+
* converted to bigint.
|
|
143
|
+
* - Messages are wrapped in a ReflectMessage.
|
|
144
|
+
*/
|
|
145
|
+
export interface ReflectList<V = unknown> extends Iterable<V> {
|
|
146
|
+
/**
|
|
147
|
+
* Returns the list field.
|
|
148
|
+
*/
|
|
149
|
+
field(): DescField & {
|
|
150
|
+
fieldKind: "list";
|
|
151
|
+
};
|
|
152
|
+
/**
|
|
153
|
+
* The size of the list.
|
|
154
|
+
*/
|
|
155
|
+
readonly size: number;
|
|
156
|
+
/**
|
|
157
|
+
* Retrieves the item at the specified index, or undefined if the index
|
|
158
|
+
* is out of range.
|
|
159
|
+
*/
|
|
160
|
+
get(index: number): V | undefined;
|
|
161
|
+
/**
|
|
162
|
+
* Adds an item - or several items - at the end of the list.
|
|
163
|
+
* Returns an error if an item is invalid for this list.
|
|
164
|
+
*/
|
|
165
|
+
add(...item: V[]): FieldError | undefined;
|
|
166
|
+
/**
|
|
167
|
+
* Replaces the item at the specified index with the specified item.
|
|
168
|
+
* Returns an error if the index is out of range (index < 0 || index >= size).
|
|
169
|
+
* Returns an error if the item is invalid for this list.
|
|
170
|
+
*/
|
|
171
|
+
set(index: number, item: V): FieldError | undefined;
|
|
172
|
+
/**
|
|
173
|
+
* Removes all items from the list.
|
|
174
|
+
*/
|
|
175
|
+
clear(): void;
|
|
176
|
+
[Symbol.iterator](): IterableIterator<V>;
|
|
177
|
+
entries(): IterableIterator<[number, V]>;
|
|
178
|
+
keys(): IterableIterator<number>;
|
|
179
|
+
values(): IterableIterator<V>;
|
|
180
|
+
[unsafeLocal]: unknown[];
|
|
181
|
+
}
|
|
182
|
+
/**
|
|
183
|
+
* ReflectMap provides dynamic access and manipulation of a map field on a
|
|
184
|
+
* message.
|
|
185
|
+
*
|
|
186
|
+
* ReflectMap is iterable - you can loop through all entries with a for...of loop.
|
|
187
|
+
*
|
|
188
|
+
* Keys and values are converted or wrapped to make it easier to manipulate them:
|
|
189
|
+
* - A map field is a record object on a message, where keys are always strings.
|
|
190
|
+
* ReflectMap converts keys to their closest possible type in TypeScript.
|
|
191
|
+
* - Messages are wrapped in a ReflectMessage.
|
|
192
|
+
*/
|
|
193
|
+
export interface ReflectMap<K extends MapEntryKey = MapEntryKey, V = unknown> extends ReadonlyMap<K, V> {
|
|
194
|
+
/**
|
|
195
|
+
* Returns the map field.
|
|
196
|
+
*/
|
|
197
|
+
field(): DescField & {
|
|
198
|
+
fieldKind: "map";
|
|
199
|
+
};
|
|
200
|
+
/**
|
|
201
|
+
* Removes the entry for the specified key.
|
|
202
|
+
* Returns false if the key is unknown.
|
|
203
|
+
*/
|
|
204
|
+
delete(key: K): boolean;
|
|
205
|
+
/**
|
|
206
|
+
* Sets or replaces the item at the specified key with the specified value.
|
|
207
|
+
* Returns an error if the key or value is invalid for this map.
|
|
208
|
+
*/
|
|
209
|
+
set(key: K, value: V): FieldError | undefined;
|
|
210
|
+
/**
|
|
211
|
+
* Removes all entries from the map.
|
|
212
|
+
*/
|
|
213
|
+
clear(): void;
|
|
214
|
+
[unsafeLocal]: Record<string, unknown>;
|
|
215
|
+
}
|
|
216
|
+
/**
|
|
217
|
+
* A ReflectMap key.
|
|
218
|
+
*/
|
|
219
|
+
export type MapEntryKey = string | number | bigint | boolean;
|
|
220
|
+
type enumVal = number;
|
|
221
|
+
/**
|
|
222
|
+
* The return type of ReflectMessage.get()
|
|
223
|
+
*/
|
|
224
|
+
export type ReflectGetValue<Field extends DescField = DescField> = (Field extends {
|
|
225
|
+
fieldKind: "map";
|
|
226
|
+
} ? (Field extends {
|
|
227
|
+
mapKind: "message";
|
|
228
|
+
} ? ReflectMap<MapEntryKey, ReflectMessage> : Field extends {
|
|
229
|
+
mapKind: "enum";
|
|
230
|
+
} ? ReflectMap<MapEntryKey, enumVal> : Field extends {
|
|
231
|
+
mapKind: "scalar";
|
|
232
|
+
scalar: infer T;
|
|
233
|
+
} ? ReflectMap<MapEntryKey, ScalarValue<T, LongType.BIGINT>> : never) : Field extends {
|
|
234
|
+
fieldKind: "list";
|
|
235
|
+
} ? ReflectList : Field extends {
|
|
236
|
+
fieldKind: "enum";
|
|
237
|
+
} ? number : Field extends {
|
|
238
|
+
fieldKind: "message";
|
|
239
|
+
} ? ReflectMessage : Field extends {
|
|
240
|
+
fieldKind: "scalar";
|
|
241
|
+
scalar: infer T;
|
|
242
|
+
} ? ScalarValue<T> : never);
|
|
243
|
+
/**
|
|
244
|
+
* The type of the "value" argument of ReflectMessage.set()
|
|
245
|
+
*/
|
|
246
|
+
export type ReflectSetValue<Field extends DescField = DescField> = (Field extends {
|
|
247
|
+
fieldKind: "map";
|
|
248
|
+
} ? ReflectMap : Field extends {
|
|
249
|
+
fieldKind: "list";
|
|
250
|
+
} ? ReflectList : Field extends {
|
|
251
|
+
fieldKind: "enum";
|
|
252
|
+
} ? number : Field extends {
|
|
253
|
+
fieldKind: "message";
|
|
254
|
+
} ? ReflectMessage : Field extends {
|
|
255
|
+
fieldKind: "scalar";
|
|
256
|
+
scalar: infer T;
|
|
257
|
+
} ? ScalarValue<T> : never);
|
|
258
|
+
/**
|
|
259
|
+
* The type of the "value" argument of ReflectMessage.addListItem()
|
|
260
|
+
*/
|
|
261
|
+
export type ReflectAddListItemValue<Field extends DescField & {
|
|
262
|
+
fieldKind: "list";
|
|
263
|
+
}> = (Field extends {
|
|
264
|
+
listKind: "scalar";
|
|
265
|
+
scalar: infer T;
|
|
266
|
+
} ? ScalarValue<T> : Field extends {
|
|
267
|
+
listKind: "enum";
|
|
268
|
+
} ? enumVal : Field extends {
|
|
269
|
+
listKind: "message";
|
|
270
|
+
} ? ReflectMessage : never);
|
|
271
|
+
/**
|
|
272
|
+
* The type of the "value" argument of ReflectMessage.setMapEntry()
|
|
273
|
+
*/
|
|
274
|
+
export type ReflectSetMapEntryValue<Field extends DescField & {
|
|
275
|
+
fieldKind: "map";
|
|
276
|
+
}> = (Field extends {
|
|
277
|
+
mapKind: "enum";
|
|
278
|
+
} ? enumVal : Field extends {
|
|
279
|
+
mapKind: "message";
|
|
280
|
+
} ? ReflectMessage : Field extends {
|
|
281
|
+
mapKind: "scalar";
|
|
282
|
+
scalar: infer T;
|
|
283
|
+
} ? ScalarValue<T, LongType.BIGINT> : never);
|
|
284
|
+
export {};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { DescField, DescMessage } from "../desc-types.js";
|
|
2
|
+
import type { MessageShape } from "../types.js";
|
|
3
|
+
import type { MapEntryKey, ReflectList, ReflectMap, ReflectMessage } from "./reflect-types.js";
|
|
4
|
+
/**
|
|
5
|
+
* Create a ReflectMessage.
|
|
6
|
+
*/
|
|
7
|
+
export declare function reflect<Desc extends DescMessage>(messageDesc: Desc, message?: MessageShape<Desc>, opt?: {
|
|
8
|
+
/**
|
|
9
|
+
* By default, field values are validated when setting them. For example,
|
|
10
|
+
* a value for an uint32 field must be a ECMAScript Number >= 0.
|
|
11
|
+
*
|
|
12
|
+
* Note that setting a message field validates the type of the message,
|
|
13
|
+
* but does not check its fields.
|
|
14
|
+
*
|
|
15
|
+
* In some contexts, field values are trusted, and performance can be
|
|
16
|
+
* improved by disabling validation by setting disableFieldValueCheck to
|
|
17
|
+
* `false`.
|
|
18
|
+
*/
|
|
19
|
+
disableFieldValueCheck?: boolean;
|
|
20
|
+
}): ReflectMessage;
|
|
21
|
+
/**
|
|
22
|
+
* Create a ReflectList.
|
|
23
|
+
*/
|
|
24
|
+
export declare function reflectList<V>(field: DescField & {
|
|
25
|
+
fieldKind: "list";
|
|
26
|
+
}, unsafeInput?: unknown[], check?: boolean): ReflectList<V>;
|
|
27
|
+
/**
|
|
28
|
+
* Create a ReflectMap.
|
|
29
|
+
*/
|
|
30
|
+
export declare function reflectMap<K extends MapEntryKey, V>(field: DescField & {
|
|
31
|
+
fieldKind: "map";
|
|
32
|
+
}, unsafeInput?: Record<string, unknown>, check?: boolean): ReflectMap<K, V>;
|