{"version":3,"file":"frontend-client-DnQoUd43.js","sources":["../../../../projects/frontend-client/generated-connect-es/google/protobuf/struct_pb.js","../../../../projects/frontend-client/generated-connect-es/google/protobuf/wrappers_pb.js","../../../../projects/frontend-client/generated-connect-es/google/type/localized_text_pb.js","../../../../projects/frontend-client/generated-connect-es/google/protobuf/duration_pb.js","../../../../projects/frontend-client/generated-connect-es/google/rpc/error_details_pb.js","../../../../projects/frontend-client/generated-connect-es/google/type/postal_address_pb.js","../../../../projects/frontend-client/generated-connect-es/google/protobuf/timestamp_pb.js","../../../../projects/frontend-client/generated-connect-es/common/v1/three_domain_secure_pb.js","../../../../projects/frontend-client/generated-connect-es/common/v1/common_pb.js","../../../../projects/frontend-client/generated-connect-es/google/type/date_pb.js","../../../../projects/frontend-client/generated-connect-es/common/v1/merchant_settings_pb.js","../../../../projects/frontend-client/generated-connect-es/common/v1/payment_errors_pb.js","../../../../projects/frontend-client/generated-connect-es/common/v1/payment_pb.js","../../../../projects/frontend-client/generated-connect-es/order/v1/pricing_pb.js","../../../../projects/frontend-client/generated-connect-es/order/v1/order_pb.js","../../../../projects/frontend-client/generated-connect-es/payment/v1/payment_pb.js","../../../../projects/frontend-client/generated-connect-es/merchant/v1/pricing_pb.js","../../../../projects/frontend-client/generated-connect-es/merchant/v1/product_pb.js","../../../../projects/frontend-client/generated-connect-es/merchant/v1/cart_pb.js","../../../../projects/frontend-client/generated-connect-es/common/v1/shopper_pb.js","../../../../projects/frontend-client/generated-connect-es/google/protobuf/any_pb.js","../../../../projects/frontend-client/generated-connect-es/event/v1/billing_event_pb.js","../../../../projects/frontend-client/generated-connect-es/event/v1/checkout_trace_event_pb.js","../../../../projects/frontend-client/generated-connect-es/event/v1/payment_event_pb.js","../../../../projects/frontend-client/generated-connect-es/event/v1/order_event_pb.js","../../../../projects/frontend-client/generated-connect-es/event/v1/event_pb.js","../../../../projects/frontend-client/generated-connect-es/checkout/fe/v1/checkout_fe_api_pb.js","../../../../projects/frontend-client/generated-connect-es/checkout/fe/v1/checkout_fe_api_connect.js","../../../../projects/frontend-client/generated-connect-es/headless/v1/link_pb.js","../../../../projects/frontend-client/generated-connect-es/google/protobuf/field_mask_pb.js","../../../../projects/frontend-client/generated-connect-es/checkout/mpp/v1/checkout_mpp_api_pb.js","../../../../projects/frontend-client/generated-connect-es/checkout/mpp/v1/checkout_mpp_api_connect.js","../../../../projects/frontend-client/generated-connect-es/google/rpc/code_pb.js","../../../../projects/frontend-client/generated-connect-es/common/v1/merchant_ops_pb.js","../../../../projects/frontend-client/generated-connect-es/identity/v1/settings_service_pb.js","../../../../projects/frontend-client/generated-connect-es/identity/v1/settings_service_connect.js","../../../../projects/frontend-client/generated-connect-es/merchant/v1/payment_link_pb.js","../../../../projects/frontend-client/generated-connect-es/merchant/v1/public_catalog_api_pb.js","../../../../projects/frontend-client/generated-connect-es/merchant/v1/public_payment_links_api_pb.js","../../../../projects/frontend-client/src/header-interceptor.ts","../../../../projects/frontend-client/src/fe-client.ts"],"sourcesContent":["// Protocol Buffers - Google's data interchange format\n// Copyright 2008 Google Inc. All rights reserved.\n// https://developers.google.com/protocol-buffers/\n//\n// Redistribution and use in source and binary forms, with or without\n// modification, are permitted provided that the following conditions are\n// met:\n//\n// * Redistributions of source code must retain the above copyright\n// notice, this list of conditions and the following disclaimer.\n// * Redistributions in binary form must reproduce the above\n// copyright notice, this list of conditions and the following disclaimer\n// in the documentation and/or other materials provided with the\n// distribution.\n// * Neither the name of Google Inc. nor the names of its\n// contributors may be used to endorse or promote products derived from\n// this software without specific prior written permission.\n//\n// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n// \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n\n// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file google/protobuf/struct.proto (package google.protobuf, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\n\n/**\n * `NullValue` is a singleton enumeration to represent the null value for the\n * `Value` type union.\n *\n * The JSON representation for `NullValue` is JSON `null`.\n *\n * @generated from enum google.protobuf.NullValue\n */\nexport const NullValue = proto3.makeEnum(\n \"google.protobuf.NullValue\",\n [\n {no: 0, name: \"NULL_VALUE\"},\n ],\n);\n\n/**\n * `Struct` represents a structured data value, consisting of fields\n * which map to dynamically typed values. In some languages, `Struct`\n * might be supported by a native representation. For example, in\n * scripting languages like JS a struct is represented as an\n * object. The details of that representation are described together\n * with the proto support for the language.\n *\n * The JSON representation for `Struct` is JSON object.\n *\n * @generated from message google.protobuf.Struct\n */\nexport const Struct = proto3.makeMessageType(\n \"google.protobuf.Struct\",\n () => [\n { no: 1, name: \"fields\", kind: \"map\", K: 9 /* ScalarType.STRING */, V: {kind: \"message\", T: Value} },\n ],\n);\n\nStruct.prototype.toJson = function toJson(options) {\n const json = {}\n for (const [k, v] of Object.entries(this.fields)) {\n json[k] = v.toJson(options);\n }\n return json;\n};\n\nStruct.prototype.fromJson = function fromJson(json, options) {\n if (typeof json != \"object\" || json == null || Array.isArray(json)) {\n throw new Error(\"cannot decode google.protobuf.Struct from JSON \" + proto3.json.debug(json));\n }\n for (const [k, v] of Object.entries(json)) {\n this.fields[k] = Value.fromJson(v);\n }\n return this;\n};\n\n/**\n * `Value` represents a dynamically typed value which can be either\n * null, a number, a string, a boolean, a recursive struct value, or a\n * list of values. A producer of value is expected to set one of these\n * variants. Absence of any variant indicates an error.\n *\n * The JSON representation for `Value` is JSON value.\n *\n * @generated from message google.protobuf.Value\n */\nexport const Value = proto3.makeMessageType(\n \"google.protobuf.Value\",\n () => [\n { no: 1, name: \"null_value\", kind: \"enum\", T: proto3.getEnumType(NullValue), oneof: \"kind\" },\n { no: 2, name: \"number_value\", kind: \"scalar\", T: 1 /* ScalarType.DOUBLE */, oneof: \"kind\" },\n { no: 3, name: \"string_value\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, oneof: \"kind\" },\n { no: 4, name: \"bool_value\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */, oneof: \"kind\" },\n { no: 5, name: \"struct_value\", kind: \"message\", T: Struct, oneof: \"kind\" },\n { no: 6, name: \"list_value\", kind: \"message\", T: ListValue, oneof: \"kind\" },\n ],\n);\n\nValue.prototype.toJson = function toJson(options) {\n switch (this.kind.case) {\n case \"nullValue\":\n return null;\n case \"numberValue\":\n if (!Number.isFinite(this.kind.value)) {\n throw new Error(\"google.protobuf.Value cannot be NaN or Infinity\");\n }\n case \"boolValue\":\n case \"stringValue\":\n return this.kind.value;\n case \"structValue\":\n case \"listValue\":\n return this.kind.value.toJson({...options, emitDefaultValues: true});\n }\n throw new Error(\"google.protobuf.Value must have a value\");\n};\n\nValue.prototype.fromJson = function fromJson(json, options) {\n switch (typeof json) {\n case \"number\":\n this.kind = { case: \"numberValue\", value: json };\n break;\n case \"string\":\n this.kind = { case: \"stringValue\", value: json };\n break;\n case \"boolean\":\n this.kind = { case: \"boolValue\", value: json };\n break;\n case \"object\":\n if (json === null) {\n this.kind = { case: \"nullValue\", value: NullValue.NULL_VALUE };\n } else if (Array.isArray(json)) {\n this.kind = { case: \"listValue\", value: ListValue.fromJson(json) };\n } else {\n this.kind = { case: \"structValue\", value: Struct.fromJson(json) };\n }\n break;\n default:\n throw new Error(\"cannot decode google.protobuf.Value from JSON \" + proto3.json.debug(json));\n }\n return this;\n};\n\n/**\n * `ListValue` is a wrapper around a repeated field of values.\n *\n * The JSON representation for `ListValue` is JSON array.\n *\n * @generated from message google.protobuf.ListValue\n */\nexport const ListValue = proto3.makeMessageType(\n \"google.protobuf.ListValue\",\n () => [\n { no: 1, name: \"values\", kind: \"message\", T: Value, repeated: true },\n ],\n);\n\nListValue.prototype.toJson = function toJson(options) {\n return this.values.map(v => v.toJson());\n}\n\nListValue.prototype.fromJson = function fromJson(json, options) {\n if (!Array.isArray(json)) {\n throw new Error(\"cannot decode google.protobuf.ListValue from JSON \" + proto3.json.debug(json));\n }\n for (let e of json) {\n this.values.push(Value.fromJson(e));\n }\n return this;\n};\n\n","// Protocol Buffers - Google's data interchange format\n// Copyright 2008 Google Inc. All rights reserved.\n// https://developers.google.com/protocol-buffers/\n//\n// Redistribution and use in source and binary forms, with or without\n// modification, are permitted provided that the following conditions are\n// met:\n//\n// * Redistributions of source code must retain the above copyright\n// notice, this list of conditions and the following disclaimer.\n// * Redistributions in binary form must reproduce the above\n// copyright notice, this list of conditions and the following disclaimer\n// in the documentation and/or other materials provided with the\n// distribution.\n// * Neither the name of Google Inc. nor the names of its\n// contributors may be used to endorse or promote products derived from\n// this software without specific prior written permission.\n//\n// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n// \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n//\n// Wrappers for primitive (non-message) types. These types are useful\n// for embedding primitives in the `google.protobuf.Any` type and for places\n// where we need to distinguish between the absence of a primitive\n// typed field and its default value.\n//\n// These wrappers have no meaningful use within repeated fields as they lack\n// the ability to detect presence on individual elements.\n// These wrappers have no meaningful use within a map or a oneof since\n// individual entries of a map or fields of a oneof can already detect presence.\n\n// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file google/protobuf/wrappers.proto (package google.protobuf, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3, ScalarType } from \"@bufbuild/protobuf\";\n\n/**\n * Wrapper message for `double`.\n *\n * The JSON representation for `DoubleValue` is JSON number.\n *\n * @generated from message google.protobuf.DoubleValue\n */\nexport const DoubleValue = proto3.makeMessageType(\n \"google.protobuf.DoubleValue\",\n () => [\n { no: 1, name: \"value\", kind: \"scalar\", T: 1 /* ScalarType.DOUBLE */ },\n ],\n);\n\nDoubleValue.prototype.toJson = function toJson(options) {\n return proto3.json.writeScalar(ScalarType.DOUBLE, this.value, true);\n}\n\nDoubleValue.prototype.fromJson = function fromJson(json, options) {\n try {\n this.value = proto3.json.readScalar(ScalarType.DOUBLE, json);\n } catch (e) {\n let m = `cannot decode message google.protobuf.DoubleValue from JSON\"`;\n if (e instanceof Error && e.message.length > 0) {\n m += `: ${e.message}`\n }\n throw new Error(m);\n }\n return this;\n};\n\nDoubleValue.fieldWrapper = {\n wrapField(value) {\n return new DoubleValue({value});\n },\n unwrapField(value) {\n return value.value;\n }\n};\n\n/**\n * Wrapper message for `float`.\n *\n * The JSON representation for `FloatValue` is JSON number.\n *\n * @generated from message google.protobuf.FloatValue\n */\nexport const FloatValue = proto3.makeMessageType(\n \"google.protobuf.FloatValue\",\n () => [\n { no: 1, name: \"value\", kind: \"scalar\", T: 2 /* ScalarType.FLOAT */ },\n ],\n);\n\nFloatValue.prototype.toJson = function toJson(options) {\n return proto3.json.writeScalar(ScalarType.FLOAT, this.value, true);\n}\n\nFloatValue.prototype.fromJson = function fromJson(json, options) {\n try {\n this.value = proto3.json.readScalar(ScalarType.FLOAT, json);\n } catch (e) {\n let m = `cannot decode message google.protobuf.FloatValue from JSON\"`;\n if (e instanceof Error && e.message.length > 0) {\n m += `: ${e.message}`\n }\n throw new Error(m);\n }\n return this;\n};\n\nFloatValue.fieldWrapper = {\n wrapField(value) {\n return new FloatValue({value});\n },\n unwrapField(value) {\n return value.value;\n }\n};\n\n/**\n * Wrapper message for `int64`.\n *\n * The JSON representation for `Int64Value` is JSON string.\n *\n * @generated from message google.protobuf.Int64Value\n */\nexport const Int64Value = proto3.makeMessageType(\n \"google.protobuf.Int64Value\",\n () => [\n { no: 1, name: \"value\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n ],\n);\n\nInt64Value.prototype.toJson = function toJson(options) {\n return proto3.json.writeScalar(ScalarType.INT64, this.value, true);\n}\n\nInt64Value.prototype.fromJson = function fromJson(json, options) {\n try {\n this.value = proto3.json.readScalar(ScalarType.INT64, json);\n } catch (e) {\n let m = `cannot decode message google.protobuf.Int64Value from JSON\"`;\n if (e instanceof Error && e.message.length > 0) {\n m += `: ${e.message}`\n }\n throw new Error(m);\n }\n return this;\n};\n\nInt64Value.fieldWrapper = {\n wrapField(value) {\n return new Int64Value({value});\n },\n unwrapField(value) {\n return value.value;\n }\n};\n\n/**\n * Wrapper message for `uint64`.\n *\n * The JSON representation for `UInt64Value` is JSON string.\n *\n * @generated from message google.protobuf.UInt64Value\n */\nexport const UInt64Value = proto3.makeMessageType(\n \"google.protobuf.UInt64Value\",\n () => [\n { no: 1, name: \"value\", kind: \"scalar\", T: 4 /* ScalarType.UINT64 */ },\n ],\n);\n\nUInt64Value.prototype.toJson = function toJson(options) {\n return proto3.json.writeScalar(ScalarType.UINT64, this.value, true);\n}\n\nUInt64Value.prototype.fromJson = function fromJson(json, options) {\n try {\n this.value = proto3.json.readScalar(ScalarType.UINT64, json);\n } catch (e) {\n let m = `cannot decode message google.protobuf.UInt64Value from JSON\"`;\n if (e instanceof Error && e.message.length > 0) {\n m += `: ${e.message}`\n }\n throw new Error(m);\n }\n return this;\n};\n\nUInt64Value.fieldWrapper = {\n wrapField(value) {\n return new UInt64Value({value});\n },\n unwrapField(value) {\n return value.value;\n }\n};\n\n/**\n * Wrapper message for `int32`.\n *\n * The JSON representation for `Int32Value` is JSON number.\n *\n * @generated from message google.protobuf.Int32Value\n */\nexport const Int32Value = proto3.makeMessageType(\n \"google.protobuf.Int32Value\",\n () => [\n { no: 1, name: \"value\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n ],\n);\n\nInt32Value.prototype.toJson = function toJson(options) {\n return proto3.json.writeScalar(ScalarType.INT32, this.value, true);\n}\n\nInt32Value.prototype.fromJson = function fromJson(json, options) {\n try {\n this.value = proto3.json.readScalar(ScalarType.INT32, json);\n } catch (e) {\n let m = `cannot decode message google.protobuf.Int32Value from JSON\"`;\n if (e instanceof Error && e.message.length > 0) {\n m += `: ${e.message}`\n }\n throw new Error(m);\n }\n return this;\n};\n\nInt32Value.fieldWrapper = {\n wrapField(value) {\n return new Int32Value({value});\n },\n unwrapField(value) {\n return value.value;\n }\n};\n\n/**\n * Wrapper message for `uint32`.\n *\n * The JSON representation for `UInt32Value` is JSON number.\n *\n * @generated from message google.protobuf.UInt32Value\n */\nexport const UInt32Value = proto3.makeMessageType(\n \"google.protobuf.UInt32Value\",\n () => [\n { no: 1, name: \"value\", kind: \"scalar\", T: 13 /* ScalarType.UINT32 */ },\n ],\n);\n\nUInt32Value.prototype.toJson = function toJson(options) {\n return proto3.json.writeScalar(ScalarType.UINT32, this.value, true);\n}\n\nUInt32Value.prototype.fromJson = function fromJson(json, options) {\n try {\n this.value = proto3.json.readScalar(ScalarType.UINT32, json);\n } catch (e) {\n let m = `cannot decode message google.protobuf.UInt32Value from JSON\"`;\n if (e instanceof Error && e.message.length > 0) {\n m += `: ${e.message}`\n }\n throw new Error(m);\n }\n return this;\n};\n\nUInt32Value.fieldWrapper = {\n wrapField(value) {\n return new UInt32Value({value});\n },\n unwrapField(value) {\n return value.value;\n }\n};\n\n/**\n * Wrapper message for `bool`.\n *\n * The JSON representation for `BoolValue` is JSON `true` and `false`.\n *\n * @generated from message google.protobuf.BoolValue\n */\nexport const BoolValue = proto3.makeMessageType(\n \"google.protobuf.BoolValue\",\n () => [\n { no: 1, name: \"value\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n);\n\nBoolValue.prototype.toJson = function toJson(options) {\n return proto3.json.writeScalar(ScalarType.BOOL, this.value, true);\n}\n\nBoolValue.prototype.fromJson = function fromJson(json, options) {\n try {\n this.value = proto3.json.readScalar(ScalarType.BOOL, json);\n } catch (e) {\n let m = `cannot decode message google.protobuf.BoolValue from JSON\"`;\n if (e instanceof Error && e.message.length > 0) {\n m += `: ${e.message}`\n }\n throw new Error(m);\n }\n return this;\n};\n\nBoolValue.fieldWrapper = {\n wrapField(value) {\n return new BoolValue({value});\n },\n unwrapField(value) {\n return value.value;\n }\n};\n\n/**\n * Wrapper message for `string`.\n *\n * The JSON representation for `StringValue` is JSON string.\n *\n * @generated from message google.protobuf.StringValue\n */\nexport const StringValue = proto3.makeMessageType(\n \"google.protobuf.StringValue\",\n () => [\n { no: 1, name: \"value\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\nStringValue.prototype.toJson = function toJson(options) {\n return proto3.json.writeScalar(ScalarType.STRING, this.value, true);\n}\n\nStringValue.prototype.fromJson = function fromJson(json, options) {\n try {\n this.value = proto3.json.readScalar(ScalarType.STRING, json);\n } catch (e) {\n let m = `cannot decode message google.protobuf.StringValue from JSON\"`;\n if (e instanceof Error && e.message.length > 0) {\n m += `: ${e.message}`\n }\n throw new Error(m);\n }\n return this;\n};\n\nStringValue.fieldWrapper = {\n wrapField(value) {\n return new StringValue({value});\n },\n unwrapField(value) {\n return value.value;\n }\n};\n\n/**\n * Wrapper message for `bytes`.\n *\n * The JSON representation for `BytesValue` is JSON string.\n *\n * @generated from message google.protobuf.BytesValue\n */\nexport const BytesValue = proto3.makeMessageType(\n \"google.protobuf.BytesValue\",\n () => [\n { no: 1, name: \"value\", kind: \"scalar\", T: 12 /* ScalarType.BYTES */ },\n ],\n);\n\nBytesValue.prototype.toJson = function toJson(options) {\n return proto3.json.writeScalar(ScalarType.BYTES, this.value, true);\n}\n\nBytesValue.prototype.fromJson = function fromJson(json, options) {\n try {\n this.value = proto3.json.readScalar(ScalarType.BYTES, json);\n } catch (e) {\n let m = `cannot decode message google.protobuf.BytesValue from JSON\"`;\n if (e instanceof Error && e.message.length > 0) {\n m += `: ${e.message}`\n }\n throw new Error(m);\n }\n return this;\n};\n\nBytesValue.fieldWrapper = {\n wrapField(value) {\n return new BytesValue({value});\n },\n unwrapField(value) {\n return value.value;\n }\n};\n\n","// Copyright 2021 Google LLC\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file google/type/localized_text.proto (package google.type, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\n\n/**\n * Localized variant of a text in a particular language.\n *\n * @generated from message google.type.LocalizedText\n */\nexport const LocalizedText = proto3.makeMessageType(\n \"google.type.LocalizedText\",\n () => [\n { no: 1, name: \"text\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"language_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n","// Protocol Buffers - Google's data interchange format\n// Copyright 2008 Google Inc. All rights reserved.\n// https://developers.google.com/protocol-buffers/\n//\n// Redistribution and use in source and binary forms, with or without\n// modification, are permitted provided that the following conditions are\n// met:\n//\n// * Redistributions of source code must retain the above copyright\n// notice, this list of conditions and the following disclaimer.\n// * Redistributions in binary form must reproduce the above\n// copyright notice, this list of conditions and the following disclaimer\n// in the documentation and/or other materials provided with the\n// distribution.\n// * Neither the name of Google Inc. nor the names of its\n// contributors may be used to endorse or promote products derived from\n// this software without specific prior written permission.\n//\n// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n// \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n\n// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file google/protobuf/duration.proto (package google.protobuf, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3, protoInt64 } from \"@bufbuild/protobuf\";\n\n/**\n * A Duration represents a signed, fixed-length span of time represented\n * as a count of seconds and fractions of seconds at nanosecond\n * resolution. It is independent of any calendar and concepts like \"day\"\n * or \"month\". It is related to Timestamp in that the difference between\n * two Timestamp values is a Duration and it can be added or subtracted\n * from a Timestamp. Range is approximately +-10,000 years.\n *\n * # Examples\n *\n * Example 1: Compute Duration from two Timestamps in pseudo code.\n *\n * Timestamp start = ...;\n * Timestamp end = ...;\n * Duration duration = ...;\n *\n * duration.seconds = end.seconds - start.seconds;\n * duration.nanos = end.nanos - start.nanos;\n *\n * if (duration.seconds < 0 && duration.nanos > 0) {\n * duration.seconds += 1;\n * duration.nanos -= 1000000000;\n * } else if (duration.seconds > 0 && duration.nanos < 0) {\n * duration.seconds -= 1;\n * duration.nanos += 1000000000;\n * }\n *\n * Example 2: Compute Timestamp from Timestamp + Duration in pseudo code.\n *\n * Timestamp start = ...;\n * Duration duration = ...;\n * Timestamp end = ...;\n *\n * end.seconds = start.seconds + duration.seconds;\n * end.nanos = start.nanos + duration.nanos;\n *\n * if (end.nanos < 0) {\n * end.seconds -= 1;\n * end.nanos += 1000000000;\n * } else if (end.nanos >= 1000000000) {\n * end.seconds += 1;\n * end.nanos -= 1000000000;\n * }\n *\n * Example 3: Compute Duration from datetime.timedelta in Python.\n *\n * td = datetime.timedelta(days=3, minutes=10)\n * duration = Duration()\n * duration.FromTimedelta(td)\n *\n * # JSON Mapping\n *\n * In JSON format, the Duration type is encoded as a string rather than an\n * object, where the string ends in the suffix \"s\" (indicating seconds) and\n * is preceded by the number of seconds, with nanoseconds expressed as\n * fractional seconds. For example, 3 seconds with 0 nanoseconds should be\n * encoded in JSON format as \"3s\", while 3 seconds and 1 nanosecond should\n * be expressed in JSON format as \"3.000000001s\", and 3 seconds and 1\n * microsecond should be expressed in JSON format as \"3.000001s\".\n *\n *\n * @generated from message google.protobuf.Duration\n */\nexport const Duration = proto3.makeMessageType(\n \"google.protobuf.Duration\",\n () => [\n { no: 1, name: \"seconds\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 2, name: \"nanos\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n ],\n);\n\nDuration.prototype.fromJson = function fromJson(json, options) {\n if (typeof json !== \"string\") {\n throw new Error(`cannot decode google.protobuf.Duration from JSON: ${proto3.json.debug(json)}`);\n }\n const match = json.match(/^(-?[0-9]+)(?:\\.([0-9]+))?s/);\n if (match === null) {\n throw new Error(`cannot decode google.protobuf.Duration from JSON: ${proto3.json.debug(json)}`);\n }\n const longSeconds = Number(match[1]);\n if (longSeconds > 315576000000 || longSeconds < -315576000000) {\n throw new Error(`cannot decode google.protobuf.Duration from JSON: ${proto3.json.debug(json)}`);\n }\n this.seconds = protoInt64.parse(longSeconds);\n if (typeof match[2] == \"string\") {\n const nanosStr = match[2] + \"0\".repeat(9 - match[2].length);\n this.nanos = parseInt(nanosStr);\n if (longSeconds < 0 || Object.is(longSeconds, -0)) {\n this.nanos = -this.nanos;\n }\n }\n return this;\n};\n\nDuration.prototype.toJson = function toJson(options) {\n if (Number(this.seconds) > 315576000000 || Number(this.seconds) < -315576000000) {\n throw new Error(`cannot encode google.protobuf.Duration to JSON: value out of range`);\n }\n let text = this.seconds.toString();\n if (this.nanos !== 0) {\n let nanosStr = Math.abs(this.nanos).toString();\n nanosStr = \"0\".repeat(9 - nanosStr.length) + nanosStr;\n if (nanosStr.substring(3) === \"000000\") {\n nanosStr = nanosStr.substring(0, 3);\n } else if (nanosStr.substring(6) === \"000\") {\n nanosStr = nanosStr.substring(0, 6);\n }\n text += \".\" + nanosStr;\n if (this.nanos < 0 && this.seconds === protoInt64.zero) {\n text = \"-\" + text;\n }\n }\n return text + \"s\";\n};\n\n","// Copyright 2020 Google LLC\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file google/rpc/error_details.proto (package google.rpc, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\nimport { Duration } from \"../protobuf/duration_pb\";\n\n/**\n * Describes when the clients can retry a failed request. Clients could ignore\n * the recommendation here or retry when this information is missing from error\n * responses.\n *\n * It's always recommended that clients should use exponential backoff when\n * retrying.\n *\n * Clients should wait until `retry_delay` amount of time has passed since\n * receiving the error response before retrying. If retrying requests also\n * fail, clients should use an exponential backoff scheme to gradually increase\n * the delay between retries based on `retry_delay`, until either a maximum\n * number of retries have been reached or a maximum retry delay cap has been\n * reached.\n *\n * @generated from message google.rpc.RetryInfo\n */\nexport const RetryInfo = proto3.makeMessageType(\n \"google.rpc.RetryInfo\",\n () => [\n { no: 1, name: \"retry_delay\", kind: \"message\", T: Duration },\n ],\n);\n\n/**\n * Describes additional debugging info.\n *\n * @generated from message google.rpc.DebugInfo\n */\nexport const DebugInfo = proto3.makeMessageType(\n \"google.rpc.DebugInfo\",\n () => [\n { no: 1, name: \"stack_entries\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 2, name: \"detail\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Describes how a quota check failed.\n *\n * For example if a daily limit was exceeded for the calling project,\n * a service could respond with a QuotaFailure detail containing the project\n * id and the description of the quota limit that was exceeded. If the\n * calling project hasn't enabled the service in the developer console, then\n * a service could respond with the project id and set `service_disabled`\n * to true.\n *\n * Also see RetryInfo and Help types for other details about handling a\n * quota failure.\n *\n * @generated from message google.rpc.QuotaFailure\n */\nexport const QuotaFailure = proto3.makeMessageType(\n \"google.rpc.QuotaFailure\",\n () => [\n { no: 1, name: \"violations\", kind: \"message\", T: QuotaFailure_Violation, repeated: true },\n ],\n);\n\n/**\n * A message type used to describe a single quota violation. For example, a\n * daily quota or a custom quota that was exceeded.\n *\n * @generated from message google.rpc.QuotaFailure.Violation\n */\nexport const QuotaFailure_Violation = proto3.makeMessageType(\n \"google.rpc.QuotaFailure.Violation\",\n () => [\n { no: 1, name: \"subject\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"description\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n {localName: \"QuotaFailure_Violation\"},\n);\n\n/**\n * Describes the cause of the error with structured details.\n *\n * Example of an error when contacting the \"pubsub.googleapis.com\" API when it\n * is not enabled:\n *\n * { \"reason\": \"API_DISABLED\"\n * \"domain\": \"googleapis.com\"\n * \"metadata\": {\n * \"resource\": \"projects/123\",\n * \"service\": \"pubsub.googleapis.com\"\n * }\n * }\n *\n * This response indicates that the pubsub.googleapis.com API is not enabled.\n *\n * Example of an error that is returned when attempting to create a Spanner\n * instance in a region that is out of stock:\n *\n * { \"reason\": \"STOCKOUT\"\n * \"domain\": \"spanner.googleapis.com\",\n * \"metadata\": {\n * \"availableRegions\": \"us-central1,us-east2\"\n * }\n * }\n *\n * @generated from message google.rpc.ErrorInfo\n */\nexport const ErrorInfo = proto3.makeMessageType(\n \"google.rpc.ErrorInfo\",\n () => [\n { no: 1, name: \"reason\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"domain\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"metadata\", kind: \"map\", K: 9 /* ScalarType.STRING */, V: {kind: \"scalar\", T: 9 /* ScalarType.STRING */} },\n ],\n);\n\n/**\n * Describes what preconditions have failed.\n *\n * For example, if an RPC failed because it required the Terms of Service to be\n * acknowledged, it could list the terms of service violation in the\n * PreconditionFailure message.\n *\n * @generated from message google.rpc.PreconditionFailure\n */\nexport const PreconditionFailure = proto3.makeMessageType(\n \"google.rpc.PreconditionFailure\",\n () => [\n { no: 1, name: \"violations\", kind: \"message\", T: PreconditionFailure_Violation, repeated: true },\n ],\n);\n\n/**\n * A message type used to describe a single precondition failure.\n *\n * @generated from message google.rpc.PreconditionFailure.Violation\n */\nexport const PreconditionFailure_Violation = proto3.makeMessageType(\n \"google.rpc.PreconditionFailure.Violation\",\n () => [\n { no: 1, name: \"type\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"subject\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"description\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n {localName: \"PreconditionFailure_Violation\"},\n);\n\n/**\n * Describes violations in a client request. This error type focuses on the\n * syntactic aspects of the request.\n *\n * @generated from message google.rpc.BadRequest\n */\nexport const BadRequest = proto3.makeMessageType(\n \"google.rpc.BadRequest\",\n () => [\n { no: 1, name: \"field_violations\", kind: \"message\", T: BadRequest_FieldViolation, repeated: true },\n ],\n);\n\n/**\n * A message type used to describe a single bad request field.\n *\n * @generated from message google.rpc.BadRequest.FieldViolation\n */\nexport const BadRequest_FieldViolation = proto3.makeMessageType(\n \"google.rpc.BadRequest.FieldViolation\",\n () => [\n { no: 1, name: \"field\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"description\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n {localName: \"BadRequest_FieldViolation\"},\n);\n\n/**\n * Contains metadata about the request that clients can attach when filing a bug\n * or providing other forms of feedback.\n *\n * @generated from message google.rpc.RequestInfo\n */\nexport const RequestInfo = proto3.makeMessageType(\n \"google.rpc.RequestInfo\",\n () => [\n { no: 1, name: \"request_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"serving_data\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Describes the resource that is being accessed.\n *\n * @generated from message google.rpc.ResourceInfo\n */\nexport const ResourceInfo = proto3.makeMessageType(\n \"google.rpc.ResourceInfo\",\n () => [\n { no: 1, name: \"resource_type\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"resource_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"owner\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"description\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Provides links to documentation or for performing an out of band action.\n *\n * For example, if a quota check failed with an error indicating the calling\n * project hasn't enabled the accessed service, this can contain a URL pointing\n * directly to the right place in the developer console to flip the bit.\n *\n * @generated from message google.rpc.Help\n */\nexport const Help = proto3.makeMessageType(\n \"google.rpc.Help\",\n () => [\n { no: 1, name: \"links\", kind: \"message\", T: Help_Link, repeated: true },\n ],\n);\n\n/**\n * Describes a URL link.\n *\n * @generated from message google.rpc.Help.Link\n */\nexport const Help_Link = proto3.makeMessageType(\n \"google.rpc.Help.Link\",\n () => [\n { no: 1, name: \"description\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"url\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n {localName: \"Help_Link\"},\n);\n\n/**\n * Provides a localized error message that is safe to return to the user\n * which can be attached to an RPC error.\n *\n * @generated from message google.rpc.LocalizedMessage\n */\nexport const LocalizedMessage = proto3.makeMessageType(\n \"google.rpc.LocalizedMessage\",\n () => [\n { no: 1, name: \"locale\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"message\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n","// Copyright 2021 Google LLC\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file google/type/postal_address.proto (package google.type, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\n\n/**\n * Represents a postal address, e.g. for postal delivery or payments addresses.\n * Given a postal address, a postal service can deliver items to a premise, P.O.\n * Box or similar.\n * It is not intended to model geographical locations (roads, towns,\n * mountains).\n *\n * In typical usage an address would be created via user input or from importing\n * existing data, depending on the type of process.\n *\n * Advice on address input / editing:\n * - Use an i18n-ready address widget such as\n * https://github.com/google/libaddressinput)\n * - Users should not be presented with UI elements for input or editing of\n * fields outside countries where that field is used.\n *\n * For more guidance on how to use this schema, please see:\n * https://support.google.com/business/answer/6397478\n *\n * @generated from message google.type.PostalAddress\n */\nexport const PostalAddress = proto3.makeMessageType(\n \"google.type.PostalAddress\",\n () => [\n { no: 1, name: \"revision\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 2, name: \"region_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"language_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"postal_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"sorting_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"administrative_area\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"locality\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"sublocality\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 9, name: \"address_lines\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 10, name: \"recipients\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 11, name: \"organization\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n","// Protocol Buffers - Google's data interchange format\n// Copyright 2008 Google Inc. All rights reserved.\n// https://developers.google.com/protocol-buffers/\n//\n// Redistribution and use in source and binary forms, with or without\n// modification, are permitted provided that the following conditions are\n// met:\n//\n// * Redistributions of source code must retain the above copyright\n// notice, this list of conditions and the following disclaimer.\n// * Redistributions in binary form must reproduce the above\n// copyright notice, this list of conditions and the following disclaimer\n// in the documentation and/or other materials provided with the\n// distribution.\n// * Neither the name of Google Inc. nor the names of its\n// contributors may be used to endorse or promote products derived from\n// this software without specific prior written permission.\n//\n// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n// \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n\n// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file google/protobuf/timestamp.proto (package google.protobuf, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3, protoInt64 } from \"@bufbuild/protobuf\";\n\n/**\n * A Timestamp represents a point in time independent of any time zone or local\n * calendar, encoded as a count of seconds and fractions of seconds at\n * nanosecond resolution. The count is relative to an epoch at UTC midnight on\n * January 1, 1970, in the proleptic Gregorian calendar which extends the\n * Gregorian calendar backwards to year one.\n *\n * All minutes are 60 seconds long. Leap seconds are \"smeared\" so that no leap\n * second table is needed for interpretation, using a [24-hour linear\n * smear](https://developers.google.com/time/smear).\n *\n * The range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By\n * restricting to that range, we ensure that we can convert to and from [RFC\n * 3339](https://www.ietf.org/rfc/rfc3339.txt) date strings.\n *\n * # Examples\n *\n * Example 1: Compute Timestamp from POSIX `time()`.\n *\n * Timestamp timestamp;\n * timestamp.set_seconds(time(NULL));\n * timestamp.set_nanos(0);\n *\n * Example 2: Compute Timestamp from POSIX `gettimeofday()`.\n *\n * struct timeval tv;\n * gettimeofday(&tv, NULL);\n *\n * Timestamp timestamp;\n * timestamp.set_seconds(tv.tv_sec);\n * timestamp.set_nanos(tv.tv_usec * 1000);\n *\n * Example 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`.\n *\n * FILETIME ft;\n * GetSystemTimeAsFileTime(&ft);\n * UINT64 ticks = (((UINT64)ft.dwHighDateTime) << 32) | ft.dwLowDateTime;\n *\n * // A Windows tick is 100 nanoseconds. Windows epoch 1601-01-01T00:00:00Z\n * // is 11644473600 seconds before Unix epoch 1970-01-01T00:00:00Z.\n * Timestamp timestamp;\n * timestamp.set_seconds((INT64) ((ticks / 10000000) - 11644473600LL));\n * timestamp.set_nanos((INT32) ((ticks % 10000000) * 100));\n *\n * Example 4: Compute Timestamp from Java `System.currentTimeMillis()`.\n *\n * long millis = System.currentTimeMillis();\n *\n * Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000)\n * .setNanos((int) ((millis % 1000) * 1000000)).build();\n *\n * Example 5: Compute Timestamp from Java `Instant.now()`.\n *\n * Instant now = Instant.now();\n *\n * Timestamp timestamp =\n * Timestamp.newBuilder().setSeconds(now.getEpochSecond())\n * .setNanos(now.getNano()).build();\n *\n * Example 6: Compute Timestamp from current time in Python.\n *\n * timestamp = Timestamp()\n * timestamp.GetCurrentTime()\n *\n * # JSON Mapping\n *\n * In JSON format, the Timestamp type is encoded as a string in the\n * [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) format. That is, the\n * format is \"{year}-{month}-{day}T{hour}:{min}:{sec}[.{frac_sec}]Z\"\n * where {year} is always expressed using four digits while {month}, {day},\n * {hour}, {min}, and {sec} are zero-padded to two digits each. The fractional\n * seconds, which can go up to 9 digits (i.e. up to 1 nanosecond resolution),\n * are optional. The \"Z\" suffix indicates the timezone (\"UTC\"); the timezone\n * is required. A proto3 JSON serializer should always use UTC (as indicated by\n * \"Z\") when printing the Timestamp type and a proto3 JSON parser should be\n * able to accept both UTC and other timezones (as indicated by an offset).\n *\n * For example, \"2017-01-15T01:30:15.01Z\" encodes 15.01 seconds past\n * 01:30 UTC on January 15, 2017.\n *\n * In JavaScript, one can convert a Date object to this format using the\n * standard\n * [toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString)\n * method. In Python, a standard `datetime.datetime` object can be converted\n * to this format using\n * [`strftime`](https://docs.python.org/2/library/time.html#time.strftime) with\n * the time format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use\n * the Joda Time's [`ISODateTimeFormat.dateTime()`](\n * http://joda-time.sourceforge.net/apidocs/org/joda/time/format/ISODateTimeFormat.html#dateTime()\n * ) to obtain a formatter capable of generating timestamps in this format.\n *\n *\n * @generated from message google.protobuf.Timestamp\n */\nexport const Timestamp = proto3.makeMessageType(\n \"google.protobuf.Timestamp\",\n () => [\n { no: 1, name: \"seconds\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 2, name: \"nanos\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n ],\n);\n\nTimestamp.prototype.fromJson = function fromJson(json, options) {\n if (typeof json !== \"string\") {\n throw new Error(`cannot decode google.protobuf.Timestamp from JSON: ${proto3.json.debug(json)}`);\n }\n const matches = json.match(/^([0-9]{4})-([0-9]{2})-([0-9]{2})T([0-9]{2}):([0-9]{2}):([0-9]{2})(?:Z|\\.([0-9]{3,9})Z|([+-][0-9][0-9]:[0-9][0-9]))$/);\n if (!matches) {\n throw new Error(`cannot decode google.protobuf.Timestamp from JSON: invalid RFC 3339 string`);\n }\n const ms = Date.parse(matches[1] + \"-\" + matches[2] + \"-\" + matches[3] + \"T\" + matches[4] + \":\" + matches[5] + \":\" + matches[6] + (matches[8] ? matches[8] : \"Z\"));\n if (Number.isNaN(ms)) {\n throw new Error(`cannot decode google.protobuf.Timestamp from JSON: invalid RFC 3339 string`);\n }\n if (ms < Date.parse(\"0001-01-01T00:00:00Z\") || ms > Date.parse(\"9999-12-31T23:59:59Z\")) {\n throw new Error(`cannot decode message google.protobuf.Timestamp from JSON: must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive`);\n }\n this.seconds = protoInt64.parse(ms / 1000);\n this.nanos = 0;\n if (matches[7]) {\n this.nanos = (parseInt(\"1\" + matches[7] + \"0\".repeat(9 - matches[7].length)) - 1000000000);\n }\n return this;\n};\n\nTimestamp.prototype.toJson = function toJson(options) {\n const ms = Number(this.seconds) * 1000;\n if (ms < Date.parse(\"0001-01-01T00:00:00Z\") || ms > Date.parse(\"9999-12-31T23:59:59Z\")) {\n throw new Error(`cannot encode google.protobuf.Timestamp to JSON: must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive`);\n }\n if (this.nanos < 0) {\n throw new Error(`cannot encode google.protobuf.Timestamp to JSON: nanos must not be negative`);\n }\n let z = \"Z\";\n if (this.nanos > 0) {\n const nanosStr = (this.nanos + 1000000000).toString().substring(1);\n if (nanosStr.substring(3) === \"000000\") {\n z = \".\" + nanosStr.substring(0, 3) + \"Z\";\n } else if (nanosStr.substring(6) === \"000\") {\n z = \".\" + nanosStr.substring(0, 6) + \"Z\";\n } else {\n z = \".\" + nanosStr + \"Z\";\n }\n }\n return new Date(ms).toISOString().replace(\".000Z\", z);\n};\n\nTimestamp.prototype.toDate = function toDate() {\n return new Date(Number(this.seconds) * 1000 + Math.ceil(this.nanos / 1000000));\n};\n\nTimestamp.now = function now() {\n return Timestamp.fromDate(new Date())\n};\n\nTimestamp.fromDate = function fromDate(date) {\n const ms = date.getTime();\n return new Timestamp({\n seconds: protoInt64.parse(Math.floor(ms / 1000)),\n nanos: (ms % 1000) * 1000000,\n });\n};\n\n","// This file contains Protobuf definitions used to implement Three Domain Secure (3DS) and\n// Strong Customer Authentication (SCA) support in Checkout APIs.\n\n// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file common/v1/three_domain_secure.proto (package common.v1, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\nimport { Timestamp } from \"../../google/protobuf/timestamp_pb\";\nimport { BoolValue, Int32Value } from \"../../google/protobuf/wrappers_pb\";\n\n/**\n * Supported challenge window dimensions for SCA.\n *\n * @generated from enum common.v1.ScaChallengeWindowSize\n */\nexport const ScaChallengeWindowSize = proto3.makeEnum(\n \"common.v1.ScaChallengeWindowSize\",\n [\n {no: 0, name: \"SCA_CHALLENGE_WINDOW_SIZE_UNSPECIFIED\"},\n {no: 1, name: \"SCA_CHALLENGE_WINDOW_SIZE_250_X_400\"},\n {no: 2, name: \"SCA_CHALLENGE_WINDOW_SIZE_390_X_400\"},\n {no: 3, name: \"SCA_CHALLENGE_WINDOW_SIZE_500_X_600\"},\n {no: 4, name: \"SCA_CHALLENGE_WINDOW_SIZE_600_X_400\"},\n {no: 5, name: \"SCA_CHALLENGE_WINDOW_SIZE_FULL_SCREEN\"},\n ],\n);\n\n/**\n * BrowserInfo models Shopper's web browser data which are used to implement the 3DS Challenge UI.\n * This message is used by Pay API in case if the Shopper decides to use a payment card as the\n * payment method.\n *\n * @generated from message common.v1.BrowserInfo\n */\nexport const BrowserInfo = proto3.makeMessageType(\n \"common.v1.BrowserInfo\",\n () => [\n { no: 1, name: \"accept_header\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"language\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"color_depth\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 4, name: \"screen_height\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 5, name: \"screen_width\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 6, name: \"timezone_offset\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n ],\n);\n\n/**\n * PaymentCardScaRequest models SCA request data which will be sent to 3DS provider if the\n * Shopper is using a payment card as a payment method.\n * This message is used by SetupCheckoutIntent API and must be populated if the Merchant wants\n * (or must) use SCA for payment card transactions.\n * Any change on PaymentCardScaRequest must be backward compatible\n *\n * @generated from message common.v1.PaymentCardScaRequest\n */\nexport const PaymentCardScaRequest = proto3.makeMessageType(\n \"common.v1.PaymentCardScaRequest\",\n () => [\n { no: 6, name: \"exemption\", jsonName: \"SCAExemptionReason\", kind: \"enum\", T: proto3.getEnumType(PaymentCardScaRequest_ScaExemption) },\n { no: 1, name: \"challenge_type\", jsonName: \"threeDSChallengeType\", kind: \"enum\", T: proto3.getEnumType(PaymentCardScaRequest_ChallengeType) },\n { no: 2, name: \"cardholder_account_history\", kind: \"message\", T: CardholderAccountHistory },\n { no: 3, name: \"purchase_info\", kind: \"message\", T: PurchaseInfo },\n { no: 4, name: \"requestor_authentication_info\", kind: \"message\", T: RequestorAuthenticationInfo },\n { no: 5, name: \"requestor_prior_transaction_authentication_info\", kind: \"message\", T: RequestorPriorTransactionAuthenticationInfo },\n { no: 7, name: \"authentication_type\", kind: \"enum\", T: proto3.getEnumType(PaymentCardScaRequest_AuthenticationType) },\n ],\n);\n\n/**\n * Types of exemptions which could be requested by merchant.\n *\n * @generated from enum common.v1.PaymentCardScaRequest.ScaExemption\n */\nexport const PaymentCardScaRequest_ScaExemption = proto3.makeEnum(\n \"common.v1.PaymentCardScaRequest.ScaExemption\",\n [\n {no: 0, name: \"SCA_EXEMPTION_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"SCA_EXEMPTION_TRUSTED_MERCHANT\", localName: \"TRUSTED_MERCHANT\"},\n {no: 2, name: \"SCA_EXEMPTION_SECURE_CORPORATE_PAYMENT\", localName: \"SECURE_CORPORATE_PAYMENT\"},\n {no: 3, name: \"SCA_EXEMPTION_TRANSACTION_RISK_ANALYSIS\", localName: \"TRANSACTION_RISK_ANALYSIS\"},\n {no: 4, name: \"SCA_EXEMPTION_LOW_VALUE_PAYMENT\", localName: \"LOW_VALUE_PAYMENT\"},\n {no: 5, name: \"SCA_EXEMPTION_MERCHANT_INITIATED_TRANSACTION\", localName: \"MERCHANT_INITIATED_TRANSACTION\"},\n {no: 6, name: \"SCA_EXEMPTION_RECURRING_PAYMENT\", localName: \"RECURRING_PAYMENT\"},\n {no: 7, name: \"SCA_EXEMPTION_DELEGATION\", localName: \"DELEGATION\"},\n ],\n);\n\n/**\n * Challenges that could be requested for transactions.\n *\n * @generated from enum common.v1.PaymentCardScaRequest.ChallengeType\n */\nexport const PaymentCardScaRequest_ChallengeType = proto3.makeEnum(\n \"common.v1.PaymentCardScaRequest.ChallengeType\",\n [\n {no: 0, name: \"CHALLENGE_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"CHALLENGE_TYPE_NO_PREFERENCE\", localName: \"NO_PREFERENCE\"},\n {no: 2, name: \"CHALLENGE_TYPE_NO_CHALLENGE_REQUESTED\", localName: \"NO_CHALLENGE_REQUESTED\"},\n {no: 3, name: \"CHALLENGE_TYPE_CHALLENGE_REQUESTED\", localName: \"CHALLENGE_REQUESTED\"},\n {no: 4, name: \"CHALLENGE_TYPE_CHALLENGE_MANDATED\", localName: \"CHALLENGE_MANDATED\"},\n {no: 5, name: \"CHALLENGE_TYPE_NO_CHALLENGE_TRANSACTION_RISK_ANALYZED\", localName: \"NO_CHALLENGE_TRANSACTION_RISK_ANALYZED\"},\n {no: 6, name: \"CHALLENGE_TYPE_NO_CHALLENGE_DATA_SHARE_ONLY\", localName: \"NO_CHALLENGE_DATA_SHARE_ONLY\"},\n {no: 7, name: \"CHALLENGE_TYPE_NO_CHALLENGE_SCA_ALREADY_COMPLETED\", localName: \"NO_CHALLENGE_SCA_ALREADY_COMPLETED\"},\n {no: 8, name: \"CHALLENGE_TYPE_NO_CHALLENGE_TRUSTED\", localName: \"NO_CHALLENGE_TRUSTED\"},\n ],\n);\n\n/**\n * Indicates the type of cardholder Authentication request requested by the\n * authentication requestor (JPMC managed SCA merchants)\n *\n * @generated from enum common.v1.PaymentCardScaRequest.AuthenticationType\n */\nexport const PaymentCardScaRequest_AuthenticationType = proto3.makeEnum(\n \"common.v1.PaymentCardScaRequest.AuthenticationType\",\n [\n {no: 0, name: \"AUTHENTICATION_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"AUTHENTICATION_TYPE_DEFAULT\", localName: \"DEFAULT\"},\n {no: 2, name: \"AUTHENTICATION_TYPE_EXEMPTION\", localName: \"EXEMPTION\"},\n {no: 3, name: \"AUTHENTICATION_TYPE_AUTHENTICATION\", localName: \"AUTHENTICATION\"},\n ],\n);\n\n/**\n * CardholderAccountHistory models additional information about the Cardholder’s Account provided\n * by the 3DS Requestor.\n * This data are used to increase a chance of skipping the authentication.\n *\n * @generated from message common.v1.CardholderAccountHistory\n */\nexport const CardholderAccountHistory = proto3.makeMessageType(\n \"common.v1.CardholderAccountHistory\",\n () => [\n { no: 1, name: \"account_created_at\", jsonName: \"accountCreateTimestamp\", kind: \"message\", T: Timestamp },\n { no: 2, name: \"account_updated_at\", jsonName: \"accountUpdateTimestamp\", kind: \"message\", T: Timestamp },\n { no: 4, name: \"payment_card_used_first_time_at\", jsonName: \"cardFirstUsedDate\", kind: \"message\", T: Timestamp },\n { no: 5, name: \"last_24_hours_add_card_attempts\", jsonName: \"consumerAccount24HoursAddCardCount\", kind: \"message\", T: Int32Value },\n { no: 6, name: \"password_updated_at\", jsonName: \"consumerAccountPasswordUpdateTimestamp\", kind: \"message\", T: Timestamp },\n { no: 7, name: \"last_24_hours_transaction_count\", kind: \"message\", T: Int32Value },\n { no: 8, name: \"last_year_transaction_count\", kind: \"message\", T: Int32Value },\n { no: 9, name: \"last_6_months_purchase_count\", kind: \"message\", T: Int32Value },\n { no: 10, name: \"past_suspicious_activity\", jsonName: \"consumerAccountSuspiciousActivityIndicator\", kind: \"message\", T: BoolValue },\n { no: 11, name: \"billing_address_matches_shipping_address\", jsonName: \"consumerAccountAddressIdenticalIndicator\", kind: \"message\", T: BoolValue },\n { no: 12, name: \"shipping_address_first_used_at\", jsonName: \"consumerShippingAddressFirstUsageDate\", kind: \"message\", T: Timestamp },\n { no: 13, name: \"cardholder_name_matches_recipient_name\", jsonName: \"consumerShipToNameIdenticalIndicator\", kind: \"message\", T: BoolValue },\n ],\n);\n\n/**\n * Purchase information which is used to increase a chance of skipping the authentication.\n *\n * @generated from message common.v1.PurchaseInfo\n */\nexport const PurchaseInfo = proto3.makeMessageType(\n \"common.v1.PurchaseInfo\",\n () => [\n { no: 1, name: \"purchase_date\", jsonName: \"lastPurchaseDate\", kind: \"message\", T: Timestamp },\n { no: 2, name: \"recurring_frequency\", jsonName: \"paymentFrequency\", kind: \"message\", T: Int32Value },\n { no: 3, name: \"merchant_fraud_risk_assessment\", kind: \"message\", T: PurchaseInfo_MerchantFraudRiskAssessment },\n { no: 4, name: \"transaction_type\", kind: \"enum\", T: proto3.getEnumType(PurchaseInfo_TransactionType) },\n ],\n);\n\n/**\n * Defines types of transaction from 3DS authentication perspective.\n * UPG claims that these values are derived from ISO 8583, though I didn't find any\n * documentation about how it was done.\n *\n * @generated from enum common.v1.PurchaseInfo.TransactionType\n */\nexport const PurchaseInfo_TransactionType = proto3.makeEnum(\n \"common.v1.PurchaseInfo.TransactionType\",\n [\n {no: 0, name: \"TRANSACTION_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"TRANSACTION_TYPE_CHECK\", localName: \"CHECK\"},\n {no: 2, name: \"TRANSACTION_TYPE_GOODS_SERVICES\", localName: \"GOODS_SERVICES\"},\n {no: 3, name: \"TRANSACTION_TYPE_ACCOUNT_FUNDING\", localName: \"ACCOUNT_FUNDING\"},\n {no: 4, name: \"TRANSACTION_TYPE_QUASI_CASH\", localName: \"QUASI_CASH\"},\n {no: 5, name: \"TRANSACTION_TYPE_PREPAID\", localName: \"PREPAID\"},\n ],\n);\n\n/**\n * Merchant's assessment of the level of fraud risk for the specific authentication for both\n * the Cardholder and the authentication being conducted.\n *\n * @generated from message common.v1.PurchaseInfo.MerchantFraudRiskAssessment\n */\nexport const PurchaseInfo_MerchantFraudRiskAssessment = proto3.makeMessageType(\n \"common.v1.PurchaseInfo.MerchantFraudRiskAssessment\",\n () => [\n { no: 1, name: \"shipping_method\", jsonName: \"shipmentType\", kind: \"enum\", T: proto3.getEnumType(PurchaseInfo_MerchantFraudRiskAssessment_ShippingMethod) },\n { no: 2, name: \"delivery_type\", jsonName: \"deliveryTimeframe\", kind: \"enum\", T: proto3.getEnumType(PurchaseInfo_MerchantFraudRiskAssessment_DeliveryType) },\n { no: 3, name: \"delivery_email_address\", jsonName: \"orderEmailAddress\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"reorder_purchase\", jsonName: \"productRepurchase\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 5, name: \"preorder_purchase\", jsonName: \"productPreorder\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 6, name: \"preorder_availability_date\", kind: \"message\", T: Timestamp },\n ],\n {localName: \"PurchaseInfo_MerchantFraudRiskAssessment\"},\n);\n\n/**\n * Defines shipping methods which can be used for the transaction.\n *\n * @generated from enum common.v1.PurchaseInfo.MerchantFraudRiskAssessment.ShippingMethod\n */\nexport const PurchaseInfo_MerchantFraudRiskAssessment_ShippingMethod = proto3.makeEnum(\n \"common.v1.PurchaseInfo.MerchantFraudRiskAssessment.ShippingMethod\",\n [\n {no: 0, name: \"SHIPPING_METHOD_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"SHIPPING_METHOD_SHIP_TO_BILLING_ADDRESS\", localName: \"SHIP_TO_BILLING_ADDRESS\"},\n {no: 2, name: \"SHIPPING_METHOD_SHIP_TO_VERIFIED_ADDRESS_ON_FILE\", localName: \"SHIP_TO_VERIFIED_ADDRESS_ON_FILE\"},\n {no: 3, name: \"SHIPPING_METHOD_SHIP_TO_ADDRESS_NOT_ON_FILE\", localName: \"SHIP_TO_ADDRESS_NOT_ON_FILE\"},\n {no: 4, name: \"SHIPPING_METHOD_SHIP_TO_STORE_FOR_PICKUP\", localName: \"SHIP_TO_STORE_FOR_PICKUP\"},\n {no: 5, name: \"SHIPPING_METHOD_DIGITAL_GOODS_DELIVERY\", localName: \"DIGITAL_GOODS_DELIVERY\"},\n {no: 6, name: \"SHIPPING_METHOD_TICKETS\", localName: \"TICKETS\"},\n {no: 7, name: \"SHIPPING_METHOD_OTHER\", localName: \"OTHER\"},\n ],\n);\n\n/**\n * Defines the merchandise delivery timeframes.\n *\n * @generated from enum common.v1.PurchaseInfo.MerchantFraudRiskAssessment.DeliveryType\n */\nexport const PurchaseInfo_MerchantFraudRiskAssessment_DeliveryType = proto3.makeEnum(\n \"common.v1.PurchaseInfo.MerchantFraudRiskAssessment.DeliveryType\",\n [\n {no: 0, name: \"DELIVERY_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"DELIVERY_TYPE_ELECTRONIC_DELIVERY\", localName: \"ELECTRONIC_DELIVERY\"},\n {no: 2, name: \"DELIVERY_TYPE_SAME_DAY_SHIPPING\", localName: \"SAME_DAY_SHIPPING\"},\n {no: 3, name: \"DELIVERY_TYPE_OVERNIGHT_SHIPPING\", localName: \"OVERNIGHT_SHIPPING\"},\n {no: 4, name: \"DELIVERY_TYPE_TWO_DAYS_OR_MORE_SHIPPING\", localName: \"TWO_DAYS_OR_MORE_SHIPPING\"},\n ],\n);\n\n/**\n * How the 3DS Requestor authenticated the Cardholder before or during the transaction.\n * This data are used to increase a chance of skipping the authentication.\n *\n * @generated from message common.v1.RequestorAuthenticationInfo\n */\nexport const RequestorAuthenticationInfo = proto3.makeMessageType(\n \"common.v1.RequestorAuthenticationInfo\",\n () => [\n { no: 1, name: \"requestor_authentication_method\", kind: \"enum\", T: proto3.getEnumType(RequestorAuthenticationInfo_RequestorAuthenticationMethod) },\n { no: 2, name: \"authenticated_at\", jsonName: \"threeDSAuthenticationTimestamp\", kind: \"message\", T: Timestamp },\n { no: 3, name: \"authentication_data\", jsonName: \"threeDSAuthenticationData\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Methods used by the Cardholder to authenticate to the 3DS Requestor.\n *\n * @generated from enum common.v1.RequestorAuthenticationInfo.RequestorAuthenticationMethod\n */\nexport const RequestorAuthenticationInfo_RequestorAuthenticationMethod = proto3.makeEnum(\n \"common.v1.RequestorAuthenticationInfo.RequestorAuthenticationMethod\",\n [\n {no: 0, name: \"REQUESTOR_AUTHENTICATION_METHOD_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"REQUESTOR_AUTHENTICATION_METHOD_NONE\", localName: \"NONE\"},\n {no: 2, name: \"REQUESTOR_AUTHENTICATION_METHOD_REQUESTOR_CRED\", localName: \"REQUESTOR_CRED\"},\n {no: 3, name: \"REQUESTOR_AUTHENTICATION_METHOD_FEDERATED_ID\", localName: \"FEDERATED_ID\"},\n {no: 4, name: \"REQUESTOR_AUTHENTICATION_METHOD_ISSUER_CRED\", localName: \"ISSUER_CRED\"},\n {no: 5, name: \"REQUESTOR_AUTHENTICATION_METHOD_FIDO_AUTHENTICATOR\", localName: \"FIDO_AUTHENTICATOR\"},\n ],\n);\n\n/**\n * Information about how the 3DS Requestor authenticated the cardholder as part of a previous\n * 3DS transaction.\n * This data are used to increase a chance of skipping the authentication.\n *\n * @generated from message common.v1.RequestorPriorTransactionAuthenticationInfo\n */\nexport const RequestorPriorTransactionAuthenticationInfo = proto3.makeMessageType(\n \"common.v1.RequestorPriorTransactionAuthenticationInfo\",\n () => [\n { no: 1, name: \"prior_acs_transaction_id\", jsonName: \"acsTransactionId\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"prior_authentication_method\", jsonName: \"requestorAuthenticationMethod\", kind: \"enum\", T: proto3.getEnumType(RequestorPriorTransactionAuthenticationInfo_PriorAuthenticationMethod) },\n { no: 3, name: \"prior_authentication_at\", jsonName: \"threeDSAuthenticationTimestamp\", kind: \"message\", T: Timestamp },\n { no: 4, name: \"prior_authentication_data\", jsonName: \"threeDSAuthenticationData\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Mechanism used by the Cardholder to previously authenticate to the 3DS Requestor.\n *\n * @generated from enum common.v1.RequestorPriorTransactionAuthenticationInfo.PriorAuthenticationMethod\n */\nexport const RequestorPriorTransactionAuthenticationInfo_PriorAuthenticationMethod = proto3.makeEnum(\n \"common.v1.RequestorPriorTransactionAuthenticationInfo.PriorAuthenticationMethod\",\n [\n {no: 0, name: \"PRIOR_AUTHENTICATION_METHOD_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"PRIOR_AUTHENTICATION_METHOD_FRICTIONLESS_AUTHENTICATION_BY_ACS\", localName: \"FRICTIONLESS_AUTHENTICATION_BY_ACS\"},\n {no: 2, name: \"PRIOR_AUTHENTICATION_METHOD_CHALLENGED_BY_ACS\", localName: \"CHALLENGED_BY_ACS\"},\n {no: 3, name: \"PRIOR_AUTHENTICATION_METHOD_AVS_VERIFIED\", localName: \"AVS_VERIFIED\"},\n {no: 4, name: \"PRIOR_AUTHENTICATION_METHOD_OTHER_ISSUER_METHOD\", localName: \"OTHER_ISSUER_METHOD\"},\n ],\n);\n\n/**\n * Details about SCA/3DS performed during Pay request.\n * The values of the fields below are populated straight from UPG response w/o any interpretation.\n * Please consult UPG 3DS docs for possible values and their meaning.\n * JSON values for these fields are specified in https://jiradc-cib-cluster02.prod.aws.jpmchase.net/browse/MSCHECKOUT-6147\n *\n * @generated from message common.v1.ThreeDsTransactionDetails\n */\nexport const ThreeDsTransactionDetails = proto3.makeMessageType(\n \"common.v1.ThreeDsTransactionDetails\",\n () => [\n { no: 3, name: \"status\", jsonName: \"threeDSTransactionStatus\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"challenge_method\", jsonName: \"challengeAuthenticationMethod\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"challenge_type\", jsonName: \"challengeAuthenticationType\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"status_reason_text\", jsonName: \"authenticationStatusReasonText\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n","// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file common/v1/common.proto (package common.v1, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\nimport { UInt32Value } from \"../../google/protobuf/wrappers_pb\";\nimport { LocalizedText } from \"../../google/type/localized_text_pb\";\nimport { BadRequest } from \"../../google/rpc/error_details_pb\";\nimport { PostalAddress } from \"../../google/type/postal_address_pb\";\nimport { PaymentCardScaRequest } from \"./three_domain_secure_pb\";\nimport { Timestamp } from \"../../google/protobuf/timestamp_pb\";\n\n/**\n * CardNetwork enum lists supported card networks (aka card associations) by the Checkout APIs.\n *\n * @generated from enum common.v1.CardNetwork\n */\nexport const CardNetwork = proto3.makeEnum(\n \"common.v1.CardNetwork\",\n [\n {no: 0, name: \"CARD_NETWORK_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"CARD_NETWORK_VISA\", localName: \"VISA\"},\n {no: 2, name: \"CARD_NETWORK_MASTERCARD\", localName: \"MASTERCARD\"},\n {no: 3, name: \"CARD_NETWORK_AMEX\", localName: \"AMEX\"},\n {no: 4, name: \"CARD_NETWORK_DISCOVER\", localName: \"DISCOVER\"},\n {no: 5, name: \"CARD_NETWORK_JCB\", localName: \"JCB\"},\n {no: 6, name: \"CARD_NETWORK_MAESTRO\", localName: \"MAESTRO\"},\n {no: 7, name: \"CARD_NETWORK_DINERS\", localName: \"DINERS\"},\n {no: 8, name: \"CARD_NETWORK_CHASE_VISA_CREDIT\", localName: \"CHASE_VISA_CREDIT\"},\n {no: 9, name: \"CARD_NETWORK_CHINA_UNION_PAY\", localName: \"CHINA_UNION_PAY\"},\n {no: 11, name: \"CARD_NETWORK_CARTES_BANCAIRES\", localName: \"CARTES_BANCAIRES\"},\n ],\n);\n\n/**\n * CardType defines a type of payment card.\n *\n * @generated from enum common.v1.CardType\n */\nexport const CardType = proto3.makeEnum(\n \"common.v1.CardType\",\n [\n {no: 0, name: \"CARD_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"CARD_TYPE_CREDIT\", localName: \"CREDIT\"},\n {no: 2, name: \"CARD_TYPE_DEBIT\", localName: \"DEBIT\"},\n {no: 3, name: \"CARD_TYPE_PREPAID\", localName: \"PREPAID\"},\n {no: 4, name: \"CARD_TYPE_GIFT\", localName: \"GIFT\"},\n ],\n);\n\n/**\n * The individual who decided how the payment will be routed (Cartes Bancaires use-case).\n *\n * @generated from enum common.v1.PreferredRoutingInitiator\n */\nexport const PreferredRoutingInitiator = proto3.makeEnum(\n \"common.v1.PreferredRoutingInitiator\",\n [\n {no: 0, name: \"PREFERRED_ROUTING_INITIATOR_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"PREFERRED_ROUTING_INITIATOR_MERCHANT\", localName: \"MERCHANT\"},\n {no: 2, name: \"PREFERRED_ROUTING_INITIATOR_CONSUMER\", localName: \"CONSUMER\"},\n ],\n);\n\n/**\n * Card Interactions that define method of payment.\n *\n * @generated from enum common.v1.CardInteractionType\n */\nexport const CardInteractionType = proto3.makeEnum(\n \"common.v1.CardInteractionType\",\n [\n {no: 0, name: \"CARD_INTERACTION_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"CARD_INTERACTION_TYPE_CARD_SWIPED\", localName: \"CARD_SWIPED\"},\n {no: 2, name: \"CARD_INTERACTION_TYPE_CARD_TAPPED\", localName: \"CARD_TAPPED\"},\n {no: 3, name: \"CARD_INTERACTION_TYPE_CHIP_SWIPE\", localName: \"CHIP_SWIPE\"},\n {no: 4, name: \"CARD_INTERACTION_TYPE_CARD_INSERTED\", localName: \"CARD_INSERTED\"},\n {no: 5, name: \"CARD_INTERACTION_TYPE_CARD_READER\", localName: \"CARD_READER\"},\n {no: 6, name: \"CARD_INTERACTION_TYPE_MANUAL_ENTRY\", localName: \"MANUAL_ENTRY\"},\n ],\n);\n\n/**\n * DebitAcceptanceType defines the Debit process to take during transactions\n *\n * @generated from enum common.v1.DebitAcceptanceType\n */\nexport const DebitAcceptanceType = proto3.makeEnum(\n \"common.v1.DebitAcceptanceType\",\n [\n {no: 0, name: \"DEBIT_ACCEPTANCE_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"DEBIT_ACCEPTANCE_TYPE_DEBIT_FIRST\", localName: \"DEBIT_FIRST\"},\n {no: 2, name: \"DEBIT_ACCEPTANCE_TYPE_DEBIT_ONLY\", localName: \"DEBIT_ONLY\"},\n ],\n);\n\n/**\n * Bank account types supported by Electronic Check processing.\n *\n * @generated from enum common.v1.EcpBankAccountType\n */\nexport const EcpBankAccountType = proto3.makeEnum(\n \"common.v1.EcpBankAccountType\",\n [\n {no: 0, name: \"ECP_BANK_ACCOUNT_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"ECP_BANK_ACCOUNT_TYPE_CUSTOMER_CHECKING\", localName: \"CUSTOMER_CHECKING\"},\n {no: 2, name: \"ECP_BANK_ACCOUNT_TYPE_CUSTOMER_SAVINGS\", localName: \"CUSTOMER_SAVINGS\"},\n {no: 3, name: \"ECP_BANK_ACCOUNT_TYPE_COMMERCIAL_CHECKING\", localName: \"COMMERCIAL_CHECKING\"},\n ],\n);\n\n/**\n * AchVerificationType\n *\n * @generated from enum common.v1.AchVerificationType\n */\nexport const AchVerificationType = proto3.makeEnum(\n \"common.v1.AchVerificationType\",\n [\n {no: 0, name: \"ACH_VERIFICATION_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"ACH_VERIFICATION_TYPE_BASIC\", localName: \"BASIC\"},\n {no: 2, name: \"ACH_VERIFICATION_TYPE_ACCOUNT_STATUS\", localName: \"ACCOUNT_STATUS\"},\n {no: 3, name: \"ACH_VERIFICATION_TYPE_ACCOUNT_OWNER\", localName: \"ACCOUNT_OWNER\"},\n {no: 4, name: \"ACH_VERIFICATION_TYPE_PRE_NOTE_CREDIT\", localName: \"PRE_NOTE_CREDIT\"},\n {no: 5, name: \"ACH_VERIFICATION_TYPE_PRE_NOTE_DEBIT\", localName: \"PRE_NOTE_DEBIT\"},\n ],\n);\n\n/**\n * Defines the type of methods of payment using Google Pay, currently the only type is CARD.\n *\n * @generated from enum common.v1.GooglePayPaymentMethodType\n */\nexport const GooglePayPaymentMethodType = proto3.makeEnum(\n \"common.v1.GooglePayPaymentMethodType\",\n [\n {no: 0, name: \"GOOGLE_PAY_PAYMENT_METHOD_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"GOOGLE_PAY_PAYMENT_METHOD_TYPE_CARD\", localName: \"CARD\"},\n ],\n);\n\n/**\n * Defines the type of tokenization applied to the selected payment method.\n *\n * @generated from enum common.v1.GooglePayTokenizationType\n */\nexport const GooglePayTokenizationType = proto3.makeEnum(\n \"common.v1.GooglePayTokenizationType\",\n [\n {no: 0, name: \"GOOGLE_PAY_TOKENIZATION_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"GOOGLE_PAY_TOKENIZATION_TYPE_PAYMENT_GATEWAY\", localName: \"PAYMENT_GATEWAY\"},\n {no: 2, name: \"GOOGLE_PAY_TOKENIZATION_TYPE_DIRECT\", localName: \"DIRECT\"},\n ],\n);\n\n/**\n * Defines the version of the protocol used to decrypt by Google Pay.\n *\n * @generated from enum common.v1.GooglePayProtocolVersion\n */\nexport const GooglePayProtocolVersion = proto3.makeEnum(\n \"common.v1.GooglePayProtocolVersion\",\n [\n {no: 0, name: \"GOOGLE_PAY_PROTOCOL_VERSION_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"GOOGLE_PAY_PROTOCOL_VERSION_ECV1\", localName: \"ECV1\"},\n {no: 2, name: \"GOOGLE_PAY_PROTOCOL_VERSION_ECV2\", localName: \"ECV2\"},\n ],\n);\n\n/**\n * Defines supported payment gateway types.\n *\n * @generated from enum common.v1.PaymentGatewayType\n */\nexport const PaymentGatewayType = proto3.makeEnum(\n \"common.v1.PaymentGatewayType\",\n [\n {no: 0, name: \"PAYMENT_GATEWAY_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"PAYMENT_GATEWAY_TYPE_ORBITAL\", localName: \"ORBITAL\"},\n {no: 2, name: \"PAYMENT_GATEWAY_TYPE_UPG\", localName: \"UPG\"},\n {no: 3, name: \"PAYMENT_GATEWAY_TYPE_WALLET\", localName: \"WALLET\"},\n {no: 100, name: \"PAYMENT_GATEWAY_TYPE_MOCK\", localName: \"MOCK\"},\n ],\n);\n\n/**\n * Cookie policy enums\n *\n * @generated from enum common.v1.CookiePolicy\n */\nexport const CookiePolicy = proto3.makeEnum(\n \"common.v1.CookiePolicy\",\n [\n {no: 0, name: \"COOKIE_POLICY_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"COOKIE_POLICY_ACCEPT_ALL\", localName: \"ACCEPT_ALL\"},\n {no: 2, name: \"COOKIE_POLICY_ONLY_NECESSARY\", localName: \"ONLY_NECESSARY\"},\n ],\n);\n\n/**\n * @generated from enum common.v1.PaymentMethodType\n */\nexport const PaymentMethodType = proto3.makeEnum(\n \"common.v1.PaymentMethodType\",\n [\n {no: 0, name: \"PAYMENT_METHOD_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"PAYMENT_METHOD_TYPE_CARD\", localName: \"CARD\"},\n {no: 2, name: \"PAYMENT_METHOD_TYPE_ELECTRONIC_CHECK\", localName: \"ELECTRONIC_CHECK\"},\n {no: 3, name: \"PAYMENT_METHOD_TYPE_APPLE_PAY\", localName: \"APPLE_PAY\"},\n {no: 4, name: \"PAYMENT_METHOD_TYPE_SEPA\", localName: \"SEPA\"},\n {no: 5, name: \"PAYMENT_METHOD_TYPE_GOOGLE_PAY\", localName: \"GOOGLE_PAY\"},\n {no: 6, name: \"PAYMENT_METHOD_TYPE_PAZE\", localName: \"PAZE\"},\n {no: 7, name: \"PAYMENT_METHOD_TYPE_PAY_BY_BANK\", localName: \"PAY_BY_BANK\"},\n {no: 8, name: \"PAYMENT_METHOD_TYPE_ALIPAY\", localName: \"ALIPAY\"},\n {no: 9, name: \"PAYMENT_METHOD_TYPE_PAYPAL\", localName: \"PAYPAL\"},\n {no: 10, name: \"PAYMENT_METHOD_TYPE_WECHAT_PAY\", localName: \"WECHAT_PAY\"},\n {no: 11, name: \"PAYMENT_METHOD_TYPE_IDEAL\", localName: \"IDEAL\"},\n {no: 12, name: \"PAYMENT_METHOD_TYPE_SOFORT\", localName: \"SOFORT\"},\n {no: 13, name: \"PAYMENT_METHOD_TYPE_GIROPAY\", localName: \"GIROPAY\"},\n {no: 14, name: \"PAYMENT_METHOD_TYPE_TRUSTLY\", localName: \"TRUSTLY\"},\n {no: 15, name: \"PAYMENT_METHOD_TYPE_GIFT_CARD\", localName: \"GIFT_CARD\"},\n ],\n);\n\n/**\n * Defines payment authorization methods/modes.\n *\n * @generated from enum common.v1.AuthMethod\n */\nexport const AuthMethod = proto3.makeEnum(\n \"common.v1.AuthMethod\",\n [\n {no: 0, name: \"AUTH_METHOD_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"AUTH_METHOD_VERIFY_ONLY\", localName: \"VERIFY_ONLY\"},\n {no: 2, name: \"AUTH_METHOD_CART_AMOUNT\", localName: \"CART_AMOUNT\"},\n {no: 3, name: \"AUTH_METHOD_CART_AMOUNT_AFTER_VERIFY\", localName: \"CART_AMOUNT_AFTER_VERIFY\"},\n {no: 4, name: \"AUTH_METHOD_TOKENIZE_ONLY\", localName: \"TOKENIZE_ONLY\"},\n ],\n);\n\n/**\n * Defines supported customer transaction message types.\n * TODO(vmiksonov): Remove this enum once we start to use CofOptions.\n *\n * @generated from enum common.v1.CitMessageType\n * @deprecated\n */\nexport const CitMessageType = proto3.makeEnum(\n \"common.v1.CitMessageType\",\n [\n {no: 0, name: \"CIT_MESSAGE_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"CIT_MESSAGE_TYPE_STORED_CREDENTIALS\", localName: \"STORED_CREDENTIALS\"},\n {no: 2, name: \"CIT_MESSAGE_TYPE_UNSCHEDULED_CREDENTIALS_ON_FILE\", localName: \"UNSCHEDULED_CREDENTIALS_ON_FILE\"},\n {no: 3, name: \"CIT_MESSAGE_TYPE_RECURRING_TRANSACTION\", localName: \"RECURRING_TRANSACTION\"},\n {no: 4, name: \"CIT_MESSAGE_TYPE_ESTIMATED_AUTH_AMOUNT\", localName: \"ESTIMATED_AUTH_AMOUNT\"},\n {no: 5, name: \"CIT_MESSAGE_TYPE_INSTALLMENTS\", localName: \"INSTALLMENTS\"},\n {no: 6, name: \"CIT_MESSAGE_TYPE_GENERAL_TRANSACTION\", localName: \"GENERAL_TRANSACTION\"},\n ],\n);\n\n/**\n * Defines payment capture methods/modes.\n *\n * @generated from enum common.v1.CaptureMethod\n */\nexport const CaptureMethod = proto3.makeEnum(\n \"common.v1.CaptureMethod\",\n [\n {no: 0, name: \"CAPTURE_METHOD_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"CAPTURE_METHOD_MANUAL\", localName: \"MANUAL\"},\n {no: 2, name: \"CAPTURE_METHOD_NOW\", localName: \"NOW\"},\n {no: 3, name: \"CAPTURE_METHOD_DELAYED\", localName: \"DELAYED\"},\n ],\n);\n\n/**\n * Defines status of pay request.\n *\n * @generated from enum common.v1.PayRequestStatus\n */\nexport const PayRequestStatus = proto3.makeEnum(\n \"common.v1.PayRequestStatus\",\n [\n {no: 0, name: \"PAY_REQUEST_STATUS_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"PAY_REQUEST_STATUS_SUCCESS\", localName: \"SUCCESS\"},\n {no: 2, name: \"PAY_REQUEST_STATUS_TRANSIENT_FAILURE\", localName: \"TRANSIENT_FAILURE\"},\n {no: 3, name: \"PAY_REQUEST_STATUS_FAILURE\", localName: \"FAILURE\"},\n {no: 7, name: \"PAY_REQUEST_STATUS_PENDING\", localName: \"PENDING\"},\n ],\n);\n\n/**\n * Defines possible types of token.\n *\n * @generated from enum common.v1.TokenType\n */\nexport const TokenType = proto3.makeEnum(\n \"common.v1.TokenType\",\n [\n {no: 0, name: \"TOKEN_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"TOKEN_TYPE_ACQUIRER\", localName: \"ACQUIRER\"},\n {no: 2, name: \"TOKEN_TYPE_NETWORK\", localName: \"NETWORK\"},\n {no: 3, name: \"TOKEN_TYPE_EMPTY\", localName: \"EMPTY\"},\n ],\n);\n\n/**\n * Defines the status of a card token during a payment transaction.\n *\n * @generated from enum common.v1.TokenizationStatus\n */\nexport const TokenizationStatus = proto3.makeEnum(\n \"common.v1.TokenizationStatus\",\n [\n {no: 0, name: \"TOKENIZATION_STATUS_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"TOKENIZATION_STATUS_SUCCESS\", localName: \"SUCCESS\"},\n {no: 2, name: \"TOKENIZATION_STATUS_FAILURE\", localName: \"FAILURE\"},\n ],\n);\n\n/**\n * Various configurations for collecting Billing Address.\n *\n * @generated from enum common.v1.BillingAddressCollectionFields\n */\nexport const BillingAddressCollectionFields = proto3.makeEnum(\n \"common.v1.BillingAddressCollectionFields\",\n [\n {no: 0, name: \"BILLING_ADDRESS_COLLECTION_FIELDS_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"BILLING_ADDRESS_COLLECTION_FIELDS_NAME_AND_FULL_ADDRESS\", localName: \"NAME_AND_FULL_ADDRESS\"},\n {no: 2, name: \"BILLING_ADDRESS_COLLECTION_FIELDS_FULL_ADDRESS\", localName: \"FULL_ADDRESS\"},\n {no: 3, name: \"BILLING_ADDRESS_COLLECTION_FIELDS_FULL_ADDRESS_NO_STREET_ADDRESS_2\", localName: \"FULL_ADDRESS_NO_STREET_ADDRESS_2\"},\n {no: 4, name: \"BILLING_ADDRESS_COLLECTION_FIELDS_BILLING_ZIP_ONLY\", localName: \"BILLING_ZIP_ONLY\"},\n {no: 5, name: \"BILLING_ADDRESS_COLLECTION_FIELDS_NONE\", localName: \"NONE\"},\n ],\n);\n\n/**\n * Specifies the order origination.\n *\n * @generated from enum common.v1.OrderOrigination\n */\nexport const OrderOrigination = proto3.makeEnum(\n \"common.v1.OrderOrigination\",\n [\n {no: 0, name: \"ORDER_ORIGINATION_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"ORDER_ORIGINATION_MERCHANT\", localName: \"MERCHANT\"},\n {no: 2, name: \"ORDER_ORIGINATION_PAYMENT_LINK\", localName: \"PAYMENT_LINK\"},\n ],\n);\n\n/**\n * Defines Merchant Onboarding status\n *\n * @generated from enum common.v1.OnboardingStatus\n */\nexport const OnboardingStatus = proto3.makeEnum(\n \"common.v1.OnboardingStatus\",\n [\n {no: 0, name: \"ONBOARDING_STATUS_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"ONBOARDING_STATUS_ACTIVE\", localName: \"ACTIVE\"},\n {no: 2, name: \"ONBOARDING_STATUS_PENDING\", localName: \"PENDING\"},\n {no: 3, name: \"ONBOARDING_STATUS_INACTIVE\", localName: \"INACTIVE\"},\n ],\n);\n\n/**\n * @generated from enum common.v1.UnitTime\n */\nexport const UnitTime = proto3.makeEnum(\n \"common.v1.UnitTime\",\n [\n {no: 0, name: \"UNIT_TIME_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"UNIT_TIME_MINUTES\", localName: \"MINUTES\"},\n {no: 2, name: \"UNIT_TIME_HOURS\", localName: \"HOURS\"},\n {no: 3, name: \"UNIT_TIME_DAYS\", localName: \"DAYS\"},\n ],\n);\n\n/**\n * Defines the access privileges for merchant portal users\n *\n * @generated from enum common.v1.AccessPrivilege\n */\nexport const AccessPrivilege = proto3.makeEnum(\n \"common.v1.AccessPrivilege\",\n [\n {no: 0, name: \"ACCESS_PRIVILEGE_TYPE_UNSPECIFIED\", localName: \"TYPE_UNSPECIFIED\"},\n {no: 1, name: \"ACCESS_PRIVILEGE_TYPE_READ\", localName: \"TYPE_READ\"},\n {no: 2, name: \"ACCESS_PRIVILEGE_TYPE_READ_WRITE\", localName: \"TYPE_READ_WRITE\"},\n {no: 3, name: \"ACCESS_PRIVILEGE_TYPE_NONE\", localName: \"TYPE_NONE\"},\n ],\n);\n\n/**\n * @generated from enum common.v1.Operation\n */\nexport const Operation = proto3.makeEnum(\n \"common.v1.Operation\",\n [\n {no: 0, name: \"OPERATION_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"OPERATION_ADD\", localName: \"ADD\"},\n {no: 2, name: \"OPERATION_REMOVE\", localName: \"REMOVE\"},\n {no: 3, name: \"OPERATION_REMOVE_ALL\", localName: \"REMOVE_ALL\"},\n {no: 4, name: \"OPERATION_MERGE_ALL_IN\", localName: \"MERGE_ALL_IN\"},\n ],\n);\n\n/**\n * Defines the order for the response of list endpoints\n *\n * @generated from enum common.v1.OrderBy\n */\nexport const OrderBy = proto3.makeEnum(\n \"common.v1.OrderBy\",\n [\n {no: 0, name: \"ORDER_BY_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"ORDER_BY_ASC\", localName: \"ASC\"},\n {no: 2, name: \"ORDER_BY_DESC\", localName: \"DESC\"},\n ],\n);\n\n/**\n * Global Mandates Type.\n *\n * @generated from enum common.v1.GlobalMandateType\n */\nexport const GlobalMandateType = proto3.makeEnum(\n \"common.v1.GlobalMandateType\",\n [\n {no: 0, name: \"GLOBAL_MANDATE_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"GLOBAL_MANDATE_TYPE_SAVE_FOR_FUTURE_PAYMENT\", localName: \"SAVE_FOR_FUTURE_PAYMENT\"},\n ],\n);\n\n/**\n * Global Mandates Status.\n *\n * @generated from enum common.v1.GlobalMandateStatus\n */\nexport const GlobalMandateStatus = proto3.makeEnum(\n \"common.v1.GlobalMandateStatus\",\n [\n {no: 0, name: \"GLOBAL_MANDATE_STATUS_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"GLOBAL_MANDATE_STATUS_ACTIVE\", localName: \"ACTIVE\"},\n {no: 2, name: \"GLOBAL_MANDATE_STATUS_INACTIVE\", localName: \"INACTIVE\"},\n ],\n);\n\n/**\n * Defines status of refund request.\n *\n * @generated from enum common.v1.RefundRequestStatus\n */\nexport const RefundRequestStatus = proto3.makeEnum(\n \"common.v1.RefundRequestStatus\",\n [\n {no: 0, name: \"REFUND_REQUEST_STATUS_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"REFUND_REQUEST_STATUS_SUCCESS\", localName: \"SUCCESS\"},\n {no: 2, name: \"REFUND_REQUEST_STATUS_TRANSIENT_FAILURE\", localName: \"TRANSIENT_FAILURE\"},\n {no: 3, name: \"REFUND_REQUEST_STATUS_FAILURE\", localName: \"FAILURE\"},\n ],\n);\n\n/**\n * Defines status of cancel request.\n *\n * @generated from enum common.v1.CancelRequestStatus\n */\nexport const CancelRequestStatus = proto3.makeEnum(\n \"common.v1.CancelRequestStatus\",\n [\n {no: 0, name: \"CANCEL_REQUEST_STATUS_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"CANCEL_REQUEST_STATUS_SUCCESS\", localName: \"SUCCESS\"},\n {no: 2, name: \"CANCEL_REQUEST_STATUS_TRANSIENT_FAILURE\", localName: \"TRANSIENT_FAILURE\"},\n {no: 3, name: \"CANCEL_REQUEST_STATUS_FAILURE\", localName: \"FAILURE\"},\n ],\n);\n\n/**\n * Defines status of tip request.\n *\n * @generated from enum common.v1.TipRequestStatus\n */\nexport const TipRequestStatus = proto3.makeEnum(\n \"common.v1.TipRequestStatus\",\n [\n {no: 0, name: \"TIP_REQUEST_STATUS_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"TIP_REQUEST_STATUS_SUCCESS\", localName: \"SUCCESS\"},\n {no: 2, name: \"TIP_REQUEST_STATUS_TRANSIENT_FAILURE\", localName: \"TRANSIENT_FAILURE\"},\n {no: 3, name: \"TIP_REQUEST_STATUS_FAILURE\", localName: \"FAILURE\"},\n ],\n);\n\n/**\n * Defines status of nonce generation request.\n *\n * @generated from enum common.v1.NonceGenerationRequestStatus\n */\nexport const NonceGenerationRequestStatus = proto3.makeEnum(\n \"common.v1.NonceGenerationRequestStatus\",\n [\n {no: 0, name: \"NONCE_GENERATION_REQUEST_STATUS_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"NONCE_GENERATION_REQUEST_STATUS_SUCCESS\", localName: \"SUCCESS\"},\n {no: 2, name: \"NONCE_GENERATION_REQUEST_STATUS_TRANSIENT_FAILURE\", localName: \"TRANSIENT_FAILURE\"},\n {no: 3, name: \"NONCE_GENERATION_REQUEST_STATUS_FAILURE\", localName: \"FAILURE\"},\n ],\n);\n\n/**\n * Defines status of capture request.\n *\n * @generated from enum common.v1.CaptureRequestStatus\n */\nexport const CaptureRequestStatus = proto3.makeEnum(\n \"common.v1.CaptureRequestStatus\",\n [\n {no: 0, name: \"CAPTURE_REQUEST_STATUS_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"CAPTURE_REQUEST_STATUS_SUCCESS\", localName: \"SUCCESS\"},\n {no: 2, name: \"CAPTURE_REQUEST_STATUS_TRANSIENT_FAILURE\", localName: \"TRANSIENT_FAILURE\"},\n {no: 3, name: \"CAPTURE_REQUEST_STATUS_FAILURE\", localName: \"FAILURE\"},\n ],\n);\n\n/**\n * @generated from enum common.v1.OrderStatus\n */\nexport const OrderStatus = proto3.makeEnum(\n \"common.v1.OrderStatus\",\n [\n {no: 0, name: \"ORDER_STATUS_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"ORDER_STATUS_CREATED\", localName: \"CREATED\"},\n {no: 2, name: \"ORDER_STATUS_PAYMENT_PENDING\", localName: \"PAYMENT_PENDING\"},\n {no: 3, name: \"ORDER_STATUS_PAYMENT_FAILED\", localName: \"PAYMENT_FAILED\"},\n {no: 4, name: \"ORDER_STATUS_COMPLETED\", localName: \"COMPLETED\"},\n {no: 5, name: \"ORDER_STATUS_REFUNDED\", localName: \"REFUNDED\"},\n {no: 6, name: \"ORDER_STATUS_PARTIAL_REFUNDED\", localName: \"PARTIAL_REFUNDED\"},\n {no: 7, name: \"ORDER_STATUS_CANCELLED\", localName: \"CANCELLED\"},\n ],\n);\n\n/**\n * @generated from enum common.v1.RefundPaymentMethod\n */\nexport const RefundPaymentMethod = proto3.makeEnum(\n \"common.v1.RefundPaymentMethod\",\n [\n {no: 0, name: \"REFUND_PAYMENT_METHOD_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"REFUND_PAYMENT_METHOD_ORIGINAL_MOP\", localName: \"ORIGINAL_MOP\"},\n ],\n);\n\n/**\n * @generated from enum common.v1.PrepaymentPaymentMethod\n */\nexport const PrepaymentPaymentMethod = proto3.makeEnum(\n \"common.v1.PrepaymentPaymentMethod\",\n [\n {no: 0, name: \"PREPAYMENT_PAYMENT_METHOD_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"PREPAYMENT_PAYMENT_METHOD_CASH\", localName: \"CASH\"},\n {no: 2, name: \"PREPAYMENT_PAYMENT_METHOD_OTHER\", localName: \"OTHER\"},\n {no: 3, name: \"PREPAYMENT_PAYMENT_METHOD_CARD\", localName: \"CARD\"},\n ],\n);\n\n/**\n * @generated from enum common.v1.RefundStatus\n */\nexport const RefundStatus = proto3.makeEnum(\n \"common.v1.RefundStatus\",\n [\n {no: 0, name: \"REFUND_STATUS_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"REFUND_STATUS_SUCCESS\", localName: \"SUCCESS\"},\n {no: 2, name: \"REFUND_STATUS_PENDING\", localName: \"PENDING\"},\n {no: 3, name: \"REFUND_STATUS_FAILURE\", localName: \"FAILURE\"},\n ],\n);\n\n/**\n * @generated from enum common.v1.TransactionStatus\n */\nexport const TransactionStatus = proto3.makeEnum(\n \"common.v1.TransactionStatus\",\n [\n {no: 0, name: \"TRANSACTION_STATUS_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"TRANSACTION_STATUS_SUCCESS\", localName: \"SUCCESS\"},\n {no: 2, name: \"TRANSACTION_STATUS_PENDING\", localName: \"PENDING\"},\n {no: 3, name: \"TRANSACTION_STATUS_FAILURE\", localName: \"FAILURE\"},\n ],\n);\n\n/**\n * @generated from enum common.v1.LpmType\n */\nexport const LpmType = proto3.makeEnum(\n \"common.v1.LpmType\",\n [\n {no: 0, name: \"LPM_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"LPM_TYPE_PAY_PAL\", localName: \"PAY_PAL\"},\n {no: 2, name: \"LPM_TYPE_ALI_PAY\", localName: \"ALI_PAY\"},\n {no: 3, name: \"LPM_TYPE_WECHAT_PAY\", localName: \"WECHAT_PAY\"},\n {no: 4, name: \"LPM_TYPE_IDEAL\", localName: \"IDEAL\"},\n {no: 5, name: \"LPM_TYPE_SOFORT\", localName: \"SOFORT\"},\n {no: 6, name: \"LPM_TYPE_GIRO_PAY\", localName: \"GIRO_PAY\"},\n {no: 7, name: \"LPM_TYPE_TRUSTLY\", localName: \"TRUSTLY\"},\n ],\n);\n\n/**\n * @generated from enum common.v1.PaymentUpdateStatus\n */\nexport const PaymentUpdateStatus = proto3.makeEnum(\n \"common.v1.PaymentUpdateStatus\",\n [\n {no: 0, name: \"PAYMENT_UPDATE_STATUS_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"PAYMENT_UPDATE_STATUS_SUCCESS\", localName: \"SUCCESS\"},\n {no: 2, name: \"PAYMENT_UPDATE_STATUS_FAILURE\", localName: \"FAILURE\"},\n ],\n);\n\n/**\n * @generated from enum common.v1.PayResultType\n */\nexport const PayResultType = proto3.makeEnum(\n \"common.v1.PayResultType\",\n [\n {no: 0, name: \"PAY_RESULT_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"PAY_RESULT_TYPE_SCA\", localName: \"SCA\"},\n {no: 2, name: \"PAY_RESULT_TYPE_LPM\", localName: \"LPM\"},\n {no: 3, name: \"PAY_RESULT_TYPE_PBB\", localName: \"PBB\"},\n {no: 4, name: \"PAY_RESULT_TYPE_VERIFICATION\", localName: \"VERIFICATION\"},\n ],\n);\n\n/**\n * @generated from enum common.v1.UserType\n */\nexport const UserType = proto3.makeEnum(\n \"common.v1.UserType\",\n [\n {no: 0, name: \"USER_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"USER_TYPE_INTERNAL\", localName: \"INTERNAL\"},\n {no: 2, name: \"USER_TYPE_EXTERNAL\", localName: \"EXTERNAL\"},\n ],\n);\n\n/**\n * @generated from enum common.v1.MerchantEventSource\n */\nexport const MerchantEventSource = proto3.makeEnum(\n \"common.v1.MerchantEventSource\",\n [\n {no: 0, name: \"MERCHANT_EVENT_SOURCE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"MERCHANT_EVENT_SOURCE_PEU\", localName: \"PEU\"},\n {no: 2, name: \"MERCHANT_EVENT_SOURCE_PEOPLESOFT\", localName: \"PEOPLESOFT\"},\n ],\n);\n\n/**\n * @generated from enum common.v1.DlqStatus\n */\nexport const DlqStatus = proto3.makeEnum(\n \"common.v1.DlqStatus\",\n [\n {no: 0, name: \"DLQ_STATUS_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"DLQ_STATUS_ACTIVE\", localName: \"ACTIVE\"},\n {no: 2, name: \"DLQ_STATUS_COMPLETED\", localName: \"COMPLETED\"},\n ],\n);\n\n/**\n * @generated from enum common.v1.ReplayMerchantOnboardingEventResult\n */\nexport const ReplayMerchantOnboardingEventResult = proto3.makeEnum(\n \"common.v1.ReplayMerchantOnboardingEventResult\",\n [\n {no: 0, name: \"REPLAY_MERCHANT_ONBOARDING_EVENT_RESULT_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"REPLAY_MERCHANT_ONBOARDING_EVENT_RESULT_SUCCESS\", localName: \"SUCCESS\"},\n {no: 2, name: \"REPLAY_MERCHANT_ONBOARDING_EVENT_RESULT_FAILURE\", localName: \"FAILURE\"},\n ],\n);\n\n/**\n * @generated from enum common.v1.MerchantSettingsSource\n */\nexport const MerchantSettingsSource = proto3.makeEnum(\n \"common.v1.MerchantSettingsSource\",\n [\n {no: 0, name: \"MERCHANT_SETTINGS_SOURCE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"MERCHANT_SETTINGS_SOURCE_TECHOPS_API\", localName: \"TECHOPS_API\"},\n {no: 2, name: \"MERCHANT_SETTINGS_SOURCE_UI\", localName: \"UI\"},\n {no: 3, name: \"MERCHANT_SETTINGS_SOURCE_PEU_EVENT\", localName: \"PEU_EVENT\"},\n {no: 4, name: \"MERCHANT_SETTINGS_SOURCE_PEOPLESOFT_EVENT\", localName: \"PEOPLESOFT_EVENT\"},\n ],\n);\n\n/**\n * Represents a monetary amount.\n * Examples:\n * USD 10.99:\n * amount : 109900\n * currency_code: USD\n * decimal_count: 4\n *\n * USD 10.99:\n * amount : 1099\n * currency_code: USD\n * decimal_count: 2\n *\n * USD 10.99:\n * amount : 1099\n * currency_code: USD\n * Note: in this example default decimal_count for USD currency was used\n *\n * USD 10.9912:\n * amount : 109912\n * currency_code: USD\n * decimal_count: 4\n *\n * @generated from message common.v1.Money\n */\nexport const Money = proto3.makeMessageType(\n \"common.v1.Money\",\n () => [\n { no: 1, name: \"amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 2, name: \"currency_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"decimal_count\", kind: \"message\", T: UInt32Value },\n ],\n);\n\n/**\n * Specifies an address.\n * Note: This message models mostly US addresses, other countries will require extra fields.\n *\n * @generated from message common.v1.Address\n */\nexport const Address = proto3.makeMessageType(\n \"common.v1.Address\",\n () => [\n { no: 1, name: \"recipient_name\", jsonName: \"recipientFullName\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"line1\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"line2\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"line3\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"city\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"state\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"country\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"postal_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 9, name: \"email\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 10, name: \"phone\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Specifies an address.\n * Note: This message models mostly US addresses, other countries will require extra fields.\n *\n * @generated from message common.v1.BusinessAddress\n */\nexport const BusinessAddress = proto3.makeMessageType(\n \"common.v1.BusinessAddress\",\n () => [\n { no: 1, name: \"line1\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"line2\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"line3\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"city\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"state\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"country\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"postal_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"address_type_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Provides localized strings that is friendly to return to the end user.\n *\n * @generated from message common.v1.LocalizedString\n */\nexport const LocalizedString = proto3.makeMessageType(\n \"common.v1.LocalizedString\",\n () => [\n { no: 1, name: \"translation\", kind: \"message\", T: LocalizedText, repeated: true },\n ],\n);\n\n/**\n * Represents a decimal value, similar to Java's BigDecimal.\n * Example: 12345.6789 -> { units = 12345, nanos = 678900000 }\n * Example: -12345.6789 -> { units = -12345, nanos = -678900000 }\n *\n * @generated from message common.v1.Decimal\n */\nexport const Decimal = proto3.makeMessageType(\n \"common.v1.Decimal\",\n () => [\n { no: 1, name: \"units\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 2, name: \"nanos\", kind: \"scalar\", T: 15 /* ScalarType.SFIXED32 */ },\n ],\n);\n\n/**\n * @generated from message common.v1.UseBadRequest\n */\nexport const UseBadRequest = proto3.makeMessageType(\n \"common.v1.UseBadRequest\",\n () => [\n { no: 1, name: \"bad_request\", kind: \"message\", T: BadRequest },\n ],\n);\n\n/**\n * @generated from message common.v1.UseMoney\n */\nexport const UseMoney = proto3.makeMessageType(\n \"common.v1.UseMoney\",\n () => [\n { no: 1, name: \"money\", kind: \"message\", T: Money },\n ],\n);\n\n/**\n * TODO: add comment that is used for Getting Settings\n *\n * @generated from message common.v1.PaymentMethodSettings\n */\nexport const PaymentMethodSettings = proto3.makeMessageType(\n \"common.v1.PaymentMethodSettings\",\n () => [\n { no: 1, name: \"card_payment_setting\", kind: \"message\", T: PaymentMethodSettings_CardPaymentSetting },\n ],\n);\n\n/**\n * @generated from message common.v1.PaymentMethodSettings.CardPaymentSetting\n */\nexport const PaymentMethodSettings_CardPaymentSetting = proto3.makeMessageType(\n \"common.v1.PaymentMethodSettings.CardPaymentSetting\",\n () => [\n { no: 1, name: \"accepted_card_network\", kind: \"enum\", T: proto3.getEnumType(CardNetwork), repeated: true },\n ],\n {localName: \"PaymentMethodSettings_CardPaymentSetting\"},\n);\n\n/**\n * Encrypted payment card details.\n * NextId: 13\n *\n * @generated from message common.v1.EncryptedCard\n */\nexport const EncryptedCard = proto3.makeMessageType(\n \"common.v1.EncryptedCard\",\n () => [\n { no: 1, name: \"card_holder_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 12, name: \"encrypted_card_holder_name\", kind: \"message\", T: EncryptedCardHolderName },\n { no: 2, name: \"encrypted_pan\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"cvv\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 9, name: \"encrypted_cvv\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"expiration_month\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 5, name: \"expiration_year\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 10, name: \"encrypted_expiration_month\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 11, name: \"encrypted_expiration_year\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"billing_address\", kind: \"message\", T: PostalAddress },\n { no: 8, name: \"billing_address_same_as_shipping\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 7, name: \"encryption_key_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 13, name: \"pin_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 14, name: \"card_type\", kind: \"enum\", T: proto3.getEnumType(CardType) },\n { no: 15, name: \"preferred_payment_network_routing\", kind: \"enum\", T: proto3.getEnumType(CardNetwork), opt: true },\n { no: 16, name: \"preferred_routing_initiator\", kind: \"enum\", T: proto3.getEnumType(PreferredRoutingInitiator), opt: true },\n ],\n);\n\n/**\n * Encrypted card holder name\n *\n * @generated from message common.v1.EncryptedCardHolderName\n */\nexport const EncryptedCardHolderName = proto3.makeMessageType(\n \"common.v1.EncryptedCardHolderName\",\n () => [\n { no: 1, name: \"encrypted_first_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"encrypted_last_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"encrypted_full_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Models details of a payment card or a payment token used for payments.\n *\n * @generated from message common.v1.PaymentCardOrTokenPaymentMethod\n */\nexport const PaymentCardOrTokenPaymentMethod = proto3.makeMessageType(\n \"common.v1.PaymentCardOrTokenPaymentMethod\",\n () => [\n { no: 1, name: \"payment_method_type\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"account_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"cvv\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"expiration_month\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 5, name: \"expiration_year\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 6, name: \"encryption_integrity_check\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"pie_key_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"pie_phase_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 9, name: \"billing_address\", kind: \"message\", T: PostalAddress },\n { no: 10, name: \"original_network_transaction_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 11, name: \"network\", kind: \"enum\", T: proto3.getEnumType(CardNetwork) },\n { no: 12, name: \"pin_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, opt: true },\n { no: 13, name: \"card_type\", kind: \"enum\", T: proto3.getEnumType(CardType), opt: true },\n ],\n);\n\n/**\n * Other type of payment.\n * Example: voucher or checks\n *\n * @generated from message common.v1.OtherPaymentMethod\n */\nexport const OtherPaymentMethod = proto3.makeMessageType(\n \"common.v1.OtherPaymentMethod\",\n [],\n);\n\n/**\n * This is used by card present flow\n *\n * @generated from message common.v1.CardPresentPaymentMethod\n */\nexport const CardPresentPaymentMethod = proto3.makeMessageType(\n \"common.v1.CardPresentPaymentMethod\",\n () => [\n { no: 1, name: \"masked_account_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"auth_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"card_type\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"card_interaction_type\", kind: \"enum\", T: proto3.getEnumType(CardInteractionType) },\n { no: 6, name: \"payment_gateway_transaction_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"tip_eligible\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 8, name: \"application_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Cash type of payment.\n *\n * @generated from message common.v1.CashPaymentMethod\n */\nexport const CashPaymentMethod = proto3.makeMessageType(\n \"common.v1.CashPaymentMethod\",\n () => [\n { no: 2, name: \"cash_tendered\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 3, name: \"change_due\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n ],\n);\n\n/**\n * Models details of ACH (Automated Clearing House) payment method which is used whenever someone\n * instructs the ACH network to \"push\" money from their account to someone else's.\n * This is mostly used in USA.\n *\n * @generated from message common.v1.AchPaymentMethod\n */\nexport const AchPaymentMethod = proto3.makeMessageType(\n \"common.v1.AchPaymentMethod\",\n () => [\n { no: 1, name: \"dda_account_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"bank_routing_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"bank_account_type\", kind: \"enum\", T: proto3.getEnumType(EcpBankAccountType) },\n { no: 5, name: \"ach_verification_type\", kind: \"enum\", T: proto3.getEnumType(AchVerificationType) },\n { no: 4, name: \"billing_address\", kind: \"message\", T: PostalAddress },\n ],\n);\n\n/**\n * Encrypted Electronic Check details.\n *\n * @generated from message common.v1.EncryptedElectronicCheck\n */\nexport const EncryptedElectronicCheck = proto3.makeMessageType(\n \"common.v1.EncryptedElectronicCheck\",\n () => [\n { no: 1, name: \"encrypted_bank_routing_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"encrypted_dda_account_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"bank_account_type\", kind: \"enum\", T: proto3.getEnumType(EcpBankAccountType) },\n { no: 4, name: \"billing_address\", kind: \"message\", T: PostalAddress },\n { no: 5, name: \"billing_address_same_as_shipping\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 6, name: \"encryption_key_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"encrypted_account_holder_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Pay by bank request to UPG details.\n *\n * @generated from message common.v1.EncryptedPayByBank\n */\nexport const EncryptedPayByBank = proto3.makeMessageType(\n \"common.v1.EncryptedPayByBank\",\n () => [\n { no: 1, name: \"tokenized_account_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"bank_account_type\", kind: \"enum\", T: proto3.getEnumType(EcpBankAccountType) },\n { no: 3, name: \"billing_address\", kind: \"message\", T: PostalAddress },\n { no: 4, name: \"billing_address_same_as_shipping\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 5, name: \"encryption_key_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"pay_by_bank_request_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"account_holder_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Defines the Apple Pay Payment bundle header use to decrypt and verify the payment.\n *\n * @generated from message common.v1.ApplePayPaymentHeader\n */\nexport const ApplePayPaymentHeader = proto3.makeMessageType(\n \"common.v1.ApplePayPaymentHeader\",\n () => [\n { no: 1, name: \"application_data\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"ephemeral_public_key\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"public_key_hash\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"transaction_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Defines the Apple Pay encrypted Payment.\n *\n * @generated from message common.v1.ApplePayEncryptedPaymentBundle\n */\nexport const ApplePayEncryptedPaymentBundle = proto3.makeMessageType(\n \"common.v1.ApplePayEncryptedPaymentBundle\",\n () => [\n { no: 1, name: \"version\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"data\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"signature\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"header\", kind: \"message\", T: ApplePayPaymentHeader },\n { no: 5, name: \"display_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Defines object to provide information about validations that has been performed on\n * returned payment method.\n *\n * @generated from message common.v1.GooglePayAssuranceDetailsSpecification\n */\nexport const GooglePayAssuranceDetailsSpecification = proto3.makeMessageType(\n \"common.v1.GooglePayAssuranceDetailsSpecification\",\n () => [\n { no: 1, name: \"account_verfied\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"card_holder_authenticated\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n);\n\n/**\n * Defines object to provide information about selected payment card.\n *\n * @generated from message common.v1.GooglePayCardInfo\n */\nexport const GooglePayCardInfo = proto3.makeMessageType(\n \"common.v1.GooglePayCardInfo\",\n () => [\n { no: 1, name: \"card_details\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"assurance_details\", kind: \"message\", T: GooglePayAssuranceDetailsSpecification },\n { no: 3, name: \"card_network\", kind: \"enum\", T: proto3.getEnumType(CardNetwork) },\n { no: 4, name: \"address\", kind: \"message\", T: PostalAddress },\n ],\n);\n\n/**\n * Defines the generated token data returned from Google Pay as payment method.\n *\n * @generated from message common.v1.GooglePayTokenData\n */\nexport const GooglePayTokenData = proto3.makeMessageType(\n \"common.v1.GooglePayTokenData\",\n () => [\n { no: 1, name: \"digital_signature\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"protocol_version\", kind: \"enum\", T: proto3.getEnumType(GooglePayProtocolVersion) },\n { no: 3, name: \"signed_message\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Defines object to provide tokenization data for the payment method.\n *\n * @generated from message common.v1.GooglePayPaymentMethodTokenizationData\n */\nexport const GooglePayPaymentMethodTokenizationData = proto3.makeMessageType(\n \"common.v1.GooglePayPaymentMethodTokenizationData\",\n () => [\n { no: 1, name: \"type\", kind: \"enum\", T: proto3.getEnumType(GooglePayTokenizationType) },\n { no: 2, name: \"token\", kind: \"message\", T: GooglePayTokenData },\n ],\n);\n\n/**\n * Defines object to provide data for payment method in Google Pay.\n *\n * @generated from message common.v1.GooglePayPaymentMethodData\n */\nexport const GooglePayPaymentMethodData = proto3.makeMessageType(\n \"common.v1.GooglePayPaymentMethodData\",\n () => [\n { no: 1, name: \"type\", kind: \"enum\", T: proto3.getEnumType(GooglePayPaymentMethodType) },\n { no: 2, name: \"description\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"info\", kind: \"message\", T: GooglePayCardInfo },\n { no: 4, name: \"tokenization_data\", kind: \"message\", T: GooglePayPaymentMethodTokenizationData },\n ],\n);\n\n/**\n * Defines the Google Pay encrypted Payment Method.\n *\n * @generated from message common.v1.GooglePayEncryptedPaymentBundle\n */\nexport const GooglePayEncryptedPaymentBundle = proto3.makeMessageType(\n \"common.v1.GooglePayEncryptedPaymentBundle\",\n () => [\n { no: 1, name: \"api_version\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 2, name: \"api_version_minor\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 3, name: \"payment_method_data\", kind: \"message\", T: GooglePayPaymentMethodData },\n { no: 4, name: \"email\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"shipping_address\", kind: \"message\", T: PostalAddress },\n ],\n);\n\n/**\n * Defines Paze encrypted bundle.\n *\n * @generated from message common.v1.PazeEncryptedPaymentBundle\n */\nexport const PazeEncryptedPaymentBundle = proto3.makeMessageType(\n \"common.v1.PazeEncryptedPaymentBundle\",\n () => [\n { no: 1, name: \"encrypted_payload\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"last_4_of_card_pan\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Defines the encrypted Wallet Payment Bundle.\n *\n * @generated from message common.v1.EncryptedWalletPaymentBundle\n */\nexport const EncryptedWalletPaymentBundle = proto3.makeMessageType(\n \"common.v1.EncryptedWalletPaymentBundle\",\n () => [\n { no: 1, name: \"apple_pay_encrypted_payment_bundle\", kind: \"message\", T: ApplePayEncryptedPaymentBundle, oneof: \"encrypted_payment_bundle\" },\n { no: 2, name: \"google_pay_encrypted_payment_bundle\", kind: \"message\", T: GooglePayEncryptedPaymentBundle, oneof: \"encrypted_payment_bundle\" },\n { no: 3, name: \"paze_encrypted_payment_bundle\", kind: \"message\", T: PazeEncryptedPaymentBundle, oneof: \"encrypted_payment_bundle\" },\n ],\n);\n\n/**\n * Encrypted Payment Wallet details.\n *\n * @generated from message common.v1.EncryptedWallet\n */\nexport const EncryptedWallet = proto3.makeMessageType(\n \"common.v1.EncryptedWallet\",\n () => [\n { no: 1, name: \"encrypted_wallet_payment_bundle\", kind: \"message\", T: EncryptedWalletPaymentBundle },\n { no: 2, name: \"billing_address\", kind: \"message\", T: PostalAddress },\n ],\n);\n\n/**\n * Pay with payment profile referenced by ShopperProfile.payment_gateway_profile_id.\n * NextId: 7\n *\n * @generated from message common.v1.EncryptedStoredPaymentMethod\n */\nexport const EncryptedStoredPaymentMethod = proto3.makeMessageType(\n \"common.v1.EncryptedStoredPaymentMethod\",\n () => [\n { no: 2, name: \"payment_method_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"card_cvv\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"encrypted_card_cvv\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"update_details\", kind: \"message\", T: StoredPaymentMethodUpdateDetails },\n { no: 6, name: \"encryption_key_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Defines SEPA payment method details.\n * NextId: 6\n *\n * @generated from message common.v1.EncryptedSepa\n */\nexport const EncryptedSepa = proto3.makeMessageType(\n \"common.v1.EncryptedSepa\",\n () => [\n { no: 1, name: \"encrypted_bic\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"encrypted_iban\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"billing_address\", kind: \"message\", T: PostalAddress },\n { no: 4, name: \"billing_address_same_as_shipping\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 5, name: \"encryption_key_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"shopper_email_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Defines stored payment method update details.\n * NextId: 6\n *\n * @generated from message common.v1.StoredPaymentMethodUpdateDetails\n */\nexport const StoredPaymentMethodUpdateDetails = proto3.makeMessageType(\n \"common.v1.StoredPaymentMethodUpdateDetails\",\n () => [\n { no: 1, name: \"set_as_default\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 5, name: \"billing_address_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"billing_address\", kind: \"message\", T: PostalAddress },\n { no: 3, name: \"card\", kind: \"message\", T: CardUpdateDetails, oneof: \"payment_method_details\" },\n { no: 4, name: \"ecp\", kind: \"message\", T: EcpUpdateDetails, oneof: \"payment_method_details\" },\n { no: 6, name: \"sepa\", kind: \"message\", T: SepaUpdateDetails, oneof: \"payment_method_details\" },\n ],\n);\n\n/**\n * Defines EU LPMs.\n *\n * @generated from message common.v1.Lpm\n */\nexport const Lpm = proto3.makeMessageType(\n \"common.v1.Lpm\",\n () => [\n { no: 1, name: \"lpm_type\", kind: \"enum\", T: proto3.getEnumType(LpmType) },\n { no: 2, name: \"billing_address\", kind: \"message\", T: PostalAddress },\n { no: 3, name: \"preferred_language\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Defines card payment method update details.\n *\n * @generated from message common.v1.CardUpdateDetails\n */\nexport const CardUpdateDetails = proto3.makeMessageType(\n \"common.v1.CardUpdateDetails\",\n () => [\n { no: 1, name: \"expiration_month\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 2, name: \"expiration_year\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 3, name: \"card_holder_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Defines ECP payment method update details.\n *\n * @generated from message common.v1.EcpUpdateDetails\n */\nexport const EcpUpdateDetails = proto3.makeMessageType(\n \"common.v1.EcpUpdateDetails\",\n () => [\n { no: 1, name: \"account_holder_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Defines ECP payment method update details.\n *\n * @generated from message common.v1.SepaUpdateDetails\n */\nexport const SepaUpdateDetails = proto3.makeMessageType(\n \"common.v1.SepaUpdateDetails\",\n () => [\n { no: 1, name: \"account_holder_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message common.v1.CheckoutOptions\n */\nexport const CheckoutOptions = proto3.makeMessageType(\n \"common.v1.CheckoutOptions\",\n () => [\n { no: 1, name: \"auth_options\", jsonName: \"authorization\", kind: \"message\", T: AuthOptions },\n { no: 2, name: \"capture_options\", jsonName: \"capture\", kind: \"message\", T: CaptureOptions },\n { no: 3, name: \"shopper_profile_options\", jsonName: \"consumerProfileOptions\", kind: \"message\", T: ShopperProfileOptions },\n { no: 4, name: \"payment_method_options\", kind: \"message\", T: PaymentMethodOptions },\n { no: 5, name: \"payment_card_sca_request\", jsonName: \"paymentCardAuthenticationRequest\", kind: \"message\", T: PaymentCardScaRequest },\n { no: 6, name: \"fraud_check_options\", kind: \"message\", T: FraudCheckOptions },\n { no: 7, name: \"settlement_split_options\", kind: \"message\", T: SettlementSplitOptions },\n { no: 8, name: \"cookie_policy\", kind: \"enum\", T: proto3.getEnumType(CookiePolicy) },\n ],\n);\n\n/**\n * @generated from message common.v1.PaymentLinkCheckoutOptions\n */\nexport const PaymentLinkCheckoutOptions = proto3.makeMessageType(\n \"common.v1.PaymentLinkCheckoutOptions\",\n () => [\n { no: 1, name: \"auth_options\", jsonName: \"authorization\", kind: \"message\", T: AuthOptions },\n { no: 2, name: \"capture_options\", jsonName: \"capture\", kind: \"message\", T: CaptureOptions },\n { no: 3, name: \"shopper_profile_options\", jsonName: \"consumerProfileOptions\", kind: \"message\", T: ShopperProfileOptions },\n { no: 4, name: \"payment_method_options\", kind: \"message\", T: PaymentMethodOptions },\n { no: 5, name: \"payment_card_sca_request\", jsonName: \"paymentCardAuthenticationRequest\", kind: \"message\", T: PaymentCardScaRequest },\n ],\n);\n\n/**\n * @generated from message common.v1.SettlementSplitOptions\n */\nexport const SettlementSplitOptions = proto3.makeMessageType(\n \"common.v1.SettlementSplitOptions\",\n () => [\n { no: 1, name: \"splits\", kind: \"message\", T: SettlementSplitOptions_Split, repeated: true },\n ],\n);\n\n/**\n * @generated from message common.v1.SettlementSplitOptions.Split\n */\nexport const SettlementSplitOptions_Split = proto3.makeMessageType(\n \"common.v1.SettlementSplitOptions.Split\",\n () => [\n { no: 1, name: \"account\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"us_party_identifier\", kind: \"message\", T: SettlementSplitOptions_Split_UsPartyIdentifier, oneof: \"party_identifier\" },\n { no: 2, name: \"amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */, oneof: \"amount_details\" },\n { no: 4, name: \"line_item_ids\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 5, name: \"description\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"merchant_reference\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n {localName: \"SettlementSplitOptions_Split\"},\n);\n\n/**\n * USA Party Identifier details\n *\n * @generated from message common.v1.SettlementSplitOptions.Split.UsPartyIdentifier\n */\nexport const SettlementSplitOptions_Split_UsPartyIdentifier = proto3.makeMessageType(\n \"common.v1.SettlementSplitOptions.Split.UsPartyIdentifier\",\n () => [\n { no: 1, name: \"account_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"routing_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n {localName: \"SettlementSplitOptions_Split_UsPartyIdentifier\"},\n);\n\n/**\n * @generated from message common.v1.RefundSplitOptions\n */\nexport const RefundSplitOptions = proto3.makeMessageType(\n \"common.v1.RefundSplitOptions\",\n () => [\n { no: 1, name: \"splits\", kind: \"message\", T: RefundSplitOptions_Split, repeated: true },\n ],\n);\n\n/**\n * @generated from message common.v1.RefundSplitOptions.Split\n */\nexport const RefundSplitOptions_Split = proto3.makeMessageType(\n \"common.v1.RefundSplitOptions.Split\",\n () => [\n { no: 1, name: \"account\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */, oneof: \"amount_details\" },\n ],\n {localName: \"RefundSplitOptions_Split\"},\n);\n\n/**\n * @generated from message common.v1.PaymentMethodOptions\n */\nexport const PaymentMethodOptions = proto3.makeMessageType(\n \"common.v1.PaymentMethodOptions\",\n () => [\n { no: 1, name: \"accepted_payment_method_types\", kind: \"enum\", T: proto3.getEnumType(PaymentMethodType), repeated: true },\n ],\n);\n\n/**\n * @generated from message common.v1.FraudCheckOptions\n */\nexport const FraudCheckOptions = proto3.makeMessageType(\n \"common.v1.FraudCheckOptions\",\n () => [\n { no: 1, name: \"ignore_device_data\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"consumer_create_timestamp\", kind: \"message\", T: Timestamp },\n ],\n);\n\n/**\n * @generated from message common.v1.AuthOptions\n */\nexport const AuthOptions = proto3.makeMessageType(\n \"common.v1.AuthOptions\",\n () => [\n { no: 1, name: \"auth_method\", jsonName: \"authorizationType\", kind: \"enum\", T: proto3.getEnumType(AuthMethod) },\n { no: 2, name: \"soft_merchant_descriptor\", jsonName: \"softMerchant\", kind: \"message\", T: SoftMerchantDescriptor },\n { no: 3, name: \"cit_options\", kind: \"message\", T: CITOptions },\n { no: 4, name: \"cof_options\", jsonName: \"cardOnFile\", kind: \"message\", T: AuthOptions_CofOptions },\n { no: 5, name: \"is_estimated_amount\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 6, name: \"soft_merchant_descriptors\", kind: \"message\", T: SoftMerchantDescriptors },\n { no: 7, name: \"sub_merchant_supplemental_data\", kind: \"message\", T: SubMerchantSupplementalData },\n { no: 8, name: \"partial_authorization_support\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n);\n\n/**\n * @generated from message common.v1.AuthOptions.CofOptions\n */\nexport const AuthOptions_CofOptions = proto3.makeMessageType(\n \"common.v1.AuthOptions.CofOptions\",\n () => [\n { no: 1, name: \"type\", jsonName: \"transactionType\", kind: \"enum\", T: proto3.getEnumType(AuthOptions_CofOptions_CofTransactionType) },\n { no: 2, name: \"recurring_payment_details\", kind: \"message\", T: AuthOptions_CofOptions_RecurringPaymentDetails, oneof: \"cof_details\" },\n { no: 3, name: \"installment_payment_details\", kind: \"message\", T: AuthOptions_CofOptions_InstallmentPaymentDetails, oneof: \"cof_details\" },\n ],\n {localName: \"AuthOptions_CofOptions\"},\n);\n\n/**\n * Defines CoF transaction types.\n *\n * @generated from enum common.v1.AuthOptions.CofOptions.CofTransactionType\n */\nexport const AuthOptions_CofOptions_CofTransactionType = proto3.makeEnum(\n \"common.v1.AuthOptions.CofOptions.CofTransactionType\",\n [\n {no: 0, name: \"COF_TRANSACTION_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"COF_TRANSACTION_TYPE_RECURRING\", localName: \"RECURRING\"},\n {no: 2, name: \"COF_TRANSACTION_TYPE_INSTALLMENT\", localName: \"INSTALLMENT\"},\n {no: 3, name: \"COF_TRANSACTION_TYPE_UNSCHEDULED\", localName: \"UNSCHEDULED\"},\n ],\n);\n\n/**\n * @generated from message common.v1.AuthOptions.CofOptions.RecurringPaymentDetails\n */\nexport const AuthOptions_CofOptions_RecurringPaymentDetails = proto3.makeMessageType(\n \"common.v1.AuthOptions.CofOptions.RecurringPaymentDetails\",\n () => [\n { no: 1, name: \"payment_agreement_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n {localName: \"AuthOptions_CofOptions_RecurringPaymentDetails\"},\n);\n\n/**\n * @generated from message common.v1.AuthOptions.CofOptions.InstallmentPaymentDetails\n */\nexport const AuthOptions_CofOptions_InstallmentPaymentDetails = proto3.makeMessageType(\n \"common.v1.AuthOptions.CofOptions.InstallmentPaymentDetails\",\n () => [\n { no: 1, name: \"payment_plan_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n {localName: \"AuthOptions_CofOptions_InstallmentPaymentDetails\"},\n);\n\n/**\n * Defines the soft descriptor.\n * Soft descriptor is a tag that will appear on the cardholder's statement and helps the cardholder\n * identify the transaction.\n * Next ID: 14\n *\n * @generated from message common.v1.SoftMerchantDescriptor\n */\nexport const SoftMerchantDescriptor = proto3.makeMessageType(\n \"common.v1.SoftMerchantDescriptor\",\n () => [\n { no: 1, name: \"name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"merchant_purchase_description\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"city\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"phone\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"url\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"email\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"visa_merchant_verification_value_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"master_card_merchant_verification_value_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 9, name: \"merchant_incorporation_status\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 10, name: \"foreign_merchant_indicator\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 11, name: \"address\", kind: \"message\", T: BusinessAddress },\n { no: 13, name: \"merchant_category_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Additional data for sub merchants using Payment Facilitation.\n *\n * @generated from message common.v1.MerchantIdentification\n */\nexport const MerchantIdentification = proto3.makeMessageType(\n \"common.v1.MerchantIdentification\",\n () => [\n { no: 1, name: \"sub_merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"service_entitlement_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"seller_identifier\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Additional data for sub merchants using Payment Facilitation.\n *\n * @generated from message common.v1.SubMerchantSupplementalData\n */\nexport const SubMerchantSupplementalData = proto3.makeMessageType(\n \"common.v1.SubMerchantSupplementalData\",\n () => [\n { no: 1, name: \"merchant_identification\", kind: \"message\", T: MerchantIdentification },\n ],\n);\n\n/**\n * Defines the soft descriptor.\n * Soft descriptor is a tag that will appear on the cardholder's statement and helps the cardholder\n * identify the transaction.\n * NextId: 7\n *\n * @generated from message common.v1.SoftMerchantDescriptors\n */\nexport const SoftMerchantDescriptors = proto3.makeMessageType(\n \"common.v1.SoftMerchantDescriptors\",\n () => [\n { no: 1, name: \"name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"merchant_location_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"contact_info\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"address\", kind: \"message\", T: BusinessAddress },\n { no: 5, name: \"category_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"email\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"phone\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"service_establishment_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 9, name: \"tax_exempt_charity_indicator\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 10, name: \"seller_identifier\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Defines Customer initiated transaction options.\n * TODO(vmiksonov): Remove this message once we start to use CofOptions.\n *\n * @generated from message common.v1.CITOptions\n * @deprecated\n */\nexport const CITOptions = proto3.makeMessageType(\n \"common.v1.CITOptions\",\n () => [\n { no: 1, name: \"cit_message_type\", kind: \"enum\", T: proto3.getEnumType(CitMessageType) },\n { no: 2, name: \"cit_store_credentials\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n);\n\n/**\n * @generated from message common.v1.CaptureOptions\n */\nexport const CaptureOptions = proto3.makeMessageType(\n \"common.v1.CaptureOptions\",\n () => [\n { no: 1, name: \"capture_method\", kind: \"enum\", T: proto3.getEnumType(CaptureMethod) },\n ],\n);\n\n/**\n * @generated from message common.v1.ShopperProfileOptions\n */\nexport const ShopperProfileOptions = proto3.makeMessageType(\n \"common.v1.ShopperProfileOptions\",\n () => [\n { no: 1, name: \"save_profile\", jsonName: \"isSaveConsumerProfile\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n);\n\n/**\n * Tokenized payment method.\n *\n * @generated from message common.v1.TokenizedPaymentMethod\n */\nexport const TokenizedPaymentMethod = proto3.makeMessageType(\n \"common.v1.TokenizedPaymentMethod\",\n () => [\n { no: 1, name: \"token_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"type\", kind: \"enum\", T: proto3.getEnumType(TokenType) },\n { no: 3, name: \"status\", kind: \"enum\", T: proto3.getEnumType(TokenizationStatus) },\n { no: 4, name: \"response_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"response_message\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * ORGANIZATION ENTITY\n *\n * @generated from message common.v1.Merchant\n */\nexport const Merchant = proto3.makeMessageType(\n \"common.v1.Merchant\",\n () => [\n { no: 1, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"legal_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"parent_org\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"payment_gateway_mid\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"safetech_merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"notifications_onboarded\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 9, name: \"created_by\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 10, name: \"created_at\", kind: \"message\", T: Timestamp },\n { no: 11, name: \"updated_by\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 12, name: \"updated_at\", kind: \"message\", T: Timestamp },\n { no: 13, name: \"payment_gateway_type\", kind: \"enum\", T: proto3.getEnumType(PaymentGatewayType) },\n { no: 14, name: \"onboarding_status\", kind: \"enum\", T: proto3.getEnumType(OnboardingStatus) },\n { no: 15, name: \"auth_accounts\", kind: \"message\", T: AuthAccount, repeated: true },\n { no: 16, name: \"jpmc_wallet_program_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Shipping method information.\n *\n * @generated from message common.v1.ShippingMethod\n */\nexport const ShippingMethod = proto3.makeMessageType(\n \"common.v1.ShippingMethod\",\n () => [\n { no: 1, name: \"name\", kind: \"message\", T: LocalizedString },\n { no: 2, name: \"description\", kind: \"message\", T: LocalizedString },\n { no: 3, name: \"cost\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 4, name: \"estimated_delivery_date\", kind: \"message\", T: Timestamp },\n ],\n);\n\n/**\n * Defines the Client used by Merchant for AuthZ/AuthN.\n *\n * @generated from message common.v1.AuthAccount\n */\nexport const AuthAccount = proto3.makeMessageType(\n \"common.v1.AuthAccount\",\n () => [\n { no: 1, name: \"fid\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"client_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message common.v1.MandateAcknowledgement\n */\nexport const MandateAcknowledgement = proto3.makeMessageType(\n \"common.v1.MandateAcknowledgement\",\n () => [\n { no: 3, name: \"mandates\", kind: \"message\", T: MandateAcknowledgement_Mandates, repeated: true },\n { no: 4, name: \"device\", kind: \"message\", T: Device },\n { no: 5, name: \"accepted_timestamp\", kind: \"message\", T: Timestamp },\n { no: 6, name: \"consents\", kind: \"message\", T: MandateAcknowledgement_Consent, repeated: true },\n ],\n);\n\n/**\n * @generated from enum common.v1.MandateAcknowledgement.AcceptedFlag\n */\nexport const MandateAcknowledgement_AcceptedFlag = proto3.makeEnum(\n \"common.v1.MandateAcknowledgement.AcceptedFlag\",\n [\n {no: 0, name: \"ACCEPTED_FLAG_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"ACCEPTED_FLAG_Y\", localName: \"Y\"},\n {no: 2, name: \"ACCEPTED_FLAG_N\", localName: \"N\"},\n {no: 3, name: \"ACCEPTED_FLAG_NA\", localName: \"NA\"},\n ],\n);\n\n/**\n * Types of mandate\n *\n * @generated from enum common.v1.MandateAcknowledgement.MandateType\n */\nexport const MandateAcknowledgement_MandateType = proto3.makeEnum(\n \"common.v1.MandateAcknowledgement.MandateType\",\n [\n {no: 0, name: \"MANDATE_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"MANDATE_TYPE_PLACE_ORDER\", localName: \"PLACE_ORDER\"},\n {no: 2, name: \"MANDATE_TYPE_CARD\", localName: \"CARD\"},\n {no: 3, name: \"MANDATE_TYPE_ECP\", localName: \"ECP\"},\n {no: 4, name: \"MANDATE_TYPE_PAY_BY_BANK\", localName: \"PAY_BY_BANK\"},\n {no: 5, name: \"MANDATE_TYPE_SEPA\", localName: \"SEPA\"},\n {no: 6, name: \"MANDATE_TYPE_GLOBAL\", localName: \"GLOBAL\"},\n ],\n);\n\n/**\n * Types of Consents\n *\n * @generated from enum common.v1.MandateAcknowledgement.ConsentType\n */\nexport const MandateAcknowledgement_ConsentType = proto3.makeEnum(\n \"common.v1.MandateAcknowledgement.ConsentType\",\n [\n {no: 0, name: \"CONSENT_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"CONSENT_TYPE_PROFILE_CONSENT\", localName: \"PROFILE_CONSENT\"},\n ],\n);\n\n/**\n * @generated from enum common.v1.MandateAcknowledgement.AcknowledgementType\n */\nexport const MandateAcknowledgement_AcknowledgementType = proto3.makeEnum(\n \"common.v1.MandateAcknowledgement.AcknowledgementType\",\n [\n {no: 0, name: \"ACKNOWLEDGEMENT_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"ACKNOWLEDGEMENT_TYPE_IMPLICIT\", localName: \"IMPLICIT\"},\n {no: 2, name: \"ACKNOWLEDGEMENT_TYPE_EXPLICIT\", localName: \"EXPLICIT\"},\n ],\n);\n\n/**\n * @generated from message common.v1.MandateAcknowledgement.Mandates\n */\nexport const MandateAcknowledgement_Mandates = proto3.makeMessageType(\n \"common.v1.MandateAcknowledgement.Mandates\",\n () => [\n { no: 1, name: \"mandate_ref\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"acknowledgement_type\", kind: \"enum\", T: proto3.getEnumType(MandateAcknowledgement_AcknowledgementType) },\n { no: 3, name: \"accepted_flag\", kind: \"enum\", T: proto3.getEnumType(MandateAcknowledgement_AcceptedFlag) },\n { no: 4, name: \"mandate_verbiage\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"mandate_type\", kind: \"enum\", T: proto3.getEnumType(MandateAcknowledgement_MandateType) },\n ],\n {localName: \"MandateAcknowledgement_Mandates\"},\n);\n\n/**\n * @generated from message common.v1.MandateAcknowledgement.Consent\n */\nexport const MandateAcknowledgement_Consent = proto3.makeMessageType(\n \"common.v1.MandateAcknowledgement.Consent\",\n () => [\n { no: 1, name: \"acknowledgement_type\", kind: \"enum\", T: proto3.getEnumType(MandateAcknowledgement_AcknowledgementType) },\n { no: 2, name: \"accepted_flag\", kind: \"enum\", T: proto3.getEnumType(MandateAcknowledgement_AcceptedFlag) },\n { no: 3, name: \"consent_verbiage\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"consent_type\", kind: \"enum\", T: proto3.getEnumType(MandateAcknowledgement_ConsentType) },\n ],\n {localName: \"MandateAcknowledgement_Consent\"},\n);\n\n/**\n * @generated from message common.v1.Device\n */\nexport const Device = proto3.makeMessageType(\n \"common.v1.Device\",\n () => [\n { no: 1, name: \"device_ip\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"user_agent\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message common.v1.ExpiresAfter\n */\nexport const ExpiresAfter = proto3.makeMessageType(\n \"common.v1.ExpiresAfter\",\n () => [\n { no: 1, name: \"after\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 2, name: \"unit_time\", kind: \"enum\", T: proto3.getEnumType(UnitTime) },\n ],\n);\n\n/**\n * @generated from message common.v1.ExpiryInfo\n */\nexport const ExpiryInfo = proto3.makeMessageType(\n \"common.v1.ExpiryInfo\",\n () => [\n { no: 1, name: \"expires_on\", kind: \"message\", T: Timestamp, oneof: \"expiry_info\" },\n { no: 2, name: \"expires_after\", kind: \"message\", T: ExpiresAfter, oneof: \"expiry_info\" },\n ],\n);\n\n/**\n * @generated from message common.v1.CardTypeIndicators\n */\nexport const CardTypeIndicators = proto3.makeMessageType(\n \"common.v1.CardTypeIndicators\",\n () => [\n { no: 1, name: \"durbin_regulated\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"level3_eligible\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 3, name: \"issuance_country\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"card_type_category\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"card_issuer_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"card_product_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"card_product_type\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n ],\n);\n\n/**\n * @generated from message common.v1.IdaSettingsInput\n */\nexport const IdaSettingsInput = proto3.makeMessageType(\n \"common.v1.IdaSettingsInput\",\n () => [\n { no: 1, name: \"operation\", kind: \"enum\", T: proto3.getEnumType(Operation) },\n { no: 2, name: \"fid\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"merchant_ids\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n ],\n);\n\n/**\n * @generated from message common.v1.IdentityConfigData\n */\nexport const IdentityConfigData = proto3.makeMessageType(\n \"common.v1.IdentityConfigData\",\n () => [\n { no: 1, name: \"config_key\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"config_value\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message common.v1.GlobalMandate\n */\nexport const GlobalMandate = proto3.makeMessageType(\n \"common.v1.GlobalMandate\",\n () => [\n { no: 1, name: \"mandate_details\", kind: \"message\", T: GlobalMandateDetails },\n { no: 2, name: \"global_mandate_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"global_mandate_type\", kind: \"enum\", T: proto3.getEnumType(GlobalMandateType) },\n ],\n);\n\n/**\n * @generated from message common.v1.GlobalMandateDetails\n */\nexport const GlobalMandateDetails = proto3.makeMessageType(\n \"common.v1.GlobalMandateDetails\",\n () => [\n { no: 1, name: \"show_acknowledgement\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"acknowledgement_required\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 3, name: \"verbiage\", kind: \"message\", T: GlobalMandateVerbiage, repeated: true },\n ],\n);\n\n/**\n * @generated from message common.v1.GlobalMandateVerbiage\n */\nexport const GlobalMandateVerbiage = proto3.makeMessageType(\n \"common.v1.GlobalMandateVerbiage\",\n () => [\n { no: 1, name: \"locale\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"text\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message common.v1.Channel\n */\nexport const Channel = proto3.makeMessageType(\n \"common.v1.Channel\",\n () => [\n { no: 1, name: \"locale\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"timezone\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"store_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"agent\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"channel_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"channel_type\", kind: \"enum\", T: proto3.getEnumType(Channel_OrderChannelType) },\n { no: 7, name: \"metadata\", kind: \"map\", K: 9 /* ScalarType.STRING */, V: {kind: \"scalar\", T: 9 /* ScalarType.STRING */} },\n { no: 8, name: \"source_system_identifier\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 9, name: \"source_system_transaction_identifier\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Order Channel Type indicates the type of channel used while placing an order\n *\n * @generated from enum common.v1.Channel.OrderChannelType\n */\nexport const Channel_OrderChannelType = proto3.makeEnum(\n \"common.v1.Channel.OrderChannelType\",\n [\n {no: 0, name: \"ORDER_CHANNEL_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"ORDER_CHANNEL_TYPE_WEB\", localName: \"WEB\"},\n {no: 2, name: \"ORDER_CHANNEL_TYPE_IOS\", localName: \"IOS\"},\n {no: 3, name: \"ORDER_CHANNEL_TYPE_ANDROID\", localName: \"ANDROID\"},\n ],\n);\n\n/**\n * @generated from message common.v1.BrowserData\n */\nexport const BrowserData = proto3.makeMessageType(\n \"common.v1.BrowserData\",\n () => [\n { no: 1, name: \"device_ip_address\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"browser_user_agent\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"device_local_time_zone\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message common.v1.MerchantInfo\n */\nexport const MerchantInfo = proto3.makeMessageType(\n \"common.v1.MerchantInfo\",\n () => [\n { no: 1, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"merchant_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"payment_gateway_type\", kind: \"enum\", T: proto3.getEnumType(PaymentGatewayType) },\n ],\n);\n\n/**\n * Defines Wallet Program to be used in Checkout Marketplace.\n *\n * @generated from message common.v1.WalletProgram\n */\nexport const WalletProgram = proto3.makeMessageType(\n \"common.v1.WalletProgram\",\n () => [\n { no: 1, name: \"organization_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"program_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"sponsored\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 4, name: \"ach_origin_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"ach_origin_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"dda\", kind: \"message\", T: Dda },\n { no: 7, name: \"jpm_company_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"c1_pay_into_account_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 9, name: \"platform_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Defines the attributes for Demand Deposit Account.\n *\n * @generated from message common.v1.Dda\n */\nexport const Dda = proto3.makeMessageType(\n \"common.v1.Dda\",\n () => [\n { no: 1, name: \"jpm_company_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"account_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"account_holder_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"currency\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"address\", kind: \"message\", T: PostalAddress },\n { no: 6, name: \"financial_institution\", kind: \"message\", T: FinancialInstitution },\n ],\n);\n\n/**\n * Defines the attributes for Financial Institution.\n *\n * @generated from message common.v1.FinancialInstitution\n */\nexport const FinancialInstitution = proto3.makeMessageType(\n \"common.v1.FinancialInstitution\",\n () => [\n { no: 1, name: \"bic\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"routing_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"address\", kind: \"message\", T: PostalAddress },\n ],\n);\n\n/**\n * @generated from message common.v1.EncryptedCardInfo\n */\nexport const EncryptedCardInfo = proto3.makeMessageType(\n \"common.v1.EncryptedCardInfo\",\n () => [\n { no: 1, name: \"card\", kind: \"message\", T: EncryptedCard },\n { no: 2, name: \"is_nonce_generation\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n);\n\n/**\n * @generated from message common.v1.SendTo\n */\nexport const SendTo = proto3.makeMessageType(\n \"common.v1.SendTo\",\n () => [\n { no: 1, name: \"emails\", jsonName: \"consumerEmails\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n ],\n);\n\n/**\n * @generated from message common.v1.MerchantOnboardingEvent\n */\nexport const MerchantOnboardingEvent = proto3.makeMessageType(\n \"common.v1.MerchantOnboardingEvent\",\n () => [\n { no: 1, name: \"event_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"event_source\", kind: \"enum\", T: proto3.getEnumType(MerchantEventSource) },\n { no: 3, name: \"status\", kind: \"enum\", T: proto3.getEnumType(DlqStatus) },\n { no: 4, name: \"updated_by\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"created_at\", kind: \"message\", T: Timestamp },\n { no: 6, name: \"updated_at\", kind: \"message\", T: Timestamp },\n { no: 7, name: \"error_message\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"number_of_retries\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 9, name: \"payload\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n","// Copyright 2021 Google LLC\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file google/type/date.proto (package google.type, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\n\n/**\n * Represents a whole or partial calendar date, such as a birthday. The time of\n * day and time zone are either specified elsewhere or are insignificant. The\n * date is relative to the Gregorian Calendar. This can represent one of the\n * following:\n *\n * * A full date, with non-zero year, month, and day values\n * * A month and day value, with a zero year, such as an anniversary\n * * A year on its own, with zero month and day values\n * * A year and month value, with a zero day, such as a credit card expiration\n * date\n *\n * Related types are [google.type.TimeOfDay][google.type.TimeOfDay] and\n * `google.protobuf.Timestamp`.\n *\n * @generated from message google.type.Date\n */\nexport const Date = proto3.makeMessageType(\n \"google.type.Date\",\n () => [\n { no: 1, name: \"year\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 2, name: \"month\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 3, name: \"day\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n ],\n);\n\n","// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file common/v1/merchant_settings.proto (package common.v1, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\nimport { Timestamp } from \"../../google/protobuf/timestamp_pb\";\nimport { Struct } from \"../../google/protobuf/struct_pb\";\nimport { CardNetwork, CardType, DebitAcceptanceType, MerchantSettingsSource, Money, PaymentGatewayType } from \"./common_pb\";\nimport { Date } from \"../../google/type/date_pb\";\n\n/**\n * Defines product types.\n *\n * @generated from enum common.v1.ProductType\n */\nexport const ProductType = proto3.makeEnum(\n \"common.v1.ProductType\",\n [\n {no: 0, name: \"PRODUCT_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"PRODUCT_TYPE_PHYSICAL\", localName: \"PHYSICAL\"},\n {no: 2, name: \"PRODUCT_TYPE_DIGITAL\", localName: \"DIGITAL\"},\n {no: 3, name: \"PRODUCT_TYPE_PHYSICAL_AND_DIGITAL\", localName: \"PHYSICAL_AND_DIGITAL\"},\n ],\n);\n\n/**\n * @generated from enum common.v1.MerchantSettingsStatus\n */\nexport const MerchantSettingsStatus = proto3.makeEnum(\n \"common.v1.MerchantSettingsStatus\",\n [\n {no: 0, name: \"MERCHANT_SETTINGS_STATUS_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"MERCHANT_SETTINGS_STATUS_ACTIVE\", localName: \"ACTIVE\"},\n {no: 2, name: \"MERCHANT_SETTINGS_STATUS_DRAFT\", localName: \"DRAFT\"},\n {no: 3, name: \"MERCHANT_SETTINGS_STATUS_INACTIVE\", localName: \"INACTIVE\"},\n {no: 4, name: \"MERCHANT_SETTINGS_STATUS_PENDING\", localName: \"PENDING\"},\n {no: 5, name: \"MERCHANT_SETTINGS_STATUS_DELETED\", localName: \"DELETED\"},\n ],\n);\n\n/**\n * defines expiration date format for Card Payment method.\n *\n * @generated from enum common.v1.ExpirationDateFormat\n */\nexport const ExpirationDateFormat = proto3.makeEnum(\n \"common.v1.ExpirationDateFormat\",\n [\n {no: 0, name: \"EXPIRATION_DATE_FORMAT_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"EXPIRATION_DATE_FORMAT_SINGLE_INPUT\", localName: \"SINGLE_INPUT\"},\n {no: 2, name: \"EXPIRATION_DATE_FORMAT_SEPARATE_DROPDOWN_INPUT\", localName: \"SEPARATE_DROPDOWN_INPUT\"},\n ],\n);\n\n/**\n * Defined the status for a Merchant domain.\n *\n * @generated from enum common.v1.DomainStatusWithApple\n */\nexport const DomainStatusWithApple = proto3.makeEnum(\n \"common.v1.DomainStatusWithApple\",\n [\n {no: 0, name: \"DOMAIN_STATUS_WITH_APPLE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"DOMAIN_STATUS_WITH_APPLE_UNVERIFIED\", localName: \"UNVERIFIED\"},\n {no: 2, name: \"DOMAIN_STATUS_WITH_APPLE_VERIFIED\", localName: \"VERIFIED\"},\n ],\n);\n\n/**\n * Enum for PayPal button colors\n * https://developer.paypal.com/docs/multiparty/checkout/standard/customize/buttons-style-guide/#color\n *\n * @generated from enum common.v1.PayPalButtonColor\n */\nexport const PayPalButtonColor = proto3.makeEnum(\n \"common.v1.PayPalButtonColor\",\n [\n {no: 0, name: \"PAY_PAL_BUTTON_COLOR_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"PAY_PAL_BUTTON_COLOR_GOLD\", localName: \"GOLD\"},\n {no: 2, name: \"PAY_PAL_BUTTON_COLOR_BLUE\", localName: \"BLUE\"},\n {no: 3, name: \"PAY_PAL_BUTTON_COLOR_SILVER\", localName: \"SILVER\"},\n {no: 4, name: \"PAY_PAL_BUTTON_COLOR_WHITE\", localName: \"WHITE\"},\n {no: 5, name: \"PAY_PAL_BUTTON_COLOR_BLACK\", localName: \"BLACK\"},\n ],\n);\n\n/**\n * Enum for PayPal button text\n * https://developer.paypal.com/docs/multiparty/checkout/standard/customize/buttons-style-guide/#label\n *\n * @generated from enum common.v1.PayPalButtonLabel\n */\nexport const PayPalButtonLabel = proto3.makeEnum(\n \"common.v1.PayPalButtonLabel\",\n [\n {no: 0, name: \"PAY_PAL_BUTTON_LABEL_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"PAY_PAL_BUTTON_LABEL_DEFAULT\", localName: \"DEFAULT\"},\n {no: 2, name: \"PAY_PAL_BUTTON_LABEL_CHECKOUT\", localName: \"CHECKOUT\"},\n {no: 3, name: \"PAY_PAL_BUTTON_LABEL_BUY_NOW\", localName: \"BUY_NOW\"},\n {no: 4, name: \"PAY_PAL_BUTTON_LABEL_PAY_WITH\", localName: \"PAY_WITH\"},\n ],\n);\n\n/**\n * defines masking for PAN.\n *\n * @generated from enum common.v1.PaymentAccountFieldMask\n */\nexport const PaymentAccountFieldMask = proto3.makeEnum(\n \"common.v1.PaymentAccountFieldMask\",\n [\n {no: 0, name: \"PAYMENT_ACCOUNT_FIELD_MASK_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"PAYMENT_ACCOUNT_FIELD_MASK_ALL_DIGITS_EXCEPT_LAST_4\", localName: \"ALL_DIGITS_EXCEPT_LAST_4\"},\n ],\n);\n\n/**\n * Defines the merchant integration type HPP/Drop In\n *\n * @generated from enum common.v1.IntegrationType\n */\nexport const IntegrationType = proto3.makeEnum(\n \"common.v1.IntegrationType\",\n [\n {no: 0, name: \"INTEGRATION_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"INTEGRATION_TYPE_HPP\", localName: \"HPP\"},\n {no: 2, name: \"INTEGRATION_TYPE_DROP_IN\", localName: \"DROP_IN\"},\n {no: 3, name: \"INTEGRATION_TYPE_HOSTED_FIELDS\", localName: \"HOSTED_FIELDS\"},\n ],\n);\n\n/**\n * Defines the Layout for HPP/Drop In\n *\n * @generated from enum common.v1.Layout\n */\nexport const Layout = proto3.makeEnum(\n \"common.v1.Layout\",\n [\n {no: 0, name: \"LAYOUT_DESIGN_UNSPECIFIED\"},\n {no: 1, name: \"LAYOUT_1\"},\n {no: 2, name: \"LAYOUT_2\"},\n {no: 3, name: \"LAYOUT_3\"},\n {no: 4, name: \"LAYOUT_4\"},\n {no: 5, name: \"LAYOUT_5\"},\n ],\n);\n\n/**\n * Defines the products/services offered\n *\n * @generated from enum common.v1.IndustryType\n */\nexport const IndustryType = proto3.makeEnum(\n \"common.v1.IndustryType\",\n [\n {no: 0, name: \"INDUSTRY_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"INDUSTRY_TYPE_GROCERY\", localName: \"GROCERY\"},\n {no: 2, name: \"INDUSTRY_TYPE_APPAREL\", localName: \"APPAREL\"},\n {no: 3, name: \"INDUSTRY_TYPE_ELECTRONICS\", localName: \"ELECTRONICS\"},\n {no: 4, name: \"INDUSTRY_TYPE_HARDWARE\", localName: \"HARDWARE\"},\n {no: 5, name: \"INDUSTRY_TYPE_STREAMING\", localName: \"STREAMING\"},\n {no: 6, name: \"INDUSTRY_TYPE_PHARMACY\", localName: \"PHARMACY\"},\n {no: 7, name: \"INDUSTRY_TYPE_VARIOUS\", localName: \"VARIOUS\"},\n {no: 8, name: \"INDUSTRY_TYPE_AGRICULTURAL_SERVICES\", localName: \"AGRICULTURAL_SERVICES\"},\n {no: 9, name: \"INDUSTRY_TYPE_CONTRACTED_SERVICES\", localName: \"CONTRACTED_SERVICES\"},\n {no: 10, name: \"INDUSTRY_TYPE_TRANSPORTATION_SERVICES\", localName: \"TRANSPORTATION_SERVICES\"},\n {no: 11, name: \"INDUSTRY_TYPE_UTILITY_SERVICES\", localName: \"UTILITY_SERVICES\"},\n {no: 12, name: \"INDUSTRY_TYPE_RETAIL_OUTLET_SERVICES\", localName: \"RETAIL_OUTLET_SERVICES\"},\n {no: 13, name: \"INDUSTRY_TYPE_CLOTHING_STORES\", localName: \"CLOTHING_STORES\"},\n {no: 14, name: \"INDUSTRY_TYPE_MISCELLANEOUS_STORES\", localName: \"MISCELLANEOUS_STORES\"},\n {no: 15, name: \"INDUSTRY_TYPE_BUSINESS_SERVICES\", localName: \"BUSINESS_SERVICES\"},\n {no: 16, name: \"INDUSTRY_TYPE_PROFESSIONAL_SERVICES_AND_MEMBERSHIP_ORGANIZATIONS\", localName: \"PROFESSIONAL_SERVICES_AND_MEMBERSHIP_ORGANIZATIONS\"},\n {no: 17, name: \"INDUSTRY_TYPE_GOVERNMENT_SERVICES\", localName: \"GOVERNMENT_SERVICES\"},\n ],\n);\n\n/**\n * Defines possible outcomes of the timeout during fraud check.\n *\n * @generated from enum common.v1.FraudCheckTimeoutHandlingMode\n */\nexport const FraudCheckTimeoutHandlingMode = proto3.makeEnum(\n \"common.v1.FraudCheckTimeoutHandlingMode\",\n [\n {no: 0, name: \"FRAUD_CHECK_TIMEOUT_HANDLING_MODE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"FRAUD_CHECK_TIMEOUT_HANDLING_MODE_PASSED\", localName: \"PASSED\"},\n {no: 2, name: \"FRAUD_CHECK_TIMEOUT_HANDLING_MODE_DECLINED\", localName: \"DECLINED\"},\n ],\n);\n\n/**\n * Defines possible outcomes when fraud check is in review.\n *\n * @generated from enum common.v1.FraudCheckInReviewHandlingMode\n */\nexport const FraudCheckInReviewHandlingMode = proto3.makeEnum(\n \"common.v1.FraudCheckInReviewHandlingMode\",\n [\n {no: 0, name: \"FRAUD_CHECK_IN_REVIEW_HANDLING_MODE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"FRAUD_CHECK_IN_REVIEW_HANDLING_MODE_PASSED\", localName: \"PASSED\"},\n {no: 2, name: \"FRAUD_CHECK_IN_REVIEW_HANDLING_MODE_DECLINED\", localName: \"DECLINED\"},\n ],\n);\n\n/**\n * Defines possible values for sending fraud check data.\n *\n * @generated from enum common.v1.FraudCheckData\n */\nexport const FraudCheckData = proto3.makeEnum(\n \"common.v1.FraudCheckData\",\n [\n {no: 0, name: \"FRAUD_CHECK_DATA_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"FRAUD_CHECK_DATA_NONE\", localName: \"NONE\"},\n {no: 2, name: \"FRAUD_CHECK_DATA_SHORT_RESPONSE\", localName: \"SHORT_RESPONSE\"},\n {no: 3, name: \"FRAUD_CHECK_DATA_LONG_RESPONSE\", localName: \"LONG_RESPONSE\"},\n ],\n);\n\n/**\n * @generated from enum common.v1.PaymentButtonName\n */\nexport const PaymentButtonName = proto3.makeEnum(\n \"common.v1.PaymentButtonName\",\n [\n {no: 0, name: \"PAYMENT_BUTTON_NAME_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"PAYMENT_BUTTON_NAME_PLACE_ORDER\", localName: \"PLACE_ORDER\"},\n {no: 2, name: \"PAYMENT_BUTTON_NAME_PAY_NOW\", localName: \"PAY_NOW\"},\n {no: 3, name: \"PAYMENT_BUTTON_NAME_SUBMIT\", localName: \"SUBMIT\"},\n {no: 4, name: \"PAYMENT_BUTTON_NAME_CONTINUE\", localName: \"CONTINUE\"},\n {no: 5, name: \"PAYMENT_BUTTON_NAME_PURCHASE\", localName: \"PURCHASE\"},\n {no: 6, name: \"PAYMENT_BUTTON_NAME_SAVE\", localName: \"SAVE\"},\n ],\n);\n\n/**\n * Defines the supported languages by checkout\n *\n * @generated from enum common.v1.SupportedLanguages\n */\nexport const SupportedLanguages = proto3.makeEnum(\n \"common.v1.SupportedLanguages\",\n [\n {no: 0, name: \"SUPPORTED_LANGUAGES_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"SUPPORTED_LANGUAGES_EN_US\", localName: \"EN_US\"},\n {no: 2, name: \"SUPPORTED_LANGUAGES_ES_US\", localName: \"ES_US\"},\n ],\n);\n\n/**\n * Defines the status of the experiment.\n *\n * @generated from enum common.v1.ExperimentStatus\n */\nexport const ExperimentStatus = proto3.makeEnum(\n \"common.v1.ExperimentStatus\",\n [\n {no: 0, name: \"EXPERIMENT_STATUS_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"EXPERIMENT_STATUS_NOT_STARTED\", localName: \"NOT_STARTED\"},\n {no: 2, name: \"EXPERIMENT_STATUS_IN_PROGRESS\", localName: \"IN_PROGRESS\"},\n {no: 3, name: \"EXPERIMENT_STATUS_COMPLETED\", localName: \"COMPLETED\"},\n {no: 4, name: \"EXPERIMENT_STATUS_CANCELLED\", localName: \"CANCELLED\"},\n ],\n);\n\n/**\n * Defines merchant settings.\n *\n * @generated from message common.v1.MerchantSettings\n */\nexport const MerchantSettings = proto3.makeMessageType(\n \"common.v1.MerchantSettings\",\n () => [\n { no: 1, name: \"id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"payment_gateway_mid\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"status\", kind: \"enum\", T: proto3.getEnumType(MerchantSettingsStatus) },\n { no: 5, name: \"active_from\", kind: \"message\", T: Timestamp },\n { no: 6, name: \"merchant_display_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"country\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"ui_settings\", kind: \"message\", T: UISettings },\n { no: 9, name: \"language_config\", kind: \"message\", T: Struct },\n { no: 11, name: \"industry_types\", kind: \"enum\", T: proto3.getEnumType(IndustryType), repeated: true },\n { no: 12, name: \"product_type\", kind: \"enum\", T: proto3.getEnumType(ProductType), repeated: true },\n { no: 13, name: \"supported_card_networks\", kind: \"enum\", T: proto3.getEnumType(CardNetwork), repeated: true },\n { no: 14, name: \"supported_card_types\", kind: \"enum\", T: proto3.getEnumType(CardType), repeated: true },\n { no: 15, name: \"fraud_check\", kind: \"message\", T: FraudCheck },\n { no: 16, name: \"supported_payment_gateway_types\", kind: \"enum\", T: proto3.getEnumType(PaymentGatewayType), repeated: true },\n { no: 17, name: \"provide_cti_data\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 19, name: \"safetech_merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 20, name: \"fraud_check_timeout_handling_mode\", kind: \"enum\", T: proto3.getEnumType(FraudCheckTimeoutHandlingMode) },\n { no: 21, name: \"created_at\", kind: \"message\", T: Timestamp },\n { no: 22, name: \"updated_at\", kind: \"message\", T: Timestamp },\n { no: 23, name: \"created_by\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 24, name: \"updated_by\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 26, name: \"integration_type\", kind: \"enum\", T: proto3.getEnumType(IntegrationType) },\n { no: 27, name: \"payment_methods\", kind: \"message\", T: PaymentMethods },\n { no: 28, name: \"layout\", kind: \"enum\", T: proto3.getEnumType(Layout) },\n { no: 29, name: \"orders_on_hpp\", kind: \"message\", T: OrdersOnHpp },\n { no: 30, name: \"payment_max_retries_allowed\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 32, name: \"notification_subscription\", kind: \"message\", T: NotificationSubscription },\n { no: 33, name: \"abandoned_order_ttl\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 34, name: \"payment_button_name\", kind: \"enum\", T: proto3.getEnumType(PaymentButtonName) },\n { no: 36, name: \"address_autocomplete_enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 38, name: \"supported_ship_to_country_region\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 39, name: \"single_page_app_enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 40, name: \"order_mandates\", kind: \"message\", T: Mandate, repeated: true },\n { no: 41, name: \"security_settings\", kind: \"message\", T: SecuritySettings },\n { no: 42, name: \"page_header\", kind: \"message\", T: PageHeader },\n { no: 43, name: \"brand_experience\", kind: \"message\", T: Struct },\n { no: 44, name: \"l2_l3_data_config\", kind: \"message\", T: L2L3DataConfig },\n { no: 45, name: \"jpmc_wallet_program_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 46, name: \"billing_address_country_restriction\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 50, name: \"default_settings\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 51, name: \"acquirer_tokenization_enabled_indicator\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 52, name: \"segment\", kind: \"message\", T: Segment },\n { no: 53, name: \"platform_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 54, name: \"payment_gateway_type\", kind: \"enum\", T: proto3.getEnumType(PaymentGatewayType) },\n { no: 55, name: \"tax_integration\", kind: \"message\", T: TaxIntegration },\n { no: 56, name: \"surcharge_fee_enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 57, name: \"merchant_accepted_domains\", kind: \"message\", T: MerchantAcceptedDomains },\n { no: 58, name: \"source\", kind: \"enum\", T: proto3.getEnumType(MerchantSettingsSource), opt: true },\n ],\n);\n\n/**\n * merchant segment\n *\n * @generated from message common.v1.Segment\n */\nexport const Segment = proto3.makeMessageType(\n \"common.v1.Segment\",\n () => [\n { no: 1, name: \"segment_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"description\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * merchant segment payload\n *\n * @generated from message common.v1.CreateSegmentPayload\n */\nexport const CreateSegmentPayload = proto3.makeMessageType(\n \"common.v1.CreateSegmentPayload\",\n () => [\n { no: 1, name: \"name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"description\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"segment_id_to_copy\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * UI Settings to be used by FE.\n *\n * @generated from message common.v1.UISettings\n */\nexport const UISettings = proto3.makeMessageType(\n \"common.v1.UISettings\",\n () => [\n { no: 1, name: \"custom_theme\", kind: \"message\", T: Struct },\n { no: 2, name: \"form_config\", kind: \"message\", T: Struct },\n ],\n);\n\n/**\n * Describes all the Supported Method of Payments.\n *\n * @generated from message common.v1.PaymentMethods\n */\nexport const PaymentMethods = proto3.makeMessageType(\n \"common.v1.PaymentMethods\",\n () => [\n { no: 1, name: \"card_payment_method\", kind: \"message\", T: CardPaymentMethod },\n { no: 2, name: \"wallet_payment_method\", kind: \"message\", T: WalletPaymentMethod },\n { no: 3, name: \"ecp_payment_method\", kind: \"message\", T: EcpPaymentMethod },\n { no: 4, name: \"sepa_payment_method\", kind: \"message\", T: SepaPaymentMethod },\n { no: 5, name: \"alt_payment_method\", kind: \"message\", T: AltPaymentMethod },\n { no: 6, name: \"pay_by_bank_payment_method\", kind: \"message\", T: PayByBankPaymentMethod },\n { no: 7, name: \"gift_card_payment_method\", kind: \"message\", T: GiftCardPaymentMethod },\n ],\n);\n\n/**\n * Details about Card Method of Payment.\n * NextId: 15\n *\n * @generated from message common.v1.CardPaymentMethod\n */\nexport const CardPaymentMethod = proto3.makeMessageType(\n \"common.v1.CardPaymentMethod\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"security_code_required\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 3, name: \"payment_account_field_mask\", kind: \"enum\", T: proto3.getEnumType(PaymentAccountFieldMask) },\n { no: 4, name: \"supported_cards\", kind: \"message\", T: SupportedCards, repeated: true },\n { no: 5, name: \"mandate\", kind: \"message\", T: Mandate },\n { no: 6, name: \"billing_address_collection\", kind: \"message\", T: BillingAddressCollection },\n { no: 7, name: \"supported_debit_method\", kind: \"message\", T: CardPaymentMethod_SupportedDebitMethod },\n { no: 8, name: \"capture_security_code_on_card_update\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 9, name: \"capture_security_code_on_pay_with_profile\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 10, name: \"collect_name_on_card\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 11, name: \"expiration_date_format\", kind: \"enum\", T: proto3.getEnumType(ExpirationDateFormat) },\n { no: 12, name: \"collect_consent_to_store_for_future_payments\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 13, name: \"order\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 14, name: \"expiry_date_required\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n);\n\n/**\n * Pinless Debit Payment Settings\n *\n * @generated from message common.v1.CardPaymentMethod.SupportedDebitMethod\n */\nexport const CardPaymentMethod_SupportedDebitMethod = proto3.makeMessageType(\n \"common.v1.CardPaymentMethod.SupportedDebitMethod\",\n () => [\n { no: 1, name: \"pinless_debit_enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"debit_acceptance_type\", kind: \"enum\", T: proto3.getEnumType(DebitAcceptanceType) },\n ],\n {localName: \"CardPaymentMethod_SupportedDebitMethod\"},\n);\n\n/**\n * Settings for supported cards of some specific card network.\n *\n * @generated from message common.v1.SupportedCards\n */\nexport const SupportedCards = proto3.makeMessageType(\n \"common.v1.SupportedCards\",\n () => [\n { no: 2, name: \"network\", kind: \"enum\", T: proto3.getEnumType(CardNetwork) },\n { no: 3, name: \"point_of_sale_currency_codes\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 4, name: \"digital_tokenization_enabled_indicator\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 5, name: \"token_requestor_identifier_list\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n ],\n);\n\n/**\n * Details about Wallet Payment type.\n *\n * @generated from message common.v1.WalletPaymentMethod\n */\nexport const WalletPaymentMethod = proto3.makeMessageType(\n \"common.v1.WalletPaymentMethod\",\n () => [\n { no: 1, name: \"apple_pay\", kind: \"message\", T: ApplePay },\n { no: 2, name: \"google_pay\", kind: \"message\", T: GooglePay },\n { no: 3, name: \"paze\", kind: \"message\", T: Paze },\n ],\n);\n\n/**\n * @generated from message common.v1.Alipay\n */\nexport const Alipay = proto3.makeMessageType(\n \"common.v1.Alipay\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"point_of_sale_currency_codes\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 3, name: \"order\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n ],\n);\n\n/**\n * Apple Pay Wallet Settings.\n *\n * @generated from message common.v1.ApplePay\n */\nexport const ApplePay = proto3.makeMessageType(\n \"common.v1.ApplePay\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 3, name: \"merchant_domains\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 5, name: \"apple_pay_button\", kind: \"message\", T: ApplePayButton },\n { no: 6, name: \"domains\", kind: \"message\", T: MerchantDomain, repeated: true },\n { no: 7, name: \"order\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n ],\n);\n\n/**\n * Stores Merchant domain information.\n *\n * @generated from message common.v1.MerchantDomain\n */\nexport const MerchantDomain = proto3.makeMessageType(\n \"common.v1.MerchantDomain\",\n () => [\n { no: 1, name: \"domain_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"domain_status_with_apple\", kind: \"enum\", T: proto3.getEnumType(DomainStatusWithApple) },\n ],\n);\n\n/**\n * PayPal Settings.\n *\n * @generated from message common.v1.Paypal\n */\nexport const Paypal = proto3.makeMessageType(\n \"common.v1.Paypal\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"point_of_sale_currency_codes\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 3, name: \"button_color\", kind: \"enum\", T: proto3.getEnumType(PayPalButtonColor) },\n { no: 4, name: \"button_label\", kind: \"enum\", T: proto3.getEnumType(PayPalButtonLabel) },\n { no: 5, name: \"order\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n ],\n);\n\n/**\n * WeChatPay Wallet Settings.\n *\n * @generated from message common.v1.WechatPay\n */\nexport const WechatPay = proto3.makeMessageType(\n \"common.v1.WechatPay\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"point_of_sale_currency_codes\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 3, name: \"order\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n ],\n);\n\n/**\n * Apple Pay Button Styling configuration\n *\n * @generated from message common.v1.ApplePayButton\n */\nexport const ApplePayButton = proto3.makeMessageType(\n \"common.v1.ApplePayButton\",\n () => [\n { no: 1, name: \"type\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"button_style\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"locale\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Google Pay Wallet Settings.\n *\n * @generated from message common.v1.GooglePay\n */\nexport const GooglePay = proto3.makeMessageType(\n \"common.v1.GooglePay\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"google_pay_merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"google_pay_merchant_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"gateway\", kind: \"enum\", T: proto3.getEnumType(GooglePay_Gateway) },\n { no: 5, name: \"gateway_merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"mandate\", kind: \"message\", T: Mandate },\n { no: 7, name: \"google_pay_button\", kind: \"message\", T: GooglePay_GooglePayButton },\n { no: 8, name: \"order\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n ],\n);\n\n/**\n * defines gateway to be used for GooglePay\n *\n * @generated from enum common.v1.GooglePay.Gateway\n */\nexport const GooglePay_Gateway = proto3.makeEnum(\n \"common.v1.GooglePay.Gateway\",\n [\n {no: 0, name: \"GATEWAY_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"GATEWAY_CHASE\", localName: \"CHASE\"},\n ],\n);\n\n/**\n * defines the settings of the Google Pay Button.\n *\n * @generated from message common.v1.GooglePay.GooglePayButton\n */\nexport const GooglePay_GooglePayButton = proto3.makeMessageType(\n \"common.v1.GooglePay.GooglePayButton\",\n () => [\n { no: 1, name: \"button_color\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"button_type\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n {localName: \"GooglePay_GooglePayButton\"},\n);\n\n/**\n * Paze Wallet Settings.\n *\n * @generated from message common.v1.Paze\n */\nexport const Paze = proto3.makeMessageType(\n \"common.v1.Paze\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 3, name: \"client_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"order\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n ],\n);\n\n/**\n * Details about ECP Payment type.\n *\n * @generated from message common.v1.EcpPaymentMethod\n */\nexport const EcpPaymentMethod = proto3.makeMessageType(\n \"common.v1.EcpPaymentMethod\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"confirm_account_number\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 3, name: \"confirm_routing_number\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 4, name: \"mandate\", kind: \"message\", T: Mandate },\n { no: 5, name: \"billing_address_collection\", kind: \"message\", T: BillingAddressCollection },\n { no: 6, name: \"point_of_sale_currency_codes\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 7, name: \"collect_consent_to_store_for_future_payments\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 8, name: \"order\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n ],\n);\n\n/**\n * Details about SEPA Payment type.\n *\n * @generated from message common.v1.SepaPaymentMethod\n */\nexport const SepaPaymentMethod = proto3.makeMessageType(\n \"common.v1.SepaPaymentMethod\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"mandate\", kind: \"message\", T: Mandate },\n { no: 3, name: \"point_of_sale_currency_codes\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 4, name: \"billing_address_collection\", kind: \"message\", T: BillingAddressCollection },\n { no: 5, name: \"order\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 6, name: \"collect_consent_to_store_for_future_payments\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n);\n\n/**\n * Details about Pay By Bank Payment type.\n *\n * @generated from message common.v1.PayByBankPaymentMethod\n */\nexport const PayByBankPaymentMethod = proto3.makeMessageType(\n \"common.v1.PayByBankPaymentMethod\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"experience_identifier\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"external_merchant_identifier\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"mandate\", kind: \"message\", T: Mandate },\n { no: 5, name: \"order\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 6, name: \"point_of_sale_currency_codes\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n ],\n);\n\n/**\n * Details about alternate payment method types.\n *\n * @generated from message common.v1.AltPaymentMethod\n */\nexport const AltPaymentMethod = proto3.makeMessageType(\n \"common.v1.AltPaymentMethod\",\n () => [\n { no: 1, name: \"ideal\", kind: \"message\", T: Ideal },\n { no: 2, name: \"sofort\", kind: \"message\", T: Sofort },\n { no: 3, name: \"giropay\", kind: \"message\", T: Giropay },\n { no: 4, name: \"trustly\", kind: \"message\", T: Trustly },\n { no: 5, name: \"alipay\", kind: \"message\", T: Alipay },\n { no: 6, name: \"wechat_pay\", kind: \"message\", T: WechatPay },\n { no: 7, name: \"paypal\", kind: \"message\", T: Paypal },\n ],\n);\n\n/**\n * Ideal Alt Mops Settings.\n *\n * @generated from message common.v1.Ideal\n */\nexport const Ideal = proto3.makeMessageType(\n \"common.v1.Ideal\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"point_of_sale_currency_codes\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 3, name: \"order\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n ],\n);\n\n/**\n * Sofort Alt Mops Settings.\n *\n * @generated from message common.v1.Sofort\n */\nexport const Sofort = proto3.makeMessageType(\n \"common.v1.Sofort\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"point_of_sale_currency_codes\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 3, name: \"order\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n ],\n);\n\n/**\n * GiroPay Alt Mops Settings.\n *\n * @generated from message common.v1.Giropay\n */\nexport const Giropay = proto3.makeMessageType(\n \"common.v1.Giropay\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"point_of_sale_currency_codes\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 3, name: \"order\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n ],\n);\n\n/**\n * Trustly Alt Mops Settings.\n *\n * @generated from message common.v1.Trustly\n */\nexport const Trustly = proto3.makeMessageType(\n \"common.v1.Trustly\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"point_of_sale_currency_codes\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 3, name: \"order\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n ],\n);\n\n/**\n * Details about GiftCard payment type\n *\n * @generated from message common.v1.GiftCardPaymentMethod\n */\nexport const GiftCardPaymentMethod = proto3.makeMessageType(\n \"common.v1.GiftCardPaymentMethod\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"point_of_sale_currency_codes\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 3, name: \"order\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 4, name: \"collect_pin_code\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */, opt: true },\n ],\n);\n\n/**\n * @generated from message common.v1.Mandate\n */\nexport const Mandate = proto3.makeMessageType(\n \"common.v1.Mandate\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"mandate_ref\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"show_acknowledgement\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 4, name: \"acknowledgement_required\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 5, name: \"mandate_verbiages\", kind: \"message\", T: MandateVerbiage, repeated: true },\n { no: 6, name: \"mandate_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Mandate Verbiage details\n *\n * @generated from message common.v1.MandateVerbiage\n */\nexport const MandateVerbiage = proto3.makeMessageType(\n \"common.v1.MandateVerbiage\",\n () => [\n { no: 1, name: \"locale\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"verbiage\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message common.v1.ThreeDs\n */\nexport const ThreeDs = proto3.makeMessageType(\n \"common.v1.ThreeDs\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"bypass_transaction_amount\", kind: \"message\", T: Money, repeated: true },\n { no: 3, name: \"soft_decline_do_not_authenticate_enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 4, name: \"not_authenticated_do_not_authorize_enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n);\n\n/**\n * @generated from message common.v1.SecuritySettings\n */\nexport const SecuritySettings = proto3.makeMessageType(\n \"common.v1.SecuritySettings\",\n () => [\n { no: 1, name: \"threeds_settings\", kind: \"message\", T: ThreeDs },\n ],\n);\n\n/**\n * @generated from message common.v1.L2L3DataConfig\n */\nexport const L2L3DataConfig = proto3.makeMessageType(\n \"common.v1.L2L3DataConfig\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n);\n\n/**\n * Settings for Billing Address checkboxes\n *\n * @generated from message common.v1.BillingAddressCollection\n */\nexport const BillingAddressCollection = proto3.makeMessageType(\n \"common.v1.BillingAddressCollection\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"show_billing_same_as_shipping_checkbox\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 3, name: \"collect_cardholder_name\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 4, name: \"collect_account_holder_name\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 5, name: \"collect_country_and_zip\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 6, name: \"collect_address_city_state\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 7, name: \"collect_address_line_2\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n);\n\n/**\n * Orders on Hpp (Applicable for HPP layout 1 & HPP layout 2 ONLY)\n *\n * @generated from message common.v1.OrdersOnHpp\n */\nexport const OrdersOnHpp = proto3.makeMessageType(\n \"common.v1.OrdersOnHpp\",\n () => [\n { no: 1, name: \"display_order_summary\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"display_shipping_details\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 3, name: \"display_order_confirmation_page\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 4, name: \"back_to_merchant_url\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"success_redirection_url\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"failure_redirection_url\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"display_contact_info\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 8, name: \"display_cart_items\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n);\n\n/**\n * Details about Fraud Check\n *\n * @generated from message common.v1.FraudCheck\n */\nexport const FraudCheck = proto3.makeMessageType(\n \"common.v1.FraudCheck\",\n () => [\n { no: 1, name: \"enable_fraud_check\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"fraud_check_timeout_handling_mode\", kind: \"enum\", T: proto3.getEnumType(FraudCheckTimeoutHandlingMode) },\n { no: 3, name: \"fraud_check_in_review_handling_mode\", kind: \"enum\", T: proto3.getEnumType(FraudCheckInReviewHandlingMode) },\n { no: 4, name: \"fraud_check_data\", kind: \"enum\", T: proto3.getEnumType(FraudCheckData) },\n ],\n);\n\n/**\n * Defines the page header settings\n *\n * @generated from message common.v1.PageHeader\n */\nexport const PageHeader = proto3.makeMessageType(\n \"common.v1.PageHeader\",\n () => [\n { no: 1, name: \"merchant_logo_settings\", kind: \"message\", T: MerchantLogoSettings },\n { no: 2, name: \"checkout_title\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 3, name: \"return_to_cart\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 4, name: \"return_to_cart_url\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n);\n\n/**\n * Defines the merchant logo settings\n *\n * @generated from message common.v1.MerchantLogoSettings\n */\nexport const MerchantLogoSettings = proto3.makeMessageType(\n \"common.v1.MerchantLogoSettings\",\n () => [\n { no: 1, name: \"merchant_logo_enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"merchant_logo_url\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"merchant_logo_url_mobile\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Defines the notification subscription\n *\n * @generated from message common.v1.NotificationSubscription\n */\nexport const NotificationSubscription = proto3.makeMessageType(\n \"common.v1.NotificationSubscription\",\n () => [\n { no: 1, name: \"enable_profile_notification\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"enable_token_notification\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 3, name: \"enable_order_notification\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 4, name: \"payment_links_notifications\", kind: \"message\", T: PaymentLinksNotifications },\n ],\n);\n\n/**\n * Notifications settings for Pay By Link\n *\n * @generated from message common.v1.PaymentLinksNotifications\n */\nexport const PaymentLinksNotifications = proto3.makeMessageType(\n \"common.v1.PaymentLinksNotifications\",\n () => [\n { no: 1, name: \"enable_pbl_notification\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"customer_pbl_notifications\", kind: \"message\", T: CustomerPblNotifications },\n { no: 3, name: \"merchant_pbl_notifications\", kind: \"message\", T: MerchantPblNotifications },\n ],\n);\n\n/**\n * @generated from message common.v1.CustomerPblNotifications\n */\nexport const CustomerPblNotifications = proto3.makeMessageType(\n \"common.v1.CustomerPblNotifications\",\n () => [\n { no: 1, name: \"enable_payment_link_email\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"enable_payment_confirmation_email\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 3, name: \"enable_auto_reminder_email\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n);\n\n/**\n * @generated from message common.v1.MerchantPblNotifications\n */\nexport const MerchantPblNotifications = proto3.makeMessageType(\n \"common.v1.MerchantPblNotifications\",\n () => [\n { no: 1, name: \"enable_payment_link_email\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"enable_payment_confirmation_email\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n);\n\n/**\n * @generated from message common.v1.CreateMerchantSettingsPayload\n */\nexport const CreateMerchantSettingsPayload = proto3.makeMessageType(\n \"common.v1.CreateMerchantSettingsPayload\",\n () => [\n { no: 2, name: \"country\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"ui_settings\", kind: \"message\", T: UISettings },\n { no: 4, name: \"language_config\", kind: \"message\", T: Struct },\n { no: 5, name: \"currency_codes\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 6, name: \"industry_types\", kind: \"enum\", T: proto3.getEnumType(IndustryType), repeated: true },\n { no: 7, name: \"product_type\", kind: \"enum\", T: proto3.getEnumType(ProductType), repeated: true },\n { no: 11, name: \"supported_payment_gateway_types\", kind: \"enum\", T: proto3.getEnumType(PaymentGatewayType), repeated: true },\n { no: 12, name: \"provide_cti_data\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 14, name: \"fraud_check_timeout_handling_mode\", kind: \"enum\", T: proto3.getEnumType(FraudCheckTimeoutHandlingMode) },\n { no: 16, name: \"payment_methods\", kind: \"message\", T: PaymentMethods },\n { no: 17, name: \"integration_type\", kind: \"enum\", T: proto3.getEnumType(IntegrationType) },\n { no: 18, name: \"layout\", kind: \"enum\", T: proto3.getEnumType(Layout) },\n { no: 19, name: \"merchant_display_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 20, name: \"orders_on_hpp\", kind: \"message\", T: OrdersOnHpp },\n { no: 21, name: \"payment_max_retries_allowed\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 22, name: \"fraud_check\", kind: \"message\", T: FraudCheck },\n { no: 24, name: \"notification_subscription\", kind: \"message\", T: NotificationSubscription },\n { no: 25, name: \"abandoned_order_ttl\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 26, name: \"payment_button_name\", kind: \"enum\", T: proto3.getEnumType(PaymentButtonName) },\n { no: 28, name: \"address_autocomplete_enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 30, name: \"supported_ship_to_country_region\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 31, name: \"single_page_app_enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 32, name: \"order_mandates\", kind: \"message\", T: Mandate, repeated: true },\n { no: 33, name: \"security_settings\", kind: \"message\", T: SecuritySettings },\n { no: 34, name: \"page_header\", kind: \"message\", T: PageHeader },\n { no: 35, name: \"brand_experience\", kind: \"message\", T: Struct },\n { no: 36, name: \"l2_l3_data_config\", kind: \"message\", T: L2L3DataConfig },\n { no: 37, name: \"billing_address_country_restriction\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 38, name: \"acquirer_tokenization_enabled_indicator\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 39, name: \"segment\", kind: \"message\", T: Segment },\n { no: 40, name: \"payment_gateway_type\", kind: \"enum\", T: proto3.getEnumType(PaymentGatewayType) },\n { no: 42, name: \"tax_integration\", kind: \"message\", T: TaxIntegration },\n { no: 43, name: \"surcharge_fee_enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 44, name: \"merchant_accepted_domains\", kind: \"message\", T: MerchantAcceptedDomains },\n ],\n);\n\n/**\n * @generated from message common.v1.TaxIntegration\n */\nexport const TaxIntegration = proto3.makeMessageType(\n \"common.v1.TaxIntegration\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"tax_payer_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"default_tax_rate\", kind: \"scalar\", T: 1 /* ScalarType.DOUBLE */ },\n ],\n);\n\n/**\n * Reference Data Object for Bundle Settings Endpoint MPP\n *\n * @generated from message common.v1.ReferenceData\n */\nexport const ReferenceData = proto3.makeMessageType(\n \"common.v1.ReferenceData\",\n () => [\n { no: 1, name: \"industry_types\", kind: \"enum\", T: proto3.getEnumType(IndustryType), repeated: true },\n { no: 2, name: \"payment_methods\", kind: \"message\", T: ReferenceData_PaymentMethods },\n { no: 3, name: \"fraud_check_enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 4, name: \"supported_languages\", kind: \"enum\", T: proto3.getEnumType(SupportedLanguages), repeated: true },\n { no: 5, name: \"threeds_settings\", kind: \"message\", T: ThreeDs },\n { no: 6, name: \"surcharge_fee_supported\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n);\n\n/**\n * @generated from message common.v1.ReferenceData.PaymentMethods\n */\nexport const ReferenceData_PaymentMethods = proto3.makeMessageType(\n \"common.v1.ReferenceData.PaymentMethods\",\n () => [\n { no: 1, name: \"ecp\", kind: \"message\", T: ReferenceData_PaymentMethods_ECP },\n { no: 2, name: \"card_networks\", kind: \"message\", T: ReferenceData_PaymentMethods_CardNetworks },\n { no: 3, name: \"wallet\", kind: \"message\", T: ReferenceData_PaymentMethods_Wallet },\n { no: 4, name: \"sepa\", kind: \"message\", T: ReferenceData_PaymentMethods_SEPA },\n { no: 5, name: \"pay_by_bank\", kind: \"message\", T: ReferenceData_PaymentMethods_PayByBank },\n { no: 6, name: \"alt_mops\", kind: \"message\", T: ReferenceData_PaymentMethods_AltMops },\n { no: 7, name: \"gift_card\", kind: \"message\", T: ReferenceData_PaymentMethods_GiftCard },\n ],\n {localName: \"ReferenceData_PaymentMethods\"},\n);\n\n/**\n * @generated from message common.v1.ReferenceData.PaymentMethods.ECP\n */\nexport const ReferenceData_PaymentMethods_ECP = proto3.makeMessageType(\n \"common.v1.ReferenceData.PaymentMethods.ECP\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n {localName: \"ReferenceData_PaymentMethods_ECP\"},\n);\n\n/**\n * @generated from message common.v1.ReferenceData.PaymentMethods.SEPA\n */\nexport const ReferenceData_PaymentMethods_SEPA = proto3.makeMessageType(\n \"common.v1.ReferenceData.PaymentMethods.SEPA\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n {localName: \"ReferenceData_PaymentMethods_SEPA\"},\n);\n\n/**\n * @generated from message common.v1.ReferenceData.PaymentMethods.CardNetworks\n */\nexport const ReferenceData_PaymentMethods_CardNetworks = proto3.makeMessageType(\n \"common.v1.ReferenceData.PaymentMethods.CardNetworks\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"values\", kind: \"enum\", T: proto3.getEnumType(CardNetwork), repeated: true },\n ],\n {localName: \"ReferenceData_PaymentMethods_CardNetworks\"},\n);\n\n/**\n * @generated from message common.v1.ReferenceData.PaymentMethods.Wallet\n */\nexport const ReferenceData_PaymentMethods_Wallet = proto3.makeMessageType(\n \"common.v1.ReferenceData.PaymentMethods.Wallet\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"values\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n ],\n {localName: \"ReferenceData_PaymentMethods_Wallet\"},\n);\n\n/**\n * @generated from message common.v1.ReferenceData.PaymentMethods.PayByBank\n */\nexport const ReferenceData_PaymentMethods_PayByBank = proto3.makeMessageType(\n \"common.v1.ReferenceData.PaymentMethods.PayByBank\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n {localName: \"ReferenceData_PaymentMethods_PayByBank\"},\n);\n\n/**\n * Alternative Payment Methods\n *\n * @generated from message common.v1.ReferenceData.PaymentMethods.AltMops\n */\nexport const ReferenceData_PaymentMethods_AltMops = proto3.makeMessageType(\n \"common.v1.ReferenceData.PaymentMethods.AltMops\",\n () => [\n { no: 1, name: \"ali_pay\", kind: \"message\", T: Alipay },\n { no: 2, name: \"wechat_pay\", kind: \"message\", T: ReferenceData_PaymentMethods_AltMops_WechatPay },\n { no: 3, name: \"giro_pay\", kind: \"message\", T: ReferenceData_PaymentMethods_AltMops_GiroPay },\n { no: 4, name: \"sofort\", kind: \"message\", T: ReferenceData_PaymentMethods_AltMops_Sofort },\n { no: 5, name: \"trustly\", kind: \"message\", T: ReferenceData_PaymentMethods_AltMops_Trustly },\n { no: 6, name: \"ideal\", kind: \"message\", T: ReferenceData_PaymentMethods_AltMops_Ideal },\n { no: 7, name: \"paypal\", kind: \"message\", T: ReferenceData_PaymentMethods_AltMops_PayPal },\n ],\n {localName: \"ReferenceData_PaymentMethods_AltMops\"},\n);\n\n/**\n * @generated from message common.v1.ReferenceData.PaymentMethods.AltMops.AliPay\n */\nexport const ReferenceData_PaymentMethods_AltMops_AliPay = proto3.makeMessageType(\n \"common.v1.ReferenceData.PaymentMethods.AltMops.AliPay\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n {localName: \"ReferenceData_PaymentMethods_AltMops_AliPay\"},\n);\n\n/**\n * @generated from message common.v1.ReferenceData.PaymentMethods.AltMops.WechatPay\n */\nexport const ReferenceData_PaymentMethods_AltMops_WechatPay = proto3.makeMessageType(\n \"common.v1.ReferenceData.PaymentMethods.AltMops.WechatPay\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n {localName: \"ReferenceData_PaymentMethods_AltMops_WechatPay\"},\n);\n\n/**\n * @generated from message common.v1.ReferenceData.PaymentMethods.AltMops.GiroPay\n */\nexport const ReferenceData_PaymentMethods_AltMops_GiroPay = proto3.makeMessageType(\n \"common.v1.ReferenceData.PaymentMethods.AltMops.GiroPay\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n {localName: \"ReferenceData_PaymentMethods_AltMops_GiroPay\"},\n);\n\n/**\n * @generated from message common.v1.ReferenceData.PaymentMethods.AltMops.Sofort\n */\nexport const ReferenceData_PaymentMethods_AltMops_Sofort = proto3.makeMessageType(\n \"common.v1.ReferenceData.PaymentMethods.AltMops.Sofort\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n {localName: \"ReferenceData_PaymentMethods_AltMops_Sofort\"},\n);\n\n/**\n * @generated from message common.v1.ReferenceData.PaymentMethods.AltMops.Trustly\n */\nexport const ReferenceData_PaymentMethods_AltMops_Trustly = proto3.makeMessageType(\n \"common.v1.ReferenceData.PaymentMethods.AltMops.Trustly\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n {localName: \"ReferenceData_PaymentMethods_AltMops_Trustly\"},\n);\n\n/**\n * @generated from message common.v1.ReferenceData.PaymentMethods.AltMops.Ideal\n */\nexport const ReferenceData_PaymentMethods_AltMops_Ideal = proto3.makeMessageType(\n \"common.v1.ReferenceData.PaymentMethods.AltMops.Ideal\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n {localName: \"ReferenceData_PaymentMethods_AltMops_Ideal\"},\n);\n\n/**\n * @generated from message common.v1.ReferenceData.PaymentMethods.AltMops.PayPal\n */\nexport const ReferenceData_PaymentMethods_AltMops_PayPal = proto3.makeMessageType(\n \"common.v1.ReferenceData.PaymentMethods.AltMops.PayPal\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n {localName: \"ReferenceData_PaymentMethods_AltMops_PayPal\"},\n);\n\n/**\n * @generated from message common.v1.ReferenceData.PaymentMethods.GiftCard\n */\nexport const ReferenceData_PaymentMethods_GiftCard = proto3.makeMessageType(\n \"common.v1.ReferenceData.PaymentMethods.GiftCard\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n {localName: \"ReferenceData_PaymentMethods_GiftCard\"},\n);\n\n/**\n * @generated from message common.v1.MerchantSettingsMeta\n */\nexport const MerchantSettingsMeta = proto3.makeMessageType(\n \"common.v1.MerchantSettingsMeta\",\n () => [\n { no: 2, name: \"settings_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"status\", kind: \"enum\", T: proto3.getEnumType(MerchantSettingsStatus) },\n { no: 4, name: \"created_at\", kind: \"message\", T: Timestamp },\n { no: 5, name: \"updated_at\", kind: \"message\", T: Timestamp },\n { no: 6, name: \"created_by\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"updated_by\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"active_from\", kind: \"message\", T: Timestamp },\n ],\n);\n\n/**\n * @generated from message common.v1.MerchantAcceptedDomains\n */\nexport const MerchantAcceptedDomains = proto3.makeMessageType(\n \"common.v1.MerchantAcceptedDomains\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"merchant_accepted_domains\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n ],\n);\n\n/**\n * @generated from message common.v1.Experiment\n */\nexport const Experiment = proto3.makeMessageType(\n \"common.v1.Experiment\",\n () => [\n { no: 1, name: \"experiment_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"description\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"status\", kind: \"enum\", T: proto3.getEnumType(ExperimentStatus) },\n { no: 5, name: \"control_segment_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"treatment_segment_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"control_segment_percentage\", kind: \"scalar\", T: 1 /* ScalarType.DOUBLE */ },\n { no: 8, name: \"start_date\", kind: \"message\", T: Timestamp },\n { no: 9, name: \"end_date\", kind: \"message\", T: Timestamp },\n { no: 10, name: \"created_at\", kind: \"message\", T: Timestamp },\n { no: 11, name: \"updated_at\", kind: \"message\", T: Timestamp },\n { no: 12, name: \"created_by\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 13, name: \"updated_by\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message common.v1.ExperimentResult\n */\nexport const ExperimentResult = proto3.makeMessageType(\n \"common.v1.ExperimentResult\",\n () => [\n { no: 1, name: \"segment_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"currency_code_iso_4217\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"num_orders\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 4, name: \"num_completed_orders\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 5, name: \"total_value\", kind: \"scalar\", T: 1 /* ScalarType.DOUBLE */ },\n { no: 6, name: \"total_completed_value\", kind: \"scalar\", T: 1 /* ScalarType.DOUBLE */ },\n { no: 7, name: \"time_to_complete_histogram\", kind: \"message\", T: TimeToCompleteHistogram },\n { no: 8, name: \"experiment_date\", kind: \"message\", T: Date },\n { no: 9, name: \"avg_order_value\", kind: \"scalar\", T: 1 /* ScalarType.DOUBLE */ },\n { no: 10, name: \"conversion_rate\", kind: \"scalar\", T: 1 /* ScalarType.DOUBLE */ },\n { no: 11, name: \"average_ttc_seconds\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 12, name: \"conversion_rate_probability\", kind: \"scalar\", T: 1 /* ScalarType.DOUBLE */ },\n { no: 13, name: \"order_value_probability\", kind: \"scalar\", T: 1 /* ScalarType.DOUBLE */ },\n { no: 14, name: \"completed_order_value_probability\", kind: \"scalar\", T: 1 /* ScalarType.DOUBLE */ },\n { no: 15, name: \"ttc_second_probability\", kind: \"scalar\", T: 1 /* ScalarType.DOUBLE */ },\n ],\n);\n\n/**\n * @generated from message common.v1.ExperimentWithResults\n */\nexport const ExperimentWithResults = proto3.makeMessageType(\n \"common.v1.ExperimentWithResults\",\n () => [\n { no: 1, name: \"experiment\", kind: \"message\", T: Experiment },\n { no: 2, name: \"control_segment_experiment_result\", kind: \"message\", T: ExperimentResult },\n { no: 3, name: \"treatment_segment_experiment_result\", kind: \"message\", T: ExperimentResult },\n { no: 4, name: \"control_segment_experiment_daily_result\", kind: \"message\", T: ExperimentResult, repeated: true },\n { no: 5, name: \"treatment_segment_experiment_daily_result\", kind: \"message\", T: ExperimentResult, repeated: true },\n ],\n);\n\n/**\n * @generated from message common.v1.CreateExperimentPayload\n */\nexport const CreateExperimentPayload = proto3.makeMessageType(\n \"common.v1.CreateExperimentPayload\",\n () => [\n { no: 1, name: \"name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"description\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"control_segment_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"treatment_segment_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"control_segment_percentage\", kind: \"scalar\", T: 1 /* ScalarType.DOUBLE */ },\n { no: 6, name: \"start_date\", kind: \"message\", T: Timestamp },\n { no: 7, name: \"end_date\", kind: \"message\", T: Timestamp },\n ],\n);\n\n/**\n * @generated from message common.v1.TimeToCompleteHistogram\n */\nexport const TimeToCompleteHistogram = proto3.makeMessageType(\n \"common.v1.TimeToCompleteHistogram\",\n () => [\n { no: 1, name: \"minutes\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 2, name: \"num_orders\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n ],\n);\n\n","// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file common/v1/payment_errors.proto (package common.v1, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\n\n/**\n * Defines error codes in case of failure response from pay request.\n * This enum can grow as we support more errors.\n *\n * @generated from enum common.v1.PayRequestErrorCode\n */\nexport const PayRequestErrorCode = proto3.makeEnum(\n \"common.v1.PayRequestErrorCode\",\n [\n {no: 0, name: \"PAY_REQUEST_ERROR_CODE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"PAY_REQUEST_ERROR_CODE_BLOCKED\", localName: \"BLOCKED\"},\n {no: 2, name: \"PAY_REQUEST_ERROR_CODE_INSUFFICIENT_FUNDS\", localName: \"INSUFFICIENT_FUNDS\"},\n {no: 3, name: \"PAY_REQUEST_ERROR_CODE_INVALID_PAYLOAD\", localName: \"INVALID_PAYLOAD\"},\n {no: 4, name: \"PAY_REQUEST_ERROR_CODE_INVALID_ROUTING_NUMBER\", localName: \"INVALID_ROUTING_NUMBER\"},\n {no: 5, name: \"PAY_REQUEST_ERROR_CODE_INELIGIBLE_PINLESS_PAYMENT_METHOD\", localName: \"INELIGIBLE_PINLESS_PAYMENT_METHOD\"},\n {no: 6, name: \"PAY_REQUEST_ERROR_CODE_AUTHENTICATION_REQUESTED\", localName: \"AUTHENTICATION_REQUESTED\"},\n {no: 7, name: \"PAY_REQUEST_ERROR_CODE_IGNORED_PAY_ATTEMPT\", localName: \"IGNORED_PAY_ATTEMPT\"},\n {no: 8, name: \"PAY_REQUEST_ERROR_CODE_SCA_EXEMPTION_REJECTED\", localName: \"SCA_EXEMPTION_REJECTED\"},\n {no: 9, name: \"PAY_REQUEST_ERROR_CODE_INVALID_CVV\", localName: \"INVALID_CVV\"},\n {no: 10, name: \"PAY_REQUEST_ERROR_CODE_CANCELLED_PAY_ATTEMPT\", localName: \"CANCELLED_PAY_ATTEMPT\"},\n {no: 11, name: \"PAY_REQUEST_ERROR_CODE_DUPLICATE_AUTHORIZE_ATTEMPT\", localName: \"DUPLICATE_AUTHORIZE_ATTEMPT\"},\n {no: 12, name: \"PAY_REQUEST_ERROR_CODE_ONGOING_OPERATION_ON_REFERENCE\", localName: \"ONGOING_OPERATION_ON_REFERENCE\"},\n {no: 13, name: \"PAY_REQUEST_ERROR_CODE_PAYMENT_ATTEMPT_ON_INACTIVE_LINK\", localName: \"PAYMENT_ATTEMPT_ON_INACTIVE_LINK\"},\n ],\n);\n\n/**\n * Defines error codes in case of failure response from refund.\n * This enum can grow as we support more errors.\n *\n * @generated from enum common.v1.RefundErrorCode\n */\nexport const RefundErrorCode = proto3.makeEnum(\n \"common.v1.RefundErrorCode\",\n [\n {no: 0, name: \"REFUND_ERROR_CODE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"REFUND_ERROR_CODE_NOT_ALLOWED\", localName: \"NOT_ALLOWED\"},\n {no: 2, name: \"REFUND_ERROR_CODE_INVALID_AMOUNT\", localName: \"INVALID_AMOUNT\"},\n {no: 3, name: \"REFUND_ERROR_CODE_IGNORED_REFUND_ATTEMPT\", localName: \"IGNORED_REFUND_ATTEMPT\"},\n {no: 4, name: \"REFUND_ERROR_CODE_INTERNAL_ERROR\", localName: \"INTERNAL_ERROR\"},\n {no: 5, name: \"REFUND_ERROR_CODE_INVALID_PAYLOAD\", localName: \"INVALID_PAYLOAD\"},\n {no: 6, name: \"REFUND_ERROR_CODE_SERVICE_UNAVAILABLE\", localName: \"SERVICE_UNAVAILABLE\"},\n {no: 7, name: \"REFUND_ERROR_CODE_SERVICE_TIMEOUT\", localName: \"SERVICE_TIMEOUT\"},\n {no: 8, name: \"REFUND_ERROR_CODE_DUPLICATE\", localName: \"DUPLICATE\"},\n ],\n);\n\n/**\n * Defines error codes in case of failure response from cancel.\n * This enum can grow as we support more errors.\n *\n * @generated from enum common.v1.CancelErrorCode\n */\nexport const CancelErrorCode = proto3.makeEnum(\n \"common.v1.CancelErrorCode\",\n [\n {no: 0, name: \"CANCEL_ERROR_CODE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"CANCEL_ERROR_CODE_INTERNAL_ERROR\", localName: \"INTERNAL_ERROR\"},\n {no: 2, name: \"CANCEL_ERROR_CODE_INVALID_PAYLOAD\", localName: \"INVALID_PAYLOAD\"},\n {no: 3, name: \"CANCEL_ERROR_CODE_IGNORED_CANCEL_ATTEMPT\", localName: \"IGNORED_CANCEL_ATTEMPT\"},\n {no: 4, name: \"CANCEL_ERROR_CODE_NOT_ALLOWED\", localName: \"NOT_ALLOWED\"},\n {no: 5, name: \"CANCEL_ERROR_CODE_SERVICE_UNAVAILABLE\", localName: \"SERVICE_UNAVAILABLE\"},\n {no: 6, name: \"CANCEL_ERROR_CODE_SERVICE_TIMEOUT\", localName: \"SERVICE_TIMEOUT\"},\n {no: 7, name: \"CANCEL_ERROR_CODE_DUPLICATE\", localName: \"DUPLICATE\"},\n {no: 8, name: \"CANCEL_ERROR_CODE_ALREADY_CANCELLED\", localName: \"ALREADY_CANCELLED\"},\n {no: 9, name: \"CANCEL_ERROR_CODE_ALREADY_CAPTURED\", localName: \"ALREADY_CAPTURED\"},\n {no: 10, name: \"CANCEL_ERROR_CODE_TRANSACTION_NOT_FOUND\", localName: \"TRANSACTION_NOT_FOUND\"},\n ],\n);\n\n/**\n * Defines error codes in case of failure response from tips.\n * This enum can grow as we support more errors.\n *\n * @generated from enum common.v1.TipErrorCode\n */\nexport const TipErrorCode = proto3.makeEnum(\n \"common.v1.TipErrorCode\",\n [\n {no: 0, name: \"TIP_ERROR_CODE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"TIP_ERROR_CODE_INTERNAL_ERROR\", localName: \"INTERNAL_ERROR\"},\n {no: 2, name: \"TIP_ERROR_CODE_INVALID_PAYLOAD\", localName: \"INVALID_PAYLOAD\"},\n {no: 3, name: \"TIP_ERROR_CODE_IGNORED_TIP_ATTEMPT\", localName: \"IGNORED_TIP_ATTEMPT\"},\n {no: 4, name: \"TIP_ERROR_CODE_NOT_ALLOWED\", localName: \"NOT_ALLOWED\"},\n {no: 5, name: \"TIP_ERROR_CODE_SERVICE_UNAVAILABLE\", localName: \"SERVICE_UNAVAILABLE\"},\n {no: 6, name: \"TIP_ERROR_CODE_SERVICE_TIMEOUT\", localName: \"SERVICE_TIMEOUT\"},\n {no: 7, name: \"TIP_ERROR_CODE_DUPLICATE\", localName: \"DUPLICATE\"},\n {no: 8, name: \"TIP_ERROR_CODE_ALREADY_COMPLETED\", localName: \"ALREADY_COMPLETED\"},\n ],\n);\n\n/**\n * Defines error codes in case of failure response from nonce generation.\n * This enum can grow as we support more errors.\n *\n * @generated from enum common.v1.NonceGenerationErrorCode\n */\nexport const NonceGenerationErrorCode = proto3.makeEnum(\n \"common.v1.NonceGenerationErrorCode\",\n [\n {no: 0, name: \"NONCE_GENERATION_ERROR_CODE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"NONCE_GENERATION_ERROR_CODE_BAD_REQUEST\", localName: \"BAD_REQUEST\"},\n {no: 2, name: \"NONCE_GENERATION_ERROR_CODE_UNAUTHORIZED\", localName: \"UNAUTHORIZED\"},\n {no: 3, name: \"NONCE_GENERATION_ERROR_CODE_FORBIDDEN\", localName: \"FORBIDDEN\"},\n {no: 4, name: \"NONCE_GENERATION_ERROR_CODE_SERVICE_UNAVAILABLE\", localName: \"SERVICE_UNAVAILABLE\"},\n ],\n);\n\n/**\n * Defines error codes in case of failure response from capture.\n * This enum can grow as we support more errors.\n *\n * @generated from enum common.v1.CaptureErrorCode\n */\nexport const CaptureErrorCode = proto3.makeEnum(\n \"common.v1.CaptureErrorCode\",\n [\n {no: 0, name: \"CAPTURE_ERROR_CODE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"CAPTURE_ERROR_CODE_INTERNAL_ERROR\", localName: \"INTERNAL_ERROR\"},\n {no: 2, name: \"CAPTURE_ERROR_CODE_INVALID_PAYLOAD\", localName: \"INVALID_PAYLOAD\"},\n {no: 3, name: \"CAPTURE_ERROR_CODE_IGNORED_CAPTURE_ATTEMPT\", localName: \"IGNORED_CAPTURE_ATTEMPT\"},\n {no: 4, name: \"CAPTURE_ERROR_CODE_NOT_ALLOWED\", localName: \"NOT_ALLOWED\"},\n {no: 5, name: \"CAPTURE_ERROR_CODE_SERVICE_UNAVAILABLE\", localName: \"SERVICE_UNAVAILABLE\"},\n {no: 6, name: \"CAPTURE_ERROR_CODE_SERVICE_TIMEOUT\", localName: \"SERVICE_TIMEOUT\"},\n {no: 7, name: \"CAPTURE_ERROR_CODE_DUPLICATE\", localName: \"DUPLICATE\"},\n {no: 8, name: \"CAPTURE_ERROR_CODE_ALREADY_COMPLETED\", localName: \"ALREADY_COMPLETED\"},\n {no: 9, name: \"CAPTURE_ERROR_CODE_ALREADY_CANCELED\", localName: \"ALREADY_CANCELED\"},\n ],\n);\n\n/**\n * PayRequestErrorDetail defines meta data fields which are used to annotate PayRequestErrorCode\n * enum values.\n *\n * @generated from message common.v1.PayRequestErrorDetail\n */\nexport const PayRequestErrorDetail = proto3.makeMessageType(\n \"common.v1.PayRequestErrorDetail\",\n () => [\n { no: 1, name: \"frontend_error_visibility\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"generate_billable_event\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n);\n\n","// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file common/v1/payment.proto (package common.v1, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\nimport { CardTypeIndicators, LpmType } from \"./common_pb\";\n\n/**\n * @generated from enum common.v1.DynamicDepositAccountType\n */\nexport const DynamicDepositAccountType = proto3.makeEnum(\n \"common.v1.DynamicDepositAccountType\",\n [\n {no: 0, name: \"DYNAMIC_DEPOSIT_ACCOUNT_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"DYNAMIC_DEPOSIT_ACCOUNT_TYPE_SAVING\", localName: \"SAVING\"},\n {no: 2, name: \"DYNAMIC_DEPOSIT_ACCOUNT_TYPE_CHECKING\", localName: \"CHECKING\"},\n {no: 3, name: \"DYNAMIC_DEPOSIT_ACCOUNT_TYPE_CORPORATE_CHECKING\", localName: \"CORPORATE_CHECKING\"},\n ],\n);\n\n/**\n * @generated from enum common.v1.PaymentMethodTypeCode\n */\nexport const PaymentMethodTypeCode = proto3.makeEnum(\n \"common.v1.PaymentMethodTypeCode\",\n [\n {no: 0, name: \"PAYMENT_METHOD_TYPE_CODE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"PAYMENT_METHOD_TYPE_CODE_CARD\", localName: \"CARD\"},\n {no: 2, name: \"PAYMENT_METHOD_TYPE_CODE_ELECTRONIC_CHECK\", localName: \"ELECTRONIC_CHECK\"},\n {no: 3, name: \"PAYMENT_METHOD_TYPE_CODE_APPLE_PAY\", localName: \"APPLE_PAY\"},\n {no: 4, name: \"PAYMENT_METHOD_TYPE_CODE_SEPA\", localName: \"SEPA\"},\n {no: 5, name: \"PAYMENT_METHOD_TYPE_CODE_GOOGLE_PAY\", localName: \"GOOGLE_PAY\"},\n {no: 6, name: \"PAYMENT_METHOD_TYPE_CODE_PAZE\", localName: \"PAZE\"},\n {no: 7, name: \"PAYMENT_METHOD_TYPE_CODE_LPM\", localName: \"LPM\"},\n {no: 8, name: \"PAYMENT_METHOD_TYPE_CODE_PAY_BY_BANK\", localName: \"PAY_BY_BANK\"},\n {no: 9, name: \"PAYMENT_METHOD_TYPE_CODE_CREDIT_CARD\", localName: \"CREDIT_CARD\"},\n {no: 10, name: \"PAYMENT_METHOD_TYPE_CODE_DEBIT_CARD\", localName: \"DEBIT_CARD\"},\n ],\n);\n\n/**\n * @generated from message common.v1.ElectronicCheck\n */\nexport const ElectronicCheck = proto3.makeMessageType(\n \"common.v1.ElectronicCheck\",\n () => [\n { no: 1, name: \"financial_institution_routing_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"account_type\", kind: \"enum\", T: proto3.getEnumType(DynamicDepositAccountType) },\n { no: 3, name: \"masked_account_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"account_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message common.v1.Card\n */\nexport const Card = proto3.makeMessageType(\n \"common.v1.Card\",\n () => [\n { no: 1, name: \"card_type\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"card_type_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"card_expiration_month\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 4, name: \"card_expiration_year\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 5, name: \"card_type_indicators\", kind: \"message\", T: CardTypeIndicators },\n { no: 6, name: \"last_4_of_card_pan\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"masked_account_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"pin_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, opt: true },\n ],\n);\n\n/**\n * @generated from message common.v1.DigitalWallet\n */\nexport const DigitalWallet = proto3.makeMessageType(\n \"common.v1.DigitalWallet\",\n () => [\n { no: 1, name: \"card_expiration_month\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 2, name: \"card_expiration_year\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 3, name: \"last_4_of_card_pan\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"three_ds_eci_indicator\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"three_ds_online_payment_cryptogram\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message common.v1.Sepa\n */\nexport const Sepa = proto3.makeMessageType(\n \"common.v1.Sepa\",\n () => [\n { no: 1, name: \"bic\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"shopper_email_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"masked_account_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Defines LPM details to be used in Notifications\n *\n * @generated from message common.v1.LpmDetails\n */\nexport const LpmDetails = proto3.makeMessageType(\n \"common.v1.LpmDetails\",\n () => [\n { no: 1, name: \"lpm_type\", kind: \"enum\", T: proto3.getEnumType(LpmType) },\n { no: 2, name: \"merchant_return_url\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"lpm_orchestration_url\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"secret_key\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"timestamp_returned\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"funding_status\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"payment_arrangement_expiration_timestamp\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"international_business_identifier_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 9, name: \"full_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message common.v1.PayByBankResponse\n */\nexport const PayByBankResponse = proto3.makeMessageType(\n \"common.v1.PayByBankResponse\",\n () => [\n { no: 1, name: \"last4digits_of_account_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"account_type\", kind: \"enum\", T: proto3.getEnumType(DynamicDepositAccountType) },\n { no: 3, name: \"pay_by_bank_request_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"account_token_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"account_holder_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"bank_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"financial_institution_routing_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"masked_account_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 9, name: \"institutional_logo\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 10, name: \"alt_institutional_logo\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message common.v1.PaymentMethod\n */\nexport const PaymentMethod = proto3.makeMessageType(\n \"common.v1.PaymentMethod\",\n () => [\n { no: 1, name: \"payment_method_type\", kind: \"enum\", T: proto3.getEnumType(PaymentMethodTypeCode) },\n { no: 2, name: \"card\", kind: \"message\", T: Card },\n { no: 3, name: \"electronic_check\", kind: \"message\", T: ElectronicCheck },\n { no: 4, name: \"sepa\", kind: \"message\", T: Sepa },\n { no: 5, name: \"lpm\", kind: \"message\", T: LpmDetails },\n { no: 6, name: \"pay_by_bank\", kind: \"message\", T: PayByBankResponse },\n { no: 7, name: \"digital_wallet\", kind: \"message\", T: DigitalWallet },\n ],\n);\n\n","// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file order/v1/pricing.proto (package order.v1, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\nimport { LocalizedString } from \"../../common/v1/common_pb\";\nimport { Timestamp } from \"../../google/protobuf/timestamp_pb\";\nimport { PaymentMethodTypeCode } from \"../../common/v1/payment_pb\";\n\n/**\n * @generated from enum order.v1.RateMode\n */\nexport const RateMode = proto3.makeEnum(\n \"order.v1.RateMode\",\n [\n {no: 0, name: \"RATE_MODE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"RATE_MODE_FLAT\", localName: \"FLAT\"},\n {no: 2, name: \"RATE_MODE_PERCENTAGE\", localName: \"PERCENTAGE\"},\n ],\n);\n\n/**\n * @generated from enum order.v1.ChargeType\n */\nexport const ChargeType = proto3.makeEnum(\n \"order.v1.ChargeType\",\n [\n {no: 0, name: \"CHARGE_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"CHARGE_TYPE_CONVENIENCE_FEE\", localName: \"CONVENIENCE_FEE\"},\n {no: 2, name: \"CHARGE_TYPE_SERVICE_FEE\", localName: \"SERVICE_FEE\"},\n {no: 3, name: \"CHARGE_TYPE_SURCHARGE\", localName: \"SURCHARGE\"},\n {no: 4, name: \"CHARGE_TYPE_TIP\", localName: \"TIP\"},\n {no: 5, name: \"CHARGE_TYPE_SHIPPING_FEE\", localName: \"SHIPPING_FEE\"},\n {no: 6, name: \"CHARGE_TYPE_GRATUITY\", localName: \"GRATUITY\"},\n ],\n);\n\n/**\n * @generated from enum order.v1.DiscountType\n */\nexport const DiscountType = proto3.makeEnum(\n \"order.v1.DiscountType\",\n [\n {no: 0, name: \"DISCOUNT_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"DISCOUNT_TYPE_COUPON\", localName: \"COUPON\"},\n {no: 2, name: \"DISCOUNT_TYPE_GIFT_CARD\", localName: \"GIFT_CARD\"},\n {no: 3, name: \"DISCOUNT_TYPE_PROMOTION\", localName: \"PROMOTION\"},\n ],\n);\n\n/**\n * Types of taxes applied to a transaction.\n *\n * @generated from enum order.v1.TaxType\n */\nexport const TaxType = proto3.makeEnum(\n \"order.v1.TaxType\",\n [\n {no: 0, name: \"TAX_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"TAX_TYPE_NATIONAL_TAX\", localName: \"NATIONAL_TAX\"},\n {no: 2, name: \"TAX_TYPE_STATE_SALES_TAX\", localName: \"STATE_SALES_TAX\"},\n {no: 3, name: \"TAX_TYPE_CITY_SALES_TAX\", localName: \"CITY_SALES_TAX\"},\n {no: 4, name: \"TAX_TYPE_LOCAL_SALES_TAX\", localName: \"LOCAL_SALES_TAX\"},\n {no: 5, name: \"TAX_TYPE_AMUSEMENT_TAX\", localName: \"AMUSEMENT_TAX\"},\n {no: 6, name: \"TAX_TYPE_LEAST_TAX\", localName: \"LEAST_TAX\"},\n {no: 7, name: \"TAX_TYPE_SERVICE_TAX\", localName: \"SERVICE_TAX\"},\n {no: 8, name: \"TAX_TYPE_COMMUNICATION_TAX\", localName: \"COMMUNICATION_TAX\"},\n {no: 9, name: \"TAX_TYPE_PROVISIONAL_SALES_TAX\", localName: \"PROVISIONAL_SALES_TAX\"},\n {no: 10, name: \"TAX_TYPE_VAT\", localName: \"VAT\"},\n {no: 11, name: \"TAX_TYPE_GST\", localName: \"GST\"},\n {no: 12, name: \"TAX_TYPE_HST\", localName: \"HST\"},\n {no: 13, name: \"TAX_TYPE_QST\", localName: \"QST\"},\n {no: 19, name: \"TAX_TYPE_PST\", localName: \"PST\"},\n {no: 14, name: \"TAX_TYPE_ENERGY_TAX\", localName: \"ENERGY_TAX\"},\n {no: 15, name: \"TAX_TYPE_OTHER_TAX\", localName: \"OTHER_TAX\"},\n {no: 16, name: \"TAX_TYPE_IMPORT_TAX\", localName: \"IMPORT_TAX\"},\n {no: 17, name: \"TAX_TYPE_ALTERNATE_TAX\", localName: \"ALTERNATE_TAX\"},\n {no: 18, name: \"TAX_TYPE_SHIPPING_VAT_TAX\", localName: \"SHIPPING_VAT_TAX\"},\n ],\n);\n\n/**\n * @generated from enum order.v1.SourceType\n */\nexport const SourceType = proto3.makeEnum(\n \"order.v1.SourceType\",\n [\n {no: 0, name: \"SOURCE_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"SOURCE_TYPE_ORDERS\", localName: \"ORDERS\"},\n {no: 2, name: \"SOURCE_TYPE_ORDER_ITEMS\", localName: \"ORDER_ITEMS\"},\n {no: 3, name: \"SOURCE_TYPE_TRANSACTION_CHARGE\", localName: \"TRANSACTION_CHARGE\"},\n {no: 4, name: \"SOURCE_TYPE_DISCOUNT\", localName: \"DISCOUNT\"},\n ],\n);\n\n/**\n * @generated from message order.v1.TaxRate\n */\nexport const TaxRate = proto3.makeMessageType(\n \"order.v1.TaxRate\",\n () => [\n { no: 1, name: \"id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"tax_type_description\", kind: \"message\", T: LocalizedString },\n { no: 3, name: \"tax_type_code\", kind: \"enum\", T: proto3.getEnumType(TaxType) },\n { no: 4, name: \"tax_mode\", kind: \"enum\", T: proto3.getEnumType(RateMode) },\n { no: 5, name: \"tax_percent\", kind: \"scalar\", T: 2 /* ScalarType.FLOAT */ },\n { no: 6, name: \"tax_amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 7, name: \"tax_metadata\", kind: \"map\", K: 9 /* ScalarType.STRING */, V: {kind: \"scalar\", T: 9 /* ScalarType.STRING */} },\n { no: 8, name: \"created_at\", kind: \"message\", T: Timestamp },\n { no: 9, name: \"updated_at\", kind: \"message\", T: Timestamp },\n { no: 10, name: \"source\", kind: \"enum\", T: proto3.getEnumType(SourceType) },\n { no: 11, name: \"source_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 12, name: \"value_added_tax_invoice_reference_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 13, name: \"party_tax_government_issued_identifier\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Additional charges applied on a Transaction either from the merchant or the consumer end.\n *\n * @generated from message order.v1.TransactionCharge\n */\nexport const TransactionCharge = proto3.makeMessageType(\n \"order.v1.TransactionCharge\",\n () => [\n { no: 1, name: \"id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"fee_description\", kind: \"message\", T: LocalizedString },\n { no: 3, name: \"charge_type\", kind: \"enum\", T: proto3.getEnumType(ChargeType) },\n { no: 4, name: \"charge_mode\", kind: \"enum\", T: proto3.getEnumType(RateMode) },\n { no: 5, name: \"purchase_transaction_fee_percentage\", kind: \"scalar\", T: 2 /* ScalarType.FLOAT */ },\n { no: 6, name: \"amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 18, name: \"transaction_fee_amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 7, name: \"taxable\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 8, name: \"tax\", kind: \"message\", T: TaxRate },\n { no: 9, name: \"charge_metadata\", kind: \"map\", K: 9 /* ScalarType.STRING */, V: {kind: \"scalar\", T: 9 /* ScalarType.STRING */} },\n { no: 10, name: \"created_at\", kind: \"message\", T: Timestamp },\n { no: 11, name: \"updated_at\", kind: \"message\", T: Timestamp },\n { no: 12, name: \"source\", kind: \"enum\", T: proto3.getEnumType(SourceType) },\n { no: 13, name: \"source_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 14, name: \"sub_merchant_info\", kind: \"message\", T: SubMerchantInfo },\n { no: 15, name: \"method_of_payment\", kind: \"enum\", T: proto3.getEnumType(PaymentMethodTypeCode) },\n { no: 16, name: \"surcharge_applicability\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n);\n\n/**\n * @generated from message order.v1.SubMerchantInfo\n */\nexport const SubMerchantInfo = proto3.makeMessageType(\n \"order.v1.SubMerchantInfo\",\n () => [\n { no: 1, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"merchant_order_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Discounts - actual application of a coupon or promotion code to the subtotal.\n * TODO: Replace DiscountV2 wherever you are using Discount.\n *\n * @generated from message order.v1.Discount\n */\nexport const Discount = proto3.makeMessageType(\n \"order.v1.Discount\",\n () => [\n { no: 1, name: \"id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"discount_type_description\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"discount_type\", kind: \"enum\", T: proto3.getEnumType(DiscountType) },\n { no: 4, name: \"discount_mode\", kind: \"enum\", T: proto3.getEnumType(RateMode) },\n { no: 5, name: \"transaction_discount_amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 6, name: \"purchase_transaction_discount_percent\", kind: \"scalar\", T: 2 /* ScalarType.FLOAT */ },\n { no: 7, name: \"promotion_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"discount_tax\", kind: \"message\", T: TaxRate },\n { no: 9, name: \"discount_metadata\", kind: \"map\", K: 9 /* ScalarType.STRING */, V: {kind: \"scalar\", T: 9 /* ScalarType.STRING */} },\n { no: 10, name: \"created_at\", kind: \"message\", T: Timestamp },\n { no: 11, name: \"updated_at\", kind: \"message\", T: Timestamp },\n { no: 12, name: \"source\", kind: \"enum\", T: proto3.getEnumType(SourceType) },\n { no: 13, name: \"source_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Product resource\n *\n * @generated from message order.v1.Product\n */\nexport const Product = proto3.makeMessageType(\n \"order.v1.Product\",\n () => [\n { no: 1, name: \"id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"external_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"description\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"upc\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"sku\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"shippable\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 8, name: \"taxable\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 9, name: \"image_url\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n","// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file order/v1/order.proto (package order.v1, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\nimport { Discount, Product, TaxRate, TransactionCharge } from \"./pricing_pb\";\nimport { Channel, CheckoutOptions, Money, OrderOrigination, RefundPaymentMethod, ShippingMethod as ShippingMethod$1 } from \"../../common/v1/common_pb\";\nimport { Timestamp } from \"../../google/protobuf/timestamp_pb\";\n\n/**\n * Indicates order status.\n *\n * @generated from enum order.v1.OrderStatus\n */\nexport const OrderStatus = proto3.makeEnum(\n \"order.v1.OrderStatus\",\n [\n {no: 0, name: \"ORDER_STATUS_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"ORDER_STATUS_CREATED\", localName: \"CREATED\"},\n {no: 2, name: \"ORDER_STATUS_SUBMITTED\", localName: \"SUBMITTED\"},\n {no: 3, name: \"ORDER_STATUS_COMPLETED\", localName: \"COMPLETED\"},\n {no: 4, name: \"ORDER_STATUS_CANCELLED\", localName: \"CANCELLED\"},\n {no: 5, name: \"ORDER_STATUS_REFUNDED\", localName: \"REFUNDED\"},\n {no: 6, name: \"ORDER_STATUS_PENDING\", localName: \"PENDING\"},\n ],\n);\n\n/**\n * Order split type\n *\n * @generated from enum order.v1.OrderSplitType\n */\nexport const OrderSplitType = proto3.makeEnum(\n \"order.v1.OrderSplitType\",\n [\n {no: 0, name: \"ORDER_SPLIT_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"ORDER_SPLIT_TYPE_UNDIVIDED\", localName: \"UNDIVIDED\"},\n {no: 2, name: \"ORDER_SPLIT_TYPE_SPLIT\", localName: \"SPLIT\"},\n {no: 3, name: \"ORDER_SPLIT_TYPE_SPLIT_PAY_IN\", localName: \"SPLIT_PAY_IN\"},\n ],\n);\n\n/**\n * @generated from enum order.v1.RetryType\n */\nexport const RetryType = proto3.makeEnum(\n \"order.v1.RetryType\",\n [\n {no: 0, name: \"RETRY_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"RETRY_TYPE_PAYMENT\", localName: \"PAYMENT\"},\n {no: 2, name: \"RETRY_TYPE_PROFILE\", localName: \"PROFILE\"},\n ],\n);\n\n/**\n * @generated from enum order.v1.RefundStatus\n */\nexport const RefundStatus = proto3.makeEnum(\n \"order.v1.RefundStatus\",\n [\n {no: 0, name: \"REFUND_STATUS_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"REFUND_STATUS_INITIATED\", localName: \"INITIATED\"},\n {no: 2, name: \"REFUND_STATUS_ACCEPTED\", localName: \"ACCEPTED\"},\n {no: 3, name: \"REFUND_STATUS_DECLINED\", localName: \"DECLINED\"},\n {no: 4, name: \"REFUND_STATUS_COMPLETED\", localName: \"COMPLETED\"},\n {no: 5, name: \"REFUND_STATUS_ERROR\", localName: \"ERROR\"},\n ],\n);\n\n/**\n * @generated from enum order.v1.CancelStatus\n */\nexport const CancelStatus = proto3.makeEnum(\n \"order.v1.CancelStatus\",\n [\n {no: 0, name: \"CANCEL_STATUS_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"CANCEL_STATUS_INITIATED\", localName: \"INITIATED\"},\n {no: 2, name: \"CANCEL_STATUS_ACCEPTED\", localName: \"ACCEPTED\"},\n {no: 3, name: \"CANCEL_STATUS_DECLINED\", localName: \"DECLINED\"},\n {no: 4, name: \"CANCEL_STATUS_COMPLETED\", localName: \"COMPLETED\"},\n {no: 5, name: \"CANCEL_STATUS_ERROR\", localName: \"ERROR\"},\n ],\n);\n\n/**\n * @generated from enum order.v1.TipStatus\n */\nexport const TipStatus = proto3.makeEnum(\n \"order.v1.TipStatus\",\n [\n {no: 0, name: \"TIP_STATUS_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"TIP_STATUS_INITIATED\", localName: \"INITIATED\"},\n {no: 2, name: \"TIP_STATUS_ACCEPTED\", localName: \"ACCEPTED\"},\n {no: 3, name: \"TIP_STATUS_DECLINED\", localName: \"DECLINED\"},\n {no: 4, name: \"TIP_STATUS_COMPLETED\", localName: \"COMPLETED\"},\n {no: 5, name: \"TIP_STATUS_ERROR\", localName: \"ERROR\"},\n ],\n);\n\n/**\n * Order line item\n *\n * @generated from message order.v1.LineItem\n */\nexport const LineItem = proto3.makeMessageType(\n \"order.v1.LineItem\",\n () => [\n { no: 1, name: \"id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"quantity\", kind: \"scalar\", T: 1 /* ScalarType.DOUBLE */ },\n { no: 3, name: \"price\", kind: \"message\", T: LineItem_Price },\n { no: 4, name: \"product_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"catalog_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"product\", kind: \"message\", T: Product },\n { no: 7, name: \"transaction_charges\", kind: \"message\", T: TransactionCharge, repeated: true },\n { no: 8, name: \"discounts\", kind: \"message\", T: Discount, repeated: true },\n { no: 9, name: \"tax_rates\", kind: \"message\", T: TaxRate, repeated: true },\n { no: 10, name: \"total_fee_amount\", kind: \"message\", T: Money },\n { no: 21, name: \"transaction_discount_amount\", kind: \"message\", T: Money },\n { no: 19, name: \"total_discount_percent\", kind: \"message\", T: Money },\n { no: 12, name: \"total_tax_amount\", kind: \"message\", T: Money },\n { no: 22, name: \"tax_inclusive_line_item_total_amount\", kind: \"message\", T: Money },\n { no: 14, name: \"shipping_address_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 15, name: \"shipping_method\", kind: \"message\", T: ShippingMethod$1 },\n { no: 16, name: \"metadata\", kind: \"map\", K: 9 /* ScalarType.STRING */, V: {kind: \"scalar\", T: 9 /* ScalarType.STRING */} },\n { no: 17, name: \"total_shipping_amount\", kind: \"message\", T: Money },\n { no: 18, name: \"sub_total_amount\", kind: \"message\", T: Money },\n { no: 20, name: \"merchant_line_item_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 23, name: \"line_item_unit_of_measure_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message order.v1.LineItem.Price\n */\nexport const LineItem_Price = proto3.makeMessageType(\n \"order.v1.LineItem.Price\",\n () => [\n { no: 1, name: \"unit_price\", kind: \"message\", T: Money },\n ],\n {localName: \"LineItem_Price\"},\n);\n\n/**\n * Internal order\n * Next id : 37\n *\n * @generated from message order.v1.Order\n */\nexport const Order = proto3.makeMessageType(\n \"order.v1.Order\",\n () => [\n { no: 1, name: \"external_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"status\", kind: \"enum\", T: proto3.getEnumType(OrderStatus) },\n { no: 3, name: \"total\", kind: \"message\", T: Money },\n { no: 4, name: \"total_shipping\", kind: \"message\", T: Money },\n { no: 5, name: \"total_discount\", kind: \"message\", T: Money },\n { no: 6, name: \"total_tax\", kind: \"message\", T: Money },\n { no: 7, name: \"created_at\", kind: \"message\", T: Timestamp },\n { no: 8, name: \"updated_at\", kind: \"message\", T: Timestamp },\n { no: 9, name: \"line_items\", kind: \"message\", T: LineItem, repeated: true },\n { no: 10, name: \"subtotal\", kind: \"message\", T: Money },\n { no: 11, name: \"shipping_address_ids\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 13, name: \"shipping_methods\", kind: \"message\", T: ShippingMethod, repeated: true },\n { no: 14, name: \"merchant_settings_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 15, name: \"order_origination\", kind: \"enum\", T: proto3.getEnumType(OrderOrigination) },\n { no: 16, name: \"currency_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 17, name: \"shopper_profile_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 18, name: \"merchant_order_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 19, name: \"request_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 20, name: \"refunds\", kind: \"message\", T: Refund, repeated: true },\n { no: 21, name: \"total_refund\", kind: \"message\", T: Money },\n { no: 22, name: \"transaction_charges\", kind: \"message\", T: TransactionCharge, repeated: true },\n { no: 23, name: \"total_fee_amount\", kind: \"message\", T: Money },\n { no: 24, name: \"discounts\", kind: \"message\", T: Discount, repeated: true },\n { no: 25, name: \"tax_rates\", kind: \"message\", T: TaxRate, repeated: true },\n { no: 26, name: \"total_duty_amount\", kind: \"message\", T: Money },\n { no: 27, name: \"total_value_added_tax_amount\", kind: \"message\", T: Money },\n { no: 28, name: \"total_value_added_tax_percent\", kind: \"message\", T: Money },\n { no: 29, name: \"total_shipping_value_added_tax_amount\", kind: \"message\", T: Money },\n { no: 30, name: \"total_shipping_value_added_tax_percent\", kind: \"message\", T: Money },\n { no: 31, name: \"total_alternate_tax_amount\", kind: \"message\", T: Money },\n { no: 32, name: \"total_gratuity_amount\", kind: \"message\", T: Money },\n { no: 33, name: \"purchase_order_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 34, name: \"split_type\", kind: \"enum\", T: proto3.getEnumType(OrderSplitType) },\n { no: 35, name: \"total_transaction_amount\", kind: \"message\", T: Money },\n { no: 36, name: \"notes\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 37, name: \"cancels\", kind: \"message\", T: Cancel, repeated: true },\n { no: 38, name: \"channel\", kind: \"message\", T: Channel },\n { no: 39, name: \"surcharge_amount\", kind: \"message\", T: Money },\n { no: 40, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 41, name: \"children\", kind: \"message\", T: Order, repeated: true },\n { no: 42, name: \"ship_from_address_postal_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 43, name: \"transaction_advices\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 44, name: \"value_added_tax_invoice_reference_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 45, name: \"party_tax_government_issued_identifier\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 46, name: \"tax_treatment_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message order.v1.OrderRetry\n */\nexport const OrderRetry = proto3.makeMessageType(\n \"order.v1.OrderRetry\",\n () => [\n { no: 1, name: \"order_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"retry_type\", kind: \"enum\", T: proto3.getEnumType(RetryType) },\n { no: 3, name: \"retry_countdown\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 4, name: \"max_retry_count\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n ],\n);\n\n/**\n * @generated from message order.v1.ShippingMethod\n */\nexport const ShippingMethod = proto3.makeMessageType(\n \"order.v1.ShippingMethod\",\n () => [\n { no: 1, name: \"id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"description\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"shipping_cost\", kind: \"message\", T: Money },\n { no: 5, name: \"estimated_delivery_date\", kind: \"message\", T: Timestamp },\n ],\n);\n\n/**\n * @generated from message order.v1.TemplateOrder\n */\nexport const TemplateOrder = proto3.makeMessageType(\n \"order.v1.TemplateOrder\",\n () => [\n { no: 1, name: \"total\", kind: \"message\", T: Money },\n { no: 2, name: \"total_shipping\", kind: \"message\", T: Money },\n { no: 3, name: \"total_discount\", kind: \"message\", T: Money },\n { no: 4, name: \"total_tax\", kind: \"message\", T: Money },\n { no: 8, name: \"total_transactional_charge_amount\", kind: \"message\", T: Money },\n { no: 5, name: \"line_items\", kind: \"message\", T: LineItem, repeated: true },\n { no: 6, name: \"id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"checkout_options\", kind: \"message\", T: CheckoutOptions },\n { no: 9, name: \"purchase_order_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 10, name: \"transaction_charges\", kind: \"message\", T: TransactionCharge, repeated: true },\n { no: 11, name: \"discounts\", kind: \"message\", T: Discount, repeated: true },\n { no: 12, name: \"tax_rates\", kind: \"message\", T: TaxRate, repeated: true },\n { no: 13, name: \"subtotal\", kind: \"message\", T: Money },\n { no: 14, name: \"total_duty_amount\", kind: \"message\", T: Money },\n { no: 15, name: \"total_value_added_tax_amount\", kind: \"message\", T: Money },\n { no: 16, name: \"total_value_added_tax_percent\", kind: \"message\", T: Money },\n { no: 17, name: \"total_shipping_value_added_tax_amount\", kind: \"message\", T: Money },\n { no: 18, name: \"total_shipping_value_added_tax_percent\", kind: \"message\", T: Money },\n { no: 19, name: \"total_alternate_tax_amount\", kind: \"message\", T: Money },\n { no: 20, name: \"total_gratuity_amount\", kind: \"message\", T: Money },\n { no: 21, name: \"tax_treatment_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 22, name: \"transaction_advices\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 23, name: \"value_added_tax_invoice_reference_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 24, name: \"party_tax_government_issued_identifier\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 25, name: \"total_fee_amount\", kind: \"message\", T: Money },\n ],\n);\n\n/**\n * @generated from message order.v1.Refund\n */\nexport const Refund = proto3.makeMessageType(\n \"order.v1.Refund\",\n () => [\n { no: 1, name: \"id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"total\", kind: \"message\", T: Money },\n { no: 3, name: \"reason\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"transaction_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"request_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"status\", kind: \"enum\", T: proto3.getEnumType(RefundStatus) },\n { no: 7, name: \"refund_payment_method\", kind: \"enum\", T: proto3.getEnumType(RefundPaymentMethod) },\n { no: 8, name: \"initiated_by_checkout\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 9, name: \"created_at\", kind: \"message\", T: Timestamp },\n { no: 10, name: \"updated_at\", kind: \"message\", T: Timestamp },\n { no: 11, name: \"remaining_refundable_amount\", kind: \"message\", T: Money },\n { no: 12, name: \"payment_transaction_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message order.v1.Cancel\n */\nexport const Cancel = proto3.makeMessageType(\n \"order.v1.Cancel\",\n () => [\n { no: 1, name: \"id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"reason\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"transaction_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"request_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"status\", kind: \"enum\", T: proto3.getEnumType(CancelStatus) },\n { no: 8, name: \"initiated_by_checkout\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 9, name: \"created_at\", kind: \"message\", T: Timestamp },\n { no: 10, name: \"updated_at\", kind: \"message\", T: Timestamp },\n { no: 12, name: \"payment_transaction_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n","// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file payment/v1/payment.proto (package payment.v1, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\nimport { AchPaymentMethod, AchVerificationType, CancelRequestStatus, CaptureRequestStatus, CardNetwork, CardPresentPaymentMethod, CardType, CardTypeIndicators, CashPaymentMethod, CheckoutOptions, Device, EcpBankAccountType, EncryptedCard, EncryptedElectronicCheck, EncryptedPayByBank, EncryptedSepa, EncryptedStoredPaymentMethod, EncryptedWallet, Lpm as Lpm$1, LpmType, Money, NonceGenerationRequestStatus, OtherPaymentMethod, PaymentCardOrTokenPaymentMethod, PaymentGatewayType, PayRequestStatus, PreferredRoutingInitiator, RefundRequestStatus, RefundSplitOptions, StoredPaymentMethodUpdateDetails, TipRequestStatus, TokenizedPaymentMethod } from \"../../common/v1/common_pb\";\nimport { Timestamp } from \"../../google/protobuf/timestamp_pb\";\nimport { LineItem, Order } from \"../../order/v1/order_pb\";\nimport { BrowserInfo, ScaChallengeWindowSize, ThreeDsTransactionDetails } from \"../../common/v1/three_domain_secure_pb\";\nimport { CancelErrorCode, CaptureErrorCode, NonceGenerationErrorCode, PayRequestErrorCode, RefundErrorCode, TipErrorCode } from \"../../common/v1/payment_errors_pb\";\nimport { PaymentMethod as PaymentMethod$1 } from \"../../common/v1/payment_pb\";\nimport { PostalAddress } from \"../../google/type/postal_address_pb\";\n\n/**\n * Defines possible outcomes of fraud check.\n *\n * @generated from enum payment.v1.FraudCheckStatus\n */\nexport const FraudCheckStatus = proto3.makeEnum(\n \"payment.v1.FraudCheckStatus\",\n [\n {no: 0, name: \"FRAUD_CHECK_STATUS_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"FRAUD_CHECK_STATUS_SUCCESS\", localName: \"SUCCESS\"},\n {no: 2, name: \"FRAUD_CHECK_STATUS_FAILURE\", localName: \"FAILURE\"},\n {no: 3, name: \"FRAUD_CHECK_STATUS_TIMEOUT\", localName: \"TIMEOUT\"},\n {no: 4, name: \"FRAUD_CHECK_STATUS_NOT_REQUIRED\", localName: \"NOT_REQUIRED\"},\n {no: 5, name: \"FRAUD_CHECK_STATUS_IN_REVIEW\", localName: \"IN_REVIEW\"},\n ],\n);\n\n/**\n * Defines the digital wallet type.\n *\n * @generated from enum payment.v1.WalletType\n */\nexport const WalletType = proto3.makeEnum(\n \"payment.v1.WalletType\",\n [\n {no: 0, name: \"WALLET_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"WALLET_TYPE_APPLE_PAY\", localName: \"APPLE_PAY\"},\n {no: 2, name: \"WALLET_TYPE_GOOGLE_PAY\", localName: \"GOOGLE_PAY\"},\n {no: 3, name: \"WALLET_TYPE_PAZE\", localName: \"PAZE\"},\n ],\n);\n\n/**\n * Defines a base transaction that contains attributes common to various transaction types such\n * DebitTransaction.\n *\n * Next Id: 16\n *\n * @generated from message payment.v1.Transaction\n */\nexport const Transaction = proto3.makeMessageType(\n \"payment.v1.Transaction\",\n () => [\n { no: 1, name: \"id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"reference\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"shopper_reference\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"payment_gateway_type\", kind: \"enum\", T: proto3.getEnumType(PaymentGatewayType) },\n { no: 6, name: \"payment_gateway_mid\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"safetech_merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"order_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 9, name: \"shopper_profile_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 10, name: \"amount\", kind: \"message\", T: Money },\n { no: 11, name: \"idempotency_key\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 12, name: \"safetech_kaptcha_session_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 13, name: \"created_at\", kind: \"message\", T: Timestamp },\n { no: 14, name: \"updated_at\", kind: \"message\", T: Timestamp },\n { no: 15, name: \"payment_gateway_transaction_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Defines a debit transaction entity.\n *\n * There might be multiple debit transactions with the same {@code oderID}, but all of them\n * should meet the following constraints:\n *\n * - Only one transaction could be in the PENDING state.\n * - Only one transaction could be in the SUCCESS state.\n * - None or many transactions could be in the FAILED state.\n * - If there is a transaction in the PENDING state, then no transactions could be in the\n * SUCCESS state and vice versa.\n *\n * These entities are persisted in the Payment Transaction Repository.\n *\n * Next Id: 5\n *\n * @generated from message payment.v1.DebitTransaction\n */\nexport const DebitTransaction = proto3.makeMessageType(\n \"payment.v1.DebitTransaction\",\n () => [\n { no: 1, name: \"base\", kind: \"message\", T: Transaction },\n { no: 2, name: \"state\", kind: \"enum\", T: proto3.getEnumType(DebitTransaction_State) },\n { no: 3, name: \"pay_request_details\", kind: \"message\", T: PayRequestDetails },\n { no: 4, name: \"pay_result\", kind: \"message\", T: PayRequestResult },\n { no: 5, name: \"payment_event\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"event_type\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"partial_authorization_support\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 8, name: \"remaining_balance\", kind: \"message\", T: Money },\n ],\n);\n\n/**\n * State of the debit transaction.\n *\n * @generated from enum payment.v1.DebitTransaction.State\n */\nexport const DebitTransaction_State = proto3.makeEnum(\n \"payment.v1.DebitTransaction.State\",\n [\n {no: 0, name: \"STATE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"STATE_PENDING\", localName: \"PENDING\"},\n {no: 2, name: \"STATE_SUCCESS\", localName: \"SUCCESS\"},\n {no: 3, name: \"STATE_FAILED\", localName: \"FAILED\"},\n {no: 4, name: \"STATE_CANCELED\", localName: \"CANCELED\"},\n {no: 5, name: \"STATE_PENDING_REVIEW\", localName: \"PENDING_REVIEW\"},\n ],\n);\n\n/**\n * PayRequestDetails defines a set of request parameters.\n * Next Id: 25\n *\n * @generated from message payment.v1.PayRequestDetails\n */\nexport const PayRequestDetails = proto3.makeMessageType(\n \"payment.v1.PayRequestDetails\",\n () => [\n { no: 1, name: \"checkout_options\", kind: \"message\", T: CheckoutOptions },\n { no: 2, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"reference\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"shopper_reference\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"encrypted_payment_method\", kind: \"message\", T: EncryptedPaymentMethod },\n { no: 17, name: \"payment_method\", kind: \"message\", T: PaymentMethod },\n { no: 6, name: \"order_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"shopper_profile_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"amount\", kind: \"message\", T: Money },\n { no: 9, name: \"line_items\", kind: \"message\", T: LineItem, repeated: true },\n { no: 10, name: \"safetech_kaptcha_session_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 11, name: \"shopper_profile_details\", kind: \"message\", T: ShopperProfileDetails },\n { no: 12, name: \"settings_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 13, name: \"device_info\", kind: \"message\", T: Device },\n { no: 14, name: \"browser_info\", kind: \"message\", T: BrowserInfo },\n { no: 15, name: \"sca_challenge_window_size\", kind: \"enum\", T: proto3.getEnumType(ScaChallengeWindowSize) },\n { no: 16, name: \"billing_address_from_intent_billing\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 18, name: \"save_payment_method_to_profile\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 19, name: \"make_default_payment_method\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 20, name: \"order\", kind: \"message\", T: Order },\n { no: 21, name: \"lpm_payment_cancelled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 23, name: \"partial_authorization_support\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 24, name: \"device_fingerprint_session_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * PayRequestResult defines results of a payment operation.\n * Next Id: 32\n *\n * @generated from message payment.v1.PayRequestResult\n */\nexport const PayRequestResult = proto3.makeMessageType(\n \"payment.v1.PayRequestResult\",\n () => [\n { no: 1, name: \"fraud_check_result\", kind: \"message\", T: FraudCheckResult },\n { no: 2, name: \"status\", kind: \"enum\", T: proto3.getEnumType(PayRequestStatus) },\n { no: 12, name: \"error_code\", kind: \"enum\", T: proto3.getEnumType(PayRequestErrorCode) },\n { no: 9, name: \"detail_message\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"payment_gateway_shopper_profile_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"payment_gateway_transaction_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"mit_received_transaction_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 17, name: \"card_type\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 18, name: \"card_expiration_month\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 19, name: \"card_expiration_year\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 13, name: \"card_type_indicators\", kind: \"message\", T: CardTypeIndicators },\n { no: 16, name: \"last_4_of_card_pan\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 20, name: \"billing_postal_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"payment_gateway_response\", kind: \"message\", T: PaymentGatewayResponse },\n { no: 10, name: \"payment_gateway_payment_method_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 11, name: \"payment_gateway_mid\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 14, name: \"sca_orchestration_url\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 25, name: \"three_ds_transaction_details\", kind: \"message\", T: ThreeDsTransactionDetails },\n { no: 23, name: \"card_type_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 15, name: \"payment_method_tokenizations\", kind: \"message\", T: TokenizedPaymentMethod, repeated: true },\n { no: 24, name: \"shopper_email_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 26, name: \"masked_pan\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 27, name: \"account_holder_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 28, name: \"approval_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 29, name: \"payment_gateway_type\", kind: \"enum\", T: proto3.getEnumType(PaymentGatewayType) },\n { no: 30, name: \"payment_method\", kind: \"message\", T: PaymentMethod$1 },\n { no: 31, name: \"consent_url\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 32, name: \"created_timestamp\", kind: \"message\", T: Timestamp },\n { no: 33, name: \"updated_timestamp\", kind: \"message\", T: Timestamp },\n { no: 34, name: \"payment_gateway_request_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 35, name: \"partial_authorization\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 36, name: \"order\", kind: \"message\", T: Order, opt: true },\n { no: 37, name: \"amount\", kind: \"message\", T: Money, opt: true },\n ],\n);\n\n/**\n * Defines fraud check result.\n * Next Id: 3\n *\n * @generated from message payment.v1.FraudCheckResult\n */\nexport const FraudCheckResult = proto3.makeMessageType(\n \"payment.v1.FraudCheckResult\",\n () => [\n { no: 1, name: \"fraud_check_status\", kind: \"enum\", T: proto3.getEnumType(FraudCheckStatus) },\n { no: 2, name: \"detail_message\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Defines a payment method.\n *\n * @generated from message payment.v1.EncryptedPaymentMethod\n * @deprecated\n */\nexport const EncryptedPaymentMethod = proto3.makeMessageType(\n \"payment.v1.EncryptedPaymentMethod\",\n () => [\n { no: 1, name: \"encrypted_card\", kind: \"message\", T: EncryptedCard, oneof: \"payment_method\" },\n { no: 2, name: \"encrypted_electronic_check\", kind: \"message\", T: EncryptedElectronicCheck, oneof: \"payment_method\" },\n { no: 3, name: \"encrypted_wallet\", kind: \"message\", T: EncryptedWallet, oneof: \"payment_method\" },\n { no: 4, name: \"encrypted_stored_payment_method\", kind: \"message\", T: EncryptedStoredPaymentMethod, oneof: \"payment_method\" },\n { no: 5, name: \"encrypted_sepa\", kind: \"message\", T: EncryptedSepa, oneof: \"payment_method\" },\n { no: 6, name: \"encrypted_pay_by_bank\", kind: \"message\", T: EncryptedPayByBank, oneof: \"payment_method\" },\n ],\n);\n\n/**\n * Defines a payment method.\n *\n * @generated from message payment.v1.PaymentMethod\n */\nexport const PaymentMethod = proto3.makeMessageType(\n \"payment.v1.PaymentMethod\",\n () => [\n { no: 1, name: \"encrypted_card\", kind: \"message\", T: EncryptedCard, oneof: \"payment_method\" },\n { no: 2, name: \"encrypted_electronic_check\", kind: \"message\", T: EncryptedElectronicCheck, oneof: \"payment_method\" },\n { no: 3, name: \"encrypted_wallet\", kind: \"message\", T: EncryptedWallet, oneof: \"payment_method\" },\n { no: 4, name: \"encrypted_stored_payment_method\", kind: \"message\", T: EncryptedStoredPaymentMethod, oneof: \"payment_method\" },\n { no: 5, name: \"encrypted_sepa\", kind: \"message\", T: EncryptedSepa, oneof: \"payment_method\" },\n { no: 6, name: \"payment_card_or_token\", kind: \"message\", T: PaymentCardOrTokenPaymentMethod, oneof: \"payment_method\" },\n { no: 7, name: \"ach\", kind: \"message\", T: AchPaymentMethod, oneof: \"payment_method\" },\n { no: 8, name: \"lpm\", kind: \"message\", T: Lpm$1, oneof: \"payment_method\" },\n { no: 9, name: \"encrypted_pay_by_bank\", kind: \"message\", T: EncryptedPayByBank, oneof: \"payment_method\" },\n ],\n);\n\n/**\n * @generated from message payment.v1.PrepayInfo\n */\nexport const PrepayInfo = proto3.makeMessageType(\n \"payment.v1.PrepayInfo\",\n () => [\n { no: 1, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"merchant_order_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"order_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"total\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 5, name: \"request_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"shopper_profile_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"settings_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"currency_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 9, name: \"metadata\", kind: \"map\", K: 9 /* ScalarType.STRING */, V: {kind: \"scalar\", T: 9 /* ScalarType.STRING */} },\n { no: 10, name: \"application_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 11, name: \"payment_gateway_transaction_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 12, name: \"payment_gateway_request_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message payment.v1.PrepayPaymentMethod\n */\nexport const PrepayPaymentMethod = proto3.makeMessageType(\n \"payment.v1.PrepayPaymentMethod\",\n () => [\n { no: 1, name: \"other\", kind: \"message\", T: OtherPaymentMethod, oneof: \"prepay_payment_method\" },\n { no: 2, name: \"card_present\", kind: \"message\", T: CardPresentPaymentMethod, oneof: \"prepay_payment_method\" },\n { no: 3, name: \"cash\", kind: \"message\", T: CashPaymentMethod, oneof: \"prepay_payment_method\" },\n ],\n);\n\n/**\n * Decrypted payment card details.\n *\n * @generated from message payment.v1.DecryptedCard\n */\nexport const DecryptedCard = proto3.makeMessageType(\n \"payment.v1.DecryptedCard\",\n () => [\n { no: 1, name: \"card_holder_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 9, name: \"card_holder_first_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 10, name: \"card_holder_last_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"pan\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"cvv\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"expiration_month\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 5, name: \"expiration_year\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 6, name: \"billing_address\", kind: \"message\", T: PostalAddress },\n { no: 7, name: \"network\", kind: \"enum\", T: proto3.getEnumType(CardNetwork) },\n { no: 8, name: \"type\", kind: \"enum\", T: proto3.getEnumType(CardType) },\n { no: 11, name: \"pin_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, opt: true },\n { no: 12, name: \"preferred_payment_network_routing\", kind: \"enum\", T: proto3.getEnumType(CardNetwork), opt: true },\n { no: 13, name: \"preferred_routing_initiator\", kind: \"enum\", T: proto3.getEnumType(PreferredRoutingInitiator), opt: true },\n ],\n);\n\n/**\n * Decrypted electronic check details.\n *\n * @generated from message payment.v1.DecryptedElectronicCheck\n */\nexport const DecryptedElectronicCheck = proto3.makeMessageType(\n \"payment.v1.DecryptedElectronicCheck\",\n () => [\n { no: 1, name: \"bank_routing_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"dda_account_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"bank_account_type\", kind: \"enum\", T: proto3.getEnumType(EcpBankAccountType) },\n { no: 5, name: \"ach_verification_type\", kind: \"enum\", T: proto3.getEnumType(AchVerificationType) },\n { no: 4, name: \"billing_address\", kind: \"message\", T: PostalAddress },\n ],\n);\n\n/**\n * Decrypted electronic check details.\n *\n * @generated from message payment.v1.DecryptedPayByBank\n */\nexport const DecryptedPayByBank = proto3.makeMessageType(\n \"payment.v1.DecryptedPayByBank\",\n () => [\n { no: 1, name: \"account_token_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"bank_account_type\", kind: \"enum\", T: proto3.getEnumType(EcpBankAccountType) },\n { no: 3, name: \"billing_address\", kind: \"message\", T: PostalAddress },\n { no: 4, name: \"pay_by_bank_request_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"account_holder_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Defines the decrypted digital card from wallet.\n *\n * @generated from message payment.v1.DecryptedDigitalCard\n */\nexport const DecryptedDigitalCard = proto3.makeMessageType(\n \"payment.v1.DecryptedDigitalCard\",\n () => [\n { no: 1, name: \"card_holder_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"dpan\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"expiration_month\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 4, name: \"expiration_year\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 5, name: \"three_ds_online_payment_cryptogram\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"three_ds_eci_indicator\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"merchant_token_identifier\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"currency_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 9, name: \"last_4_of_fpan\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 10, name: \"network\", kind: \"enum\", T: proto3.getEnumType(CardNetwork) },\n ],\n);\n\n/**\n * Decrypted Payment Wallet details.\n *\n * @generated from message payment.v1.DecryptedWallet\n */\nexport const DecryptedWallet = proto3.makeMessageType(\n \"payment.v1.DecryptedWallet\",\n () => [\n { no: 1, name: \"decrypted_digital_card\", kind: \"message\", T: DecryptedDigitalCard },\n { no: 2, name: \"wallet_type\", kind: \"enum\", T: proto3.getEnumType(WalletType) },\n { no: 3, name: \"billing_address\", kind: \"message\", T: PostalAddress },\n ],\n);\n\n/**\n * Decrypted Stored Payment method details.\n *\n * @generated from message payment.v1.DecryptedStoredPaymentMethod\n */\nexport const DecryptedStoredPaymentMethod = proto3.makeMessageType(\n \"payment.v1.DecryptedStoredPaymentMethod\",\n () => [\n { no: 1, name: \"payment_gateway_profile_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"payment_method_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"card_cvv\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"update_details\", kind: \"message\", T: StoredPaymentMethodUpdateDetails },\n { no: 5, name: \"stored_payment_type\", kind: \"enum\", T: proto3.getEnumType(DecryptedStoredPaymentMethod_StoredPaymentType) },\n ],\n);\n\n/**\n * Defines the stored payment type.\n *\n * @generated from enum payment.v1.DecryptedStoredPaymentMethod.StoredPaymentType\n */\nexport const DecryptedStoredPaymentMethod_StoredPaymentType = proto3.makeEnum(\n \"payment.v1.DecryptedStoredPaymentMethod.StoredPaymentType\",\n [\n {no: 0, name: \"STORED_PAYMENT_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"STORED_PAYMENT_TYPE_CARD\", localName: \"CARD\"},\n {no: 2, name: \"STORED_PAYMENT_TYPE_ECP\", localName: \"ECP\"},\n {no: 3, name: \"STORED_PAYMENT_TYPE_SEPA\", localName: \"SEPA\"},\n ],\n);\n\n/**\n * Decrypted sepa details.\n *\n * @generated from message payment.v1.DecryptedSepa\n */\nexport const DecryptedSepa = proto3.makeMessageType(\n \"payment.v1.DecryptedSepa\",\n () => [\n { no: 1, name: \"bic\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"iban\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"mandate_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"billing_address\", kind: \"message\", T: PostalAddress },\n { no: 4, name: \"shopper_email_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Defines a payment method.\n *\n * @generated from message payment.v1.DecryptedPaymentMethod\n */\nexport const DecryptedPaymentMethod = proto3.makeMessageType(\n \"payment.v1.DecryptedPaymentMethod\",\n () => [\n { no: 1, name: \"decrypted_card\", kind: \"message\", T: DecryptedCard, oneof: \"payment_method\" },\n { no: 2, name: \"decrypted_electronic_check\", kind: \"message\", T: DecryptedElectronicCheck, oneof: \"payment_method\" },\n { no: 3, name: \"decrypted_wallet\", kind: \"message\", T: DecryptedWallet, oneof: \"payment_method\" },\n { no: 4, name: \"stored_payment_method\", kind: \"message\", T: DecryptedStoredPaymentMethod, oneof: \"payment_method\" },\n { no: 6, name: \"decrypted_sepa\", kind: \"message\", T: DecryptedSepa, oneof: \"payment_method\" },\n { no: 7, name: \"payment_card_or_token\", kind: \"message\", T: PaymentCardOrTokenPaymentMethod, oneof: \"payment_method\" },\n { no: 8, name: \"ach\", kind: \"message\", T: AchPaymentMethod, oneof: \"payment_method\" },\n { no: 9, name: \"lpm\", kind: \"message\", T: Lpm, oneof: \"payment_method\" },\n { no: 10, name: \"decrypted_pay_by_bank\", kind: \"message\", T: DecryptedPayByBank, oneof: \"payment_method\" },\n { no: 5, name: \"original_stored_payment_method\", kind: \"message\", T: DecryptedStoredPaymentMethod },\n ],\n);\n\n/**\n * Defines EU LPMs.\n *\n * @generated from message payment.v1.Lpm\n */\nexport const Lpm = proto3.makeMessageType(\n \"payment.v1.Lpm\",\n () => [\n { no: 1, name: \"lpm_type\", kind: \"enum\", T: proto3.getEnumType(LpmType) },\n { no: 2, name: \"merchant_return_url\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"billing_address\", kind: \"message\", T: PostalAddress },\n { no: 4, name: \"preferred_language\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Defines Payment Gateway response.\n * NextId: 25\n *\n * @generated from message payment.v1.PaymentGatewayResponse\n */\nexport const PaymentGatewayResponse = proto3.makeMessageType(\n \"payment.v1.PaymentGatewayResponse\",\n () => [\n { no: 21, name: \"response_status\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 1, name: \"transaction_status_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"transaction_status_message\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 22, name: \"approval_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"host_response_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 23, name: \"host_reference_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"response_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"payment_brand_auth_response_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"payment_brand_auth_resp_code_category\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"profile_status_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 9, name: \"profile_status_message\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"transaction_timestamp\", kind: \"message\", T: Timestamp },\n { no: 10, name: \"card_holder_verification_response_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 11, name: \"card_holder_verification_host_response_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 12, name: \"address_verification_response_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 20, name: \"network_transaction_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 13, name: \"address_verification_host_response_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 14, name: \"capture_requested\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 15, name: \"consumer_profile_response_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 16, name: \"consumer_profile_response_message\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 17, name: \"authentication_exemption_reason\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 18, name: \"transaction_state\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 19, name: \"payment_request_status\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 24, name: \"transaction_processor\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 25, name: \"amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 26, name: \"partial_authorization\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 27, name: \"payment_request\", kind: \"message\", T: PaymentRequest },\n { no: 28, name: \"partial_authorization_support\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 29, name: \"remaining_auth_amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 30, name: \"total_authorized_amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 31, name: \"requested_authorization_amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n ],\n);\n\n/**\n * @generated from message payment.v1.PaymentRequest\n */\nexport const PaymentRequest = proto3.makeMessageType(\n \"payment.v1.PaymentRequest\",\n () => [\n { no: 1, name: \"payment_request_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"payment_request_status\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"captures\", kind: \"message\", T: Capture, repeated: true },\n { no: 4, name: \"authorizations\", kind: \"message\", T: Authorization, repeated: true },\n { no: 5, name: \"refunds\", kind: \"message\", T: Refund, repeated: true },\n ],\n);\n\n/**\n * @generated from message payment.v1.Refund\n */\nexport const Refund = proto3.makeMessageType(\n \"payment.v1.Refund\",\n () => [\n { no: 1, name: \"refund_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 3, name: \"transaction_status_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message payment.v1.Capture\n */\nexport const Capture = proto3.makeMessageType(\n \"payment.v1.Capture\",\n () => [\n { no: 1, name: \"capture_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 3, name: \"transaction_status_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"capture_remaining_refundable_amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 5, name: \"transaction_status_reason\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message payment.v1.Authorization\n */\nexport const Authorization = proto3.makeMessageType(\n \"payment.v1.Authorization\",\n () => [\n { no: 1, name: \"authorization_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 3, name: \"transaction_status_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"authorization_type\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * ProfileDetails defines profile of a shopper.\n * Next Id: 10\n *\n * @generated from message payment.v1.ShopperProfileDetails\n */\nexport const ShopperProfileDetails = proto3.makeMessageType(\n \"payment.v1.ShopperProfileDetails\",\n () => [\n { no: 1, name: \"shopper_profile_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"payment_gateway_profile_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"first_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"middle_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"last_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"email\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"phone_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"shipping_address\", kind: \"message\", T: PostalAddress },\n { no: 9, name: \"billing_address\", kind: \"message\", T: PostalAddress },\n ],\n);\n\n/**\n * Payment profile.\n *\n * @generated from message payment.v1.PaymentProfile\n */\nexport const PaymentProfile = proto3.makeMessageType(\n \"payment.v1.PaymentProfile\",\n () => [\n { no: 2, name: \"payment_gateway_profile_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 1, name: \"payment_methods\", kind: \"message\", T: PaymentMethodSummary, repeated: true },\n ],\n);\n\n/**\n * Summary of a payment method.\n * NextId: 7\n *\n * @generated from message payment.v1.PaymentMethodSummary\n */\nexport const PaymentMethodSummary = proto3.makeMessageType(\n \"payment.v1.PaymentMethodSummary\",\n () => [\n { no: 1, name: \"payment_method_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"billing_address_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"billing_address\", kind: \"message\", T: PostalAddress },\n { no: 3, name: \"card\", kind: \"message\", T: CardSummary, oneof: \"payment_method\" },\n { no: 4, name: \"electronic_check\", kind: \"message\", T: ElectronicCheckSummary, oneof: \"payment_method\" },\n { no: 6, name: \"sepa\", kind: \"message\", T: SepaSummary, oneof: \"payment_method\" },\n { no: 7, name: \"pay_by_bank\", kind: \"message\", T: PayByBankSummary, oneof: \"payment_method\" },\n ],\n);\n\n/**\n * Card summary.\n *\n * @generated from message payment.v1.CardSummary\n */\nexport const CardSummary = proto3.makeMessageType(\n \"payment.v1.CardSummary\",\n () => [\n { no: 1, name: \"network\", kind: \"enum\", T: proto3.getEnumType(CardNetwork) },\n { no: 2, name: \"card_holder_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"first6\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"last4\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"expiration_month\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 6, name: \"expiration_year\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n ],\n);\n\n/**\n * ECP summary.\n *\n * @generated from message payment.v1.ElectronicCheckSummary\n */\nexport const ElectronicCheckSummary = proto3.makeMessageType(\n \"payment.v1.ElectronicCheckSummary\",\n () => [\n { no: 1, name: \"bank_account_type\", kind: \"enum\", T: proto3.getEnumType(EcpBankAccountType) },\n { no: 2, name: \"bank_routing_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"dda_account_number_last4\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"account_holder_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * SEPA summary.\n *\n * @generated from message payment.v1.SepaSummary\n */\nexport const SepaSummary = proto3.makeMessageType(\n \"payment.v1.SepaSummary\",\n () => [\n { no: 1, name: \"iban_last4\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"account_holder_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * PbB summary.\n *\n * @generated from message payment.v1.PayByBankSummary\n */\nexport const PayByBankSummary = proto3.makeMessageType(\n \"payment.v1.PayByBankSummary\",\n () => [\n { no: 1, name: \"tokenized_account_last4\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * RefundRequestDetails defines a set of request parameters.\n *\n * @generated from message payment.v1.RefundRequestDetails\n */\nexport const RefundRequestDetails = proto3.makeMessageType(\n \"payment.v1.RefundRequestDetails\",\n () => [\n { no: 1, name: \"request_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"merchant_order_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"order_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"settings_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 7, name: \"currency_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"split_options\", kind: \"message\", T: RefundSplitOptions },\n { no: 9, name: \"payment_transaction_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Defines Payment Gateway Refund response.\n *\n * @generated from message payment.v1.PaymentGatewayRefundResponse\n */\nexport const PaymentGatewayRefundResponse = proto3.makeMessageType(\n \"payment.v1.PaymentGatewayRefundResponse\",\n () => [\n { no: 1, name: \"transaction_status_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"transaction_status_message\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"host_response_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"response_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"response_message\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"transaction_reference_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"transaction_timestamp\", kind: \"message\", T: Timestamp },\n { no: 8, name: \"merchant_order_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 9, name: \"request_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 10, name: \"amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 11, name: \"currency_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 12, name: \"remaining_refundable_amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 13, name: \"transaction_state\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 14, name: \"payment_request_status\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 15, name: \"host_reference_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 16, name: \"response_status\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * RefundRequestResult defines results of a refund operation.\n *\n * @generated from message payment.v1.RefundRequestResult\n */\nexport const RefundRequestResult = proto3.makeMessageType(\n \"payment.v1.RefundRequestResult\",\n () => [\n { no: 1, name: \"status\", kind: \"enum\", T: proto3.getEnumType(RefundRequestStatus) },\n { no: 2, name: \"error_code\", kind: \"enum\", T: proto3.getEnumType(RefundErrorCode) },\n { no: 3, name: \"detail_message\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"payment_gateway_transaction_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"payment_gateway_refund_response\", kind: \"message\", T: PaymentGatewayRefundResponse },\n { no: 6, name: \"approval_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"payment_gateway_type\", kind: \"enum\", T: proto3.getEnumType(PaymentGatewayType) },\n { no: 8, name: \"payment_gateway_request_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * TipRequestResult defines results of a tip operation.\n *\n * @generated from message payment.v1.TipRequestResult\n */\nexport const TipRequestResult = proto3.makeMessageType(\n \"payment.v1.TipRequestResult\",\n () => [\n { no: 1, name: \"status\", kind: \"enum\", T: proto3.getEnumType(TipRequestStatus) },\n { no: 2, name: \"error_code\", kind: \"enum\", T: proto3.getEnumType(TipErrorCode) },\n { no: 3, name: \"detail_message\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"payment_gateway_transaction_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"payment_gateway_patch_response\", kind: \"message\", T: PaymentGatewayPatchResponse },\n { no: 6, name: \"approval_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"payment_gateway_type\", kind: \"enum\", T: proto3.getEnumType(PaymentGatewayType) },\n { no: 8, name: \"payment_gateway_request_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message payment.v1.TipRequestDetails\n */\nexport const TipRequestDetails = proto3.makeMessageType(\n \"payment.v1.TipRequestDetails\",\n () => [\n { no: 1, name: \"amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 2, name: \"total\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 3, name: \"currency_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"merchant_order_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"settings_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"request_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * NonceGenerationResult defines results of nonce generation\n *\n * @generated from message payment.v1.NonceGenerationResult\n */\nexport const NonceGenerationResult = proto3.makeMessageType(\n \"payment.v1.NonceGenerationResult\",\n () => [\n { no: 1, name: \"status\", kind: \"enum\", T: proto3.getEnumType(NonceGenerationRequestStatus) },\n { no: 2, name: \"error_code\", kind: \"enum\", T: proto3.getEnumType(NonceGenerationErrorCode) },\n { no: 3, name: \"detail_message\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"nonce_token\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"expiration_timestamp\", kind: \"message\", T: Timestamp },\n ],\n);\n\n/**\n * Defines a refund transaction entity.\n *\n * There might be multiple refund transactions with the same {@code oderID} and {@code paymentGatewayTransactionId}\n * , but all of them should meet the following constraints:\n *\n * - Only one transaction could be in the PENDING state.\n * - Only one transaction could be in the SUCCESS state.\n * - None or many transactions could be in the FAILED state.\n * - If there is a transaction in the PENDING state, then no transactions could be in the\n * SUCCESS state and vice versa.\n *\n * These entities are persisted in the Payment Transaction Repository.\n *\n *\n * @generated from message payment.v1.RefundTransaction\n */\nexport const RefundTransaction = proto3.makeMessageType(\n \"payment.v1.RefundTransaction\",\n () => [\n { no: 1, name: \"base\", kind: \"message\", T: Transaction },\n { no: 2, name: \"state\", kind: \"enum\", T: proto3.getEnumType(RefundTransaction_State) },\n { no: 3, name: \"refund_request_details\", kind: \"message\", T: RefundRequestDetails },\n { no: 4, name: \"refund_result\", kind: \"message\", T: RefundRequestResult },\n { no: 5, name: \"payment_transaction_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * State of the refund transaction.\n *\n * @generated from enum payment.v1.RefundTransaction.State\n */\nexport const RefundTransaction_State = proto3.makeEnum(\n \"payment.v1.RefundTransaction.State\",\n [\n {no: 0, name: \"STATE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"STATE_PENDING\", localName: \"PENDING\"},\n {no: 2, name: \"STATE_SUCCESS\", localName: \"SUCCESS\"},\n {no: 3, name: \"STATE_FAILED\", localName: \"FAILED\"},\n {no: 4, name: \"STATE_STARTED_MARKETPLACE_WORKFLOW\", localName: \"STARTED_MARKETPLACE_WORKFLOW\"},\n ],\n);\n\n/**\n * CancelRequestDetails defines a set of request parameters.\n *\n * @generated from message payment.v1.CancelRequestDetails\n */\nexport const CancelRequestDetails = proto3.makeMessageType(\n \"payment.v1.CancelRequestDetails\",\n () => [\n { no: 1, name: \"request_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"merchant_order_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"order_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"settings_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"payment_transaction_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Defines Payment Gateway Patch response.\n *\n * @generated from message payment.v1.PaymentGatewayPatchResponse\n */\nexport const PaymentGatewayPatchResponse = proto3.makeMessageType(\n \"payment.v1.PaymentGatewayPatchResponse\",\n () => [\n { no: 1, name: \"transaction_status_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"transaction_status_message\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"host_response_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"response_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"response_message\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"original_transaction_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"transaction_timestamp\", kind: \"message\", T: Timestamp },\n { no: 8, name: \"merchant_order_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 9, name: \"request_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 10, name: \"is_void\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 11, name: \"transaction_state\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 12, name: \"host_reference_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 13, name: \"response_status\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * CancelRequestResult defines results of a cancel operation.\n *\n * @generated from message payment.v1.CancelRequestResult\n */\nexport const CancelRequestResult = proto3.makeMessageType(\n \"payment.v1.CancelRequestResult\",\n () => [\n { no: 1, name: \"status\", kind: \"enum\", T: proto3.getEnumType(CancelRequestStatus) },\n { no: 2, name: \"error_code\", kind: \"enum\", T: proto3.getEnumType(CancelErrorCode) },\n { no: 3, name: \"detail_message\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"payment_gateway_transaction_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"payment_gateway_patch_response\", kind: \"message\", T: PaymentGatewayPatchResponse },\n { no: 6, name: \"approval_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"payment_gateway_type\", kind: \"enum\", T: proto3.getEnumType(PaymentGatewayType) },\n { no: 8, name: \"payment_gateway_request_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Defines a cancel transaction entity.\n *\n * There might be multiple cancel transactions with the same {@code oderID} and {@code paymentGatewayTransactionId}\n * , but all of them should meet the following constraints:\n *\n * - Only one transaction could be in the PENDING state.\n * - Only one transaction could be in the SUCCESS state.\n * - None or many transactions could be in the FAILED state.\n * - If there is a transaction in the PENDING state, then no transactions could be in the\n * SUCCESS state and vice versa.\n *\n * These entities are persisted in the Payment Transaction Repository.\n *\n *\n * @generated from message payment.v1.CancelTransaction\n */\nexport const CancelTransaction = proto3.makeMessageType(\n \"payment.v1.CancelTransaction\",\n () => [\n { no: 1, name: \"base\", kind: \"message\", T: Transaction },\n { no: 2, name: \"state\", kind: \"enum\", T: proto3.getEnumType(CancelTransaction_State) },\n { no: 3, name: \"cancel_request_details\", kind: \"message\", T: CancelRequestDetails },\n { no: 4, name: \"cancel_result\", kind: \"message\", T: CancelRequestResult },\n { no: 5, name: \"payment_transaction_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * State of the cancel transaction.\n *\n * @generated from enum payment.v1.CancelTransaction.State\n */\nexport const CancelTransaction_State = proto3.makeEnum(\n \"payment.v1.CancelTransaction.State\",\n [\n {no: 0, name: \"STATE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"STATE_PENDING\", localName: \"PENDING\"},\n {no: 2, name: \"STATE_SUCCESS\", localName: \"SUCCESS\"},\n {no: 3, name: \"STATE_FAILED\", localName: \"FAILED\"},\n ],\n);\n\n/**\n * Defines Pay by bank account access consent response.\n *\n * @generated from message payment.v1.PayByBankAccountAccessConsentResponse\n */\nexport const PayByBankAccountAccessConsentResponse = proto3.makeMessageType(\n \"payment.v1.PayByBankAccountAccessConsentResponse\",\n () => [\n { no: 1, name: \"transaction_identifier\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"request_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"response_status\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"response_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"response_message\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"consumer_user_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"redirect_url\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"consumer_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 9, name: \"link\", kind: \"message\", T: Link },\n ],\n);\n\n/**\n * Link for Pay by bank contains consent url.\n *\n * @generated from message payment.v1.Link\n */\nexport const Link = proto3.makeMessageType(\n \"payment.v1.Link\",\n () => [\n { no: 1, name: \"consent_url\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message payment.v1.GetPrePaymentInfoRequestResult\n */\nexport const GetPrePaymentInfoRequestResult = proto3.makeMessageType(\n \"payment.v1.GetPrePaymentInfoRequestResult\",\n () => [\n { no: 1, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"merchant_order_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"order_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"total\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 5, name: \"request_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"shopper_profile_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"settings_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"currency_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 9, name: \"payment_method\", kind: \"message\", T: PrepayPaymentMethod },\n { no: 10, name: \"metadata\", kind: \"map\", K: 9 /* ScalarType.STRING */, V: {kind: \"scalar\", T: 9 /* ScalarType.STRING */} },\n { no: 11, name: \"created_at\", kind: \"message\", T: Timestamp },\n { no: 12, name: \"updated_at\", kind: \"message\", T: Timestamp },\n { no: 13, name: \"transaction_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 14, name: \"prepayment_type\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Defines Upg Payment Event for sales activity.\n *\n * @generated from message payment.v1.UpgPaymentEvent\n */\nexport const UpgPaymentEvent = proto3.makeMessageType(\n \"payment.v1.UpgPaymentEvent\",\n () => [\n { no: 1, name: \"transaction_identifier\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"transaction_request_identifier\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"transaction_amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 5, name: \"transaction_currency_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"masked_account_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"payment_processor_authorization_response_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"sales_order_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 9, name: \"payment_type_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 10, name: \"transaction_status_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 11, name: \"refundable_amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 12, name: \"remaining_refundable_amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 13, name: \"payment_method_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 14, name: \"payment_brand_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 15, name: \"last_updated_event_type\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 16, name: \"address_postal_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 17, name: \"address_country_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 18, name: \"transaction_capture_method_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 19, name: \"transaction_timestamp\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 20, name: \"create_timestamp\", kind: \"message\", T: Timestamp },\n { no: 21, name: \"update_timestamp\", kind: \"message\", T: Timestamp },\n { no: 22, name: \"checkout_payment_request_external_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 23, name: \"payment_authorization_response_identifier\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Defines a capture transaction entity.\n *\n * These entities are persisted in the Payment Transaction Repository.\n *\n *\n * @generated from message payment.v1.CaptureTransaction\n */\nexport const CaptureTransaction = proto3.makeMessageType(\n \"payment.v1.CaptureTransaction\",\n () => [\n { no: 1, name: \"base\", kind: \"message\", T: Transaction },\n { no: 2, name: \"state\", kind: \"enum\", T: proto3.getEnumType(CaptureTransaction_State) },\n { no: 3, name: \"capture_request_details\", kind: \"message\", T: CaptureRequestDetails },\n { no: 4, name: \"capture_result\", kind: \"message\", T: CaptureRequestResult },\n ],\n);\n\n/**\n * State of the capture transaction.\n *\n * @generated from enum payment.v1.CaptureTransaction.State\n */\nexport const CaptureTransaction_State = proto3.makeEnum(\n \"payment.v1.CaptureTransaction.State\",\n [\n {no: 0, name: \"STATE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"STATE_PENDING\", localName: \"PENDING\"},\n {no: 2, name: \"STATE_SUCCESS\", localName: \"SUCCESS\"},\n {no: 3, name: \"STATE_FAILED\", localName: \"FAILED\"},\n ],\n);\n\n/**\n * CaptureRequestResult defines results of a capture operation.\n *\n * @generated from message payment.v1.CaptureRequestResult\n */\nexport const CaptureRequestResult = proto3.makeMessageType(\n \"payment.v1.CaptureRequestResult\",\n () => [\n { no: 1, name: \"status\", kind: \"enum\", T: proto3.getEnumType(CaptureRequestStatus) },\n { no: 2, name: \"error_code\", kind: \"enum\", T: proto3.getEnumType(CaptureErrorCode) },\n { no: 3, name: \"detail_message\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"payment_gateway_transaction_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"payment_gateway_patch_response\", kind: \"message\", T: PaymentGatewayPatchResponse },\n { no: 6, name: \"approval_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"payment_gateway_type\", kind: \"enum\", T: proto3.getEnumType(PaymentGatewayType) },\n { no: 8, name: \"payment_gateway_request_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message payment.v1.CaptureRequestDetails\n */\nexport const CaptureRequestDetails = proto3.makeMessageType(\n \"payment.v1.CaptureRequestDetails\",\n () => [\n { no: 1, name: \"request_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"merchant_order_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"order_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"settings_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 7, name: \"currency_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n","// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file merchant/v1/pricing.proto (package merchant.v1, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\nimport { PaymentMethodTypeCode } from \"../../common/v1/payment_pb\";\n\n/**\n * @generated from enum merchant.v1.RateMode\n */\nexport const RateMode = proto3.makeEnum(\n \"merchant.v1.RateMode\",\n [\n {no: 0, name: \"RATE_MODE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"RATE_MODE_FLAT\", localName: \"FLAT\"},\n {no: 2, name: \"RATE_MODE_PERCENTAGE\", localName: \"PERCENTAGE\"},\n ],\n);\n\n/**\n * @generated from enum merchant.v1.ChargeType\n */\nexport const ChargeType = proto3.makeEnum(\n \"merchant.v1.ChargeType\",\n [\n {no: 0, name: \"CHARGE_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"CHARGE_TYPE_CONVENIENCE_FEE\", localName: \"CONVENIENCE_FEE\"},\n {no: 2, name: \"CHARGE_TYPE_SERVICE_FEE\", localName: \"SERVICE_FEE\"},\n {no: 3, name: \"CHARGE_TYPE_SURCHARGE\", localName: \"SURCHARGE\"},\n {no: 4, name: \"CHARGE_TYPE_TIP\", localName: \"TIP\"},\n {no: 5, name: \"CHARGE_TYPE_SHIPPING_FEE\", localName: \"SHIPPING_FEE\"},\n {no: 6, name: \"CHARGE_TYPE_GRATUITY\", localName: \"GRATUITY\"},\n ],\n);\n\n/**\n * @generated from enum merchant.v1.DiscountType\n */\nexport const DiscountType = proto3.makeEnum(\n \"merchant.v1.DiscountType\",\n [\n {no: 0, name: \"DISCOUNT_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"DISCOUNT_TYPE_COUPON\", localName: \"COUPON\"},\n {no: 2, name: \"DISCOUNT_TYPE_GIFT_CARD\", localName: \"GIFT_CARD\"},\n {no: 3, name: \"DISCOUNT_TYPE_PROMOTION\", localName: \"PROMOTION\"},\n ],\n);\n\n/**\n * Types of taxes applied to a transaction.\n *\n * @generated from enum merchant.v1.TaxType\n */\nexport const TaxType = proto3.makeEnum(\n \"merchant.v1.TaxType\",\n [\n {no: 0, name: \"TAX_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"TAX_TYPE_NATIONAL_TAX\", localName: \"NATIONAL_TAX\"},\n {no: 2, name: \"TAX_TYPE_STATE_SALES_TAX\", localName: \"STATE_SALES_TAX\"},\n {no: 3, name: \"TAX_TYPE_CITY_SALES_TAX\", localName: \"CITY_SALES_TAX\"},\n {no: 4, name: \"TAX_TYPE_LOCAL_SALES_TAX\", localName: \"LOCAL_SALES_TAX\"},\n {no: 5, name: \"TAX_TYPE_AMUSEMENT_TAX\", localName: \"AMUSEMENT_TAX\"},\n {no: 6, name: \"TAX_TYPE_LEAST_TAX\", localName: \"LEAST_TAX\"},\n {no: 7, name: \"TAX_TYPE_SERVICE_TAX\", localName: \"SERVICE_TAX\"},\n {no: 8, name: \"TAX_TYPE_COMMUNICATION_TAX\", localName: \"COMMUNICATION_TAX\"},\n {no: 9, name: \"TAX_TYPE_PROVISIONAL_SALES_TAX\", localName: \"PROVISIONAL_SALES_TAX\"},\n {no: 10, name: \"TAX_TYPE_VAT\", localName: \"VAT\"},\n {no: 11, name: \"TAX_TYPE_GST\", localName: \"GST\"},\n {no: 12, name: \"TAX_TYPE_HST\", localName: \"HST\"},\n {no: 13, name: \"TAX_TYPE_QST\", localName: \"QST\"},\n {no: 14, name: \"TAX_TYPE_ENERGY_TAX\", localName: \"ENERGY_TAX\"},\n {no: 15, name: \"TAX_TYPE_OTHER_TAX\", localName: \"OTHER_TAX\"},\n {no: 16, name: \"TAX_TYPE_IMPORT_TAX\", localName: \"IMPORT_TAX\"},\n {no: 17, name: \"TAX_TYPE_ALTERNATE_TAX\", localName: \"ALTERNATE_TAX\"},\n {no: 18, name: \"TAX_TYPE_SHIPPING_VAT_TAX\", localName: \"SHIPPING_VAT_TAX\"},\n {no: 19, name: \"TAX_TYPE_PST\", localName: \"PST\"},\n ],\n);\n\n/**\n * @generated from message merchant.v1.TaxRate\n */\nexport const TaxRate = proto3.makeMessageType(\n \"merchant.v1.TaxRate\",\n () => [\n { no: 1, name: \"id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"tax_type_description\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"tax_type_code\", kind: \"enum\", T: proto3.getEnumType(TaxType) },\n { no: 4, name: \"tax_mode\", kind: \"enum\", T: proto3.getEnumType(RateMode) },\n { no: 5, name: \"tax_percent\", kind: \"scalar\", T: 2 /* ScalarType.FLOAT */ },\n { no: 6, name: \"tax_amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 7, name: \"tax_metadata\", kind: \"map\", K: 9 /* ScalarType.STRING */, V: {kind: \"scalar\", T: 9 /* ScalarType.STRING */} },\n { no: 8, name: \"value_added_tax_invoice_reference_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 9, name: \"party_tax_government_issued_identifier\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Additional charges applied on a Transaction either from the merchant or the consumer end.\n *\n * @generated from message merchant.v1.TransactionCharge\n */\nexport const TransactionCharge = proto3.makeMessageType(\n \"merchant.v1.TransactionCharge\",\n () => [\n { no: 1, name: \"id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"fee_description\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"charge_type\", kind: \"enum\", T: proto3.getEnumType(ChargeType) },\n { no: 4, name: \"charge_mode\", kind: \"enum\", T: proto3.getEnumType(RateMode) },\n { no: 5, name: \"purchase_transaction_fee_percent\", kind: \"scalar\", T: 2 /* ScalarType.FLOAT */ },\n { no: 6, name: \"transaction_fee_amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 7, name: \"tax\", kind: \"message\", T: TaxRate },\n { no: 8, name: \"charge_metadata\", kind: \"map\", K: 9 /* ScalarType.STRING */, V: {kind: \"scalar\", T: 9 /* ScalarType.STRING */} },\n { no: 9, name: \"sub_merchant_info\", kind: \"message\", T: SubMerchantInfo },\n { no: 10, name: \"payment_method_type_code\", kind: \"enum\", T: proto3.getEnumType(PaymentMethodTypeCode), opt: true },\n ],\n);\n\n/**\n * @generated from message merchant.v1.SubMerchantInfo\n */\nexport const SubMerchantInfo = proto3.makeMessageType(\n \"merchant.v1.SubMerchantInfo\",\n () => [\n { no: 1, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"merchant_order_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Discounts - actual application of a coupon or promotion code to the subtotal.\n *\n * @generated from message merchant.v1.Discount\n */\nexport const Discount = proto3.makeMessageType(\n \"merchant.v1.Discount\",\n () => [\n { no: 1, name: \"id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"discount_type_description\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"discount_type\", kind: \"enum\", T: proto3.getEnumType(DiscountType) },\n { no: 4, name: \"discount_mode\", kind: \"enum\", T: proto3.getEnumType(RateMode) },\n { no: 5, name: \"transaction_discount_amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 6, name: \"purchase_transaction_discount_percent\", kind: \"scalar\", T: 2 /* ScalarType.FLOAT */ },\n { no: 7, name: \"promotion_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"discount_tax\", kind: \"message\", T: TaxRate },\n { no: 9, name: \"discount_metadata\", kind: \"map\", K: 9 /* ScalarType.STRING */, V: {kind: \"scalar\", T: 9 /* ScalarType.STRING */} },\n ],\n);\n\n","// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file merchant/v1/product.proto (package merchant.v1, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\n\n/**\n * Product is the main resource representing a product / service offered by Merchant.\n * Main use of this resource is for payment links.\n *\n * @generated from message merchant.v1.Product\n */\nexport const Product = proto3.makeMessageType(\n \"merchant.v1.Product\",\n () => [\n { no: 1, name: \"product_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 11, name: \"product_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 15, name: \"merchant_product_identifier\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 13, name: \"product_description\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"universal_product_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 14, name: \"item_commodity_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 12, name: \"stock_keeping_unit\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 9, name: \"image_url\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"shippable\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 16, name: \"is_taxable\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n);\n\n","// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file merchant/v1/cart.proto (package merchant.v1, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\nimport { Address, Money, ShippingMethod } from \"../../common/v1/common_pb\";\nimport { Discount, TaxRate, TransactionCharge } from \"./pricing_pb\";\nimport { Product } from \"./product_pb\";\n\n/**\n * Next Id: 7\n *\n * @generated from message merchant.v1.Cart\n */\nexport const Cart = proto3.makeMessageType(\n \"merchant.v1.Cart\",\n () => [\n { no: 1, name: \"total_transaction_amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 7, name: \"subtotal_amount\", kind: \"message\", T: Money },\n { no: 2, name: \"total_tax\", kind: \"message\", T: Money },\n { no: 5, name: \"line_items\", kind: \"message\", T: LineItem, repeated: true },\n { no: 6, name: \"shipping_address\", kind: \"message\", T: Address },\n { no: 9, name: \"shipping_methods\", kind: \"message\", T: ShippingMethod, repeated: true },\n { no: 10, name: \"notes\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 12, name: \"transaction_charges\", kind: \"message\", T: TransactionCharge, repeated: true },\n { no: 13, name: \"discounts\", kind: \"message\", T: Discount, repeated: true },\n { no: 14, name: \"taxes\", kind: \"message\", T: TaxRate, repeated: true },\n { no: 16, name: \"total_fee_amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 17, name: \"transaction_discount_amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 18, name: \"tax_amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 19, name: \"total_shipping_amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 20, name: \"cart_metadata\", kind: \"map\", K: 9 /* ScalarType.STRING */, V: {kind: \"scalar\", T: 9 /* ScalarType.STRING */} },\n { no: 21, name: \"ship_from_address_postal_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 22, name: \"transaction_advices\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 23, name: \"tax_treatment_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message merchant.v1.LineItem\n */\nexport const LineItem = proto3.makeMessageType(\n \"merchant.v1.LineItem\",\n () => [\n { no: 1, name: \"id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"quantity\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 3, name: \"unit_price\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 4, name: \"name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"description\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 10, name: \"image_url\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 11, name: \"product\", kind: \"message\", T: Product },\n { no: 12, name: \"transaction_charges\", kind: \"message\", T: TransactionCharge, repeated: true },\n { no: 13, name: \"discounts\", kind: \"message\", T: Discount, repeated: true },\n { no: 14, name: \"tax_rates\", kind: \"message\", T: TaxRate, repeated: true },\n { no: 16, name: \"total_fee_amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 18, name: \"total_tax_amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 19, name: \"total_shipping_amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 20, name: \"shipping_method\", kind: \"message\", T: ShippingMethod },\n { no: 21, name: \"line_item_metadata\", kind: \"map\", K: 9 /* ScalarType.STRING */, V: {kind: \"scalar\", T: 9 /* ScalarType.STRING */} },\n { no: 22, name: \"transaction_discount_amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 23, name: \"tax_inclusive_line_item_total_amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 25, name: \"line_item_unit_of_measure_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 27, name: \"sku\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, opt: true },\n { no: 28, name: \"upc\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, opt: true },\n { no: 29, name: \"taxable\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */, opt: true },\n ],\n);\n\n/**\n * Pricing refers to how much the product or service costs.\n * By default (price only provided) price treated as a unit price.\n *\n * @generated from message merchant.v1.Price\n */\nexport const Price = proto3.makeMessageType(\n \"merchant.v1.Price\",\n () => [\n { no: 1, name: \"unit_price\", kind: \"message\", T: Money },\n ],\n);\n\n","// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file common/v1/shopper.proto (package common.v1, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\nimport { Address } from \"./common_pb\";\nimport { PostalAddress } from \"../../google/type/postal_address_pb\";\nimport { Timestamp } from \"../../google/protobuf/timestamp_pb\";\n\n/**\n * @generated from enum common.v1.JourneyType\n */\nexport const JourneyType = proto3.makeEnum(\n \"common.v1.JourneyType\",\n [\n {no: 0, name: \"JOURNEY_TYPE_TRANSACTIONAL_UNSPECIFIED\", localName: \"TRANSACTIONAL_UNSPECIFIED\"},\n {no: 1, name: \"JOURNEY_TYPE_MERCHANT_MANAGED\", localName: \"MERCHANT_MANAGED\"},\n {no: 2, name: \"JOURNEY_TYPE_JPMC_MANAGED\", localName: \"JPMC_MANAGED\"},\n {no: 3, name: \"JOURNEY_TYPE_CHECKOUT_MANAGED\", localName: \"CHECKOUT_MANAGED\"},\n ],\n);\n\n/**\n * @generated from enum common.v1.ProfileSource\n */\nexport const ProfileSource = proto3.makeEnum(\n \"common.v1.ProfileSource\",\n [\n {no: 0, name: \"PROFILE_SOURCE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"PROFILE_SOURCE_SETUP_CHECKOUT_INTENT\", localName: \"SETUP_CHECKOUT_INTENT\"},\n {no: 2, name: \"PROFILE_SOURCE_PBL_CREATION\", localName: \"PBL_CREATION\"},\n ],\n);\n\n/**\n * SHOPPER ENTITY\n * Next id : 8\n *\n * @generated from message common.v1.Shopper\n */\nexport const Shopper = proto3.makeMessageType(\n \"common.v1.Shopper\",\n () => [\n { no: 4, name: \"reference\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"profile_id\", jsonName: \"consumerProfileId\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"email\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"phone\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"first_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"last_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"billing_address\", kind: \"message\", T: Address },\n ],\n);\n\n/**\n * @generated from message common.v1.ShopperProfile\n */\nexport const ShopperProfile = proto3.makeMessageType(\n \"common.v1.ShopperProfile\",\n () => [\n { no: 1, name: \"profile_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 10, name: \"payment_gateway_profile_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"first_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"middle_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"last_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"email\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"phone_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 7, name: \"journey\", kind: \"enum\", T: proto3.getEnumType(JourneyType) },\n { no: 8, name: \"shipping_addresses\", kind: \"message\", T: ProfileAddress, repeated: true },\n { no: 9, name: \"billing_addresses\", kind: \"message\", T: ProfileAddress, repeated: true },\n { no: 11, name: \"profile_source\", kind: \"enum\", T: proto3.getEnumType(ProfileSource) },\n ],\n);\n\n/**\n * @generated from message common.v1.ProfileAddress\n */\nexport const ProfileAddress = proto3.makeMessageType(\n \"common.v1.ProfileAddress\",\n () => [\n { no: 1, name: \"profile_address_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"address\", kind: \"message\", T: PostalAddress },\n { no: 3, name: \"phone_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"email\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"created_at\", kind: \"message\", T: Timestamp },\n { no: 6, name: \"updated_at\", kind: \"message\", T: Timestamp },\n ],\n);\n\n","// Protocol Buffers - Google's data interchange format\n// Copyright 2008 Google Inc. All rights reserved.\n// https://developers.google.com/protocol-buffers/\n//\n// Redistribution and use in source and binary forms, with or without\n// modification, are permitted provided that the following conditions are\n// met:\n//\n// * Redistributions of source code must retain the above copyright\n// notice, this list of conditions and the following disclaimer.\n// * Redistributions in binary form must reproduce the above\n// copyright notice, this list of conditions and the following disclaimer\n// in the documentation and/or other materials provided with the\n// distribution.\n// * Neither the name of Google Inc. nor the names of its\n// contributors may be used to endorse or promote products derived from\n// this software without specific prior written permission.\n//\n// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n// \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n\n// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file google/protobuf/any.proto (package google.protobuf, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\n\n/**\n * `Any` contains an arbitrary serialized protocol buffer message along with a\n * URL that describes the type of the serialized message.\n *\n * Protobuf library provides support to pack/unpack Any values in the form\n * of utility functions or additional generated methods of the Any type.\n *\n * Example 1: Pack and unpack a message in C++.\n *\n * Foo foo = ...;\n * Any any;\n * any.PackFrom(foo);\n * ...\n * if (any.UnpackTo(&foo)) {\n * ...\n * }\n *\n * Example 2: Pack and unpack a message in Java.\n *\n * Foo foo = ...;\n * Any any = Any.pack(foo);\n * ...\n * if (any.is(Foo.class)) {\n * foo = any.unpack(Foo.class);\n * }\n * // or ...\n * if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n * foo = any.unpack(Foo.getDefaultInstance());\n * }\n *\n * Example 3: Pack and unpack a message in Python.\n *\n * foo = Foo(...)\n * any = Any()\n * any.Pack(foo)\n * ...\n * if any.Is(Foo.DESCRIPTOR):\n * any.Unpack(foo)\n * ...\n *\n * Example 4: Pack and unpack a message in Go\n *\n * foo := &pb.Foo{...}\n * any, err := anypb.New(foo)\n * if err != nil {\n * ...\n * }\n * ...\n * foo := &pb.Foo{}\n * if err := any.UnmarshalTo(foo); err != nil {\n * ...\n * }\n *\n * The pack methods provided by protobuf library will by default use\n * 'type.googleapis.com/full.type.name' as the type URL and the unpack\n * methods only use the fully qualified type name after the last '/'\n * in the type URL, for example \"foo.bar.com/x/y.z\" will yield type\n * name \"y.z\".\n *\n * JSON\n * ====\n * The JSON representation of an `Any` value uses the regular\n * representation of the deserialized, embedded message, with an\n * additional field `@type` which contains the type URL. Example:\n *\n * package google.profile;\n * message Person {\n * string first_name = 1;\n * string last_name = 2;\n * }\n *\n * {\n * \"@type\": \"type.googleapis.com/google.profile.Person\",\n * \"firstName\": ,\n * \"lastName\": \n * }\n *\n * If the embedded message type is well-known and has a custom JSON\n * representation, that representation will be embedded adding a field\n * `value` which holds the custom JSON in addition to the `@type`\n * field. Example (for message [google.protobuf.Duration][]):\n *\n * {\n * \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n * \"value\": \"1.212s\"\n * }\n *\n *\n * @generated from message google.protobuf.Any\n */\nexport const Any = proto3.makeMessageType(\n \"google.protobuf.Any\",\n () => [\n { no: 1, name: \"type_url\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"value\", kind: \"scalar\", T: 12 /* ScalarType.BYTES */ },\n ],\n);\n\nAny.prototype.toJson = function toJson(options) {\n if (this.typeUrl === \"\") {\n return {};\n }\n const typeName = this.typeUrlToName(this.typeUrl);\n const messageType = options?.typeRegistry?.findMessage(typeName);\n if (!messageType) {\n throw new Error(`cannot encode message google.protobuf.Any to JSON: \"${this.typeUrl}\" is not in the type registry`);\n }\n const message = messageType.fromBinary(this.value);\n let json = message.toJson(options);\n if (typeName.startsWith(\"google.protobuf.\") || (json === null || Array.isArray(json) || typeof json !== \"object\")) {\n json = {value: json};\n }\n json[\"@type\"] = this.typeUrl;\n return json;\n};\n\nAny.prototype.fromJson = function fromJson(json, options) {\n if (json === null || Array.isArray(json) || typeof json != \"object\") {\n throw new Error(`cannot decode message google.protobuf.Any from JSON: expected object but got ${json === null ? \"null\" : Array.isArray(json) ? \"array\" : typeof json}`);\n }\n if (Object.keys(json).length == 0) {\n return this;\n }\n const typeUrl = json[\"@type\"];\n if (typeof typeUrl != \"string\" || typeUrl == \"\") {\n throw new Error(`cannot decode message google.protobuf.Any from JSON: \"@type\" is empty`);\n }\n const typeName = this.typeUrlToName(typeUrl), messageType = options?.typeRegistry?.findMessage(typeName);\n if (!messageType) {\n throw new Error(`cannot decode message google.protobuf.Any from JSON: ${typeUrl} is not in the type registry`);\n }\n let message;\n if (typeName.startsWith(\"google.protobuf.\") && Object.prototype.hasOwnProperty.call(json, \"value\")) {\n message = messageType.fromJson(json[\"value\"], options);\n } else {\n const copy = Object.assign({}, json);\n delete copy[\"@type\"];\n message = messageType.fromJson(copy, options);\n }\n this.packFrom(message);\n return this;\n};\n\nAny.prototype.packFrom = function packFrom(message) {\n this.value = message.toBinary();\n this.typeUrl = this.typeNameToUrl(message.getType().typeName);\n};\n\nAny.prototype.unpackTo = function unpackTo(target) {\n if (!this.is(target.getType())) {\n return false;\n }\n target.fromBinary(this.value);\n return true;\n};\n\nAny.prototype.unpack = function unpack(registry) {\n if (this.typeUrl === \"\") {\n return undefined;\n }\n const messageType = registry.findMessage(this.typeUrlToName(this.typeUrl));\n if (!messageType) {\n return undefined;\n }\n return messageType.fromBinary(this.value);\n }\n\nAny.prototype.is = function is(type) {\n if (this.typeUrl === '') {\n return false;\n }\n const name = this.typeUrlToName(this.typeUrl);\n let typeName = '';\n if (typeof type === 'string') {\n typeName = type;\n } else {\n typeName = type.typeName;\n }\n return name === typeName;\n};\n\nAny.prototype.typeNameToUrl = function typeNameToUrl(name) {\n return `type.googleapis.com/${name}`;\n};\n\nAny.prototype.typeUrlToName = function typeUrlToName(url) {\n if (!url.length) {\n throw new Error(`invalid type url: ${url}`);\n }\n const slash = url.lastIndexOf(\"/\");\n const name = slash > 0 ? url.substring(slash + 1) : url;\n if (!name.length) {\n throw new Error(`invalid type url: ${url}`);\n }\n return name;\n};\n\nAny.pack = function pack(message) {\n const any = new Any();\n any.packFrom(message);\n return any;\n};\n\n","// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file event/v1/billing_event.proto (package event.v1, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\nimport { Timestamp } from \"../../google/protobuf/timestamp_pb\";\nimport { PayRequestStatus } from \"../../common/v1/common_pb\";\n\n/**\n * Event SubType which is in billing payload\n *\n * @generated from enum event.v1.BillingType\n */\nexport const BillingType = proto3.makeEnum(\n \"event.v1.BillingType\",\n [\n {no: 0, name: \"BILLING_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"BILLING_TYPE_PAY\", localName: \"PAY\"},\n {no: 2, name: \"BILLING_TYPE_SETUP_CHECKOUT_INTENT\", localName: \"SETUP_CHECKOUT_INTENT\"},\n ],\n);\n\n/**\n * Represents the actual body of a billing event message; a billing event occurs\n * when a merchant invokes a billable public API.\n * Most of the fields are defined at:\n * https://jiradc-cib-cluster02.prod.aws.jpmchase.net/browse/MSTHPS-754\n *\n * @generated from message event.v1.BillingEventPayload\n */\nexport const BillingEventPayload = proto3.makeMessageType(\n \"event.v1.BillingEventPayload\",\n () => [\n { no: 1, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"core_td_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"transaction_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"request_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"transaction_type\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"intent_id\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 8, name: \"intent_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 9, name: \"services_rendered_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 10, name: \"billable\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 11, name: \"merchant_locale\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 12, name: \"service_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 13, name: \"internal_service_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 14, name: \"timestamp\", kind: \"message\", T: Timestamp },\n { no: 15, name: \"response_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 16, name: \"pay_request_status\", kind: \"enum\", T: proto3.getEnumType(PayRequestStatus) },\n { no: 17, name: \"secondary_td_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 18, name: \"billing_type\", kind: \"enum\", T: proto3.getEnumType(BillingType) },\n ],\n);\n\n","// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file event/v1/checkout_trace_event.proto (package event.v1, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\nimport { Timestamp } from \"../../google/protobuf/timestamp_pb\";\n\n/**\n * @generated from enum event.v1.CheckoutTraceType\n */\nexport const CheckoutTraceType = proto3.makeEnum(\n \"event.v1.CheckoutTraceType\",\n [\n {no: 0, name: \"CHECKOUT_TRACE_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"CHECKOUT_TRACE_TYPE_REQUEST\", localName: \"REQUEST\"},\n {no: 2, name: \"CHECKOUT_TRACE_TYPE_RESPONSE\", localName: \"RESPONSE\"},\n {no: 3, name: \"CHECKOUT_TRACE_TYPE_ERROR\", localName: \"ERROR\"},\n ],\n);\n\n/**\n * @generated from enum event.v1.RequestType\n */\nexport const RequestType = proto3.makeEnum(\n \"event.v1.RequestType\",\n [\n {no: 0, name: \"REQUEST_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"REQUEST_TYPE_PAY\", localName: \"PAY\"},\n {no: 3, name: \"REQUEST_TYPE_SETUP_CHECKOUT_INTENT\", localName: \"SETUP_CHECKOUT_INTENT\"},\n {no: 4, name: \"REQUEST_TYPE_GET_MERCHANT_SETTINGS\", localName: \"GET_MERCHANT_SETTINGS\"},\n {no: 5, name: \"REQUEST_TYPE_GET_CHECKOUT_SESSION\", localName: \"GET_CHECKOUT_SESSION\"},\n ],\n);\n\n/**\n * @generated from message event.v1.CheckoutTraceEventPayload\n */\nexport const CheckoutTraceEventPayload = proto3.makeMessageType(\n \"event.v1.CheckoutTraceEventPayload\",\n () => [\n { no: 1, name: \"id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"order_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"merchant_order_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"payload\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"request_type\", kind: \"enum\", T: proto3.getEnumType(RequestType) },\n { no: 7, name: \"checkout_trace_type\", kind: \"enum\", T: proto3.getEnumType(CheckoutTraceType) },\n { no: 8, name: \"timestamp\", kind: \"message\", T: Timestamp },\n { no: 9, name: \"trace_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 10, name: \"span_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n","// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file event/v1/payment_event.proto (package event.v1, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\nimport { Money } from \"../../common/v1/common_pb\";\nimport { Duration } from \"../../google/protobuf/duration_pb\";\n\n/**\n * Represents the actual body of a payment event message; a payment event occurs\n * when Checkout backend calls a payment gateway.\n *\n * @generated from message event.v1.PaymentEventPayload\n */\nexport const PaymentEventPayload = proto3.makeMessageType(\n \"event.v1.PaymentEventPayload\",\n () => [\n { no: 1, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"amount\", kind: \"message\", T: Money },\n { no: 3, name: \"duration\", kind: \"message\", T: Duration },\n { no: 4, name: \"status\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"payment_gateway\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"auth_method\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"capture_method\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"create_shopper_profile\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 9, name: \"payment_method\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 10, name: \"proc_status\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 11, name: \"proc_status_message\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 12, name: \"host_response_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 13, name: \"profile_status_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 14, name: \"profile_status_message\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n","// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file event/v1/order_event.proto (package event.v1, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\n\n/**\n * The actual body of an order event message; the Order service may generate\n * multiple sub-types of order events.\n *\n * @generated from message event.v1.OrderEventPayload\n */\nexport const OrderEventPayload = proto3.makeMessageType(\n \"event.v1.OrderEventPayload\",\n () => [\n { no: 1, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"sub_type\", kind: \"enum\", T: proto3.getEnumType(OrderEventPayload_SubType) },\n { no: 3, name: \"status\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"origination\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"currency\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"amount\", kind: \"scalar\", T: 1 /* ScalarType.DOUBLE */ },\n { no: 7, name: \"is_resubmitted\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 8, name: \"auth_method\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 9, name: \"capture_method\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 10, name: \"is_payment_succeeded\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n);\n\n/**\n * @generated from enum event.v1.OrderEventPayload.SubType\n */\nexport const OrderEventPayload_SubType = proto3.makeEnum(\n \"event.v1.OrderEventPayload.SubType\",\n [\n {no: 0, name: \"SUB_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"SUB_TYPE_CREATED\", localName: \"CREATED\"},\n {no: 2, name: \"SUB_TYPE_SUBMITTED\", localName: \"SUBMITTED\"},\n {no: 3, name: \"SUB_TYPE_PAYMENT_DONE\", localName: \"PAYMENT_DONE\"},\n ],\n);\n\n","// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file event/v1/event.proto (package event.v1, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\nimport { Timestamp } from \"../../google/protobuf/timestamp_pb\";\nimport { Any } from \"../../google/protobuf/any_pb\";\nimport { BillingEventPayload } from \"./billing_event_pb\";\nimport { CheckoutTraceEventPayload } from \"./checkout_trace_event_pb\";\nimport { PaymentEventPayload } from \"./payment_event_pb\";\nimport { OrderEventPayload } from \"./order_event_pb\";\n\n/**\n * This message type models events happening in the Checkout system. Example\n * events include:\n * - user interactions initiated by shoppers in the browser UI.\n * - public API calls invoked by merchants.\n * - notifications created and sent to clients.\n * - many more.\n *\n * Events are created in backend services and streamed to data storage for\n * analytical processing.\n *\n * Event id and server_time shall be generated in the Event library; while type,\n * metadata, and payload should be provided by the event initiator or client.\n *\n * @generated from message event.v1.Event\n */\nexport const Event = proto3.makeMessageType(\n \"event.v1.Event\",\n () => [\n { no: 1, name: \"id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"server_time\", kind: \"message\", T: Timestamp },\n { no: 3, name: \"type\", kind: \"enum\", T: proto3.getEnumType(Event_Type) },\n { no: 4, name: \"metadata\", kind: \"message\", T: Event_Metadata },\n { no: 5, name: \"payload\", kind: \"message\", T: Any },\n { no: 6, name: \"typed_payload\", kind: \"message\", T: TypedPayload },\n ],\n);\n\n/**\n * Indicates the original source or producer of the an event.\n *\n * @generated from enum event.v1.Event.Client\n */\nexport const Event_Client = proto3.makeEnum(\n \"event.v1.Event.Client\",\n [\n {no: 0, name: \"CLIENT_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"CLIENT_API_GATEWAY\", localName: \"API_GATEWAY\"},\n {no: 2, name: \"CLIENT_FRONTEND\", localName: \"FRONTEND\"},\n {no: 3, name: \"CLIENT_PAYMENT\", localName: \"PAYMENT\"},\n {no: 4, name: \"CLIENT_ORDER\", localName: \"ORDER\"},\n {no: 1000, name: \"CLIENT_RDS_EXPORTER\", localName: \"RDS_EXPORTER\"},\n ],\n);\n\n/**\n * Event types differentiate kinds of event payloads consumed by different\n * downstream processors.\n * After adding a new event type, please also update:\n * com/jpmorgan/cib/ms/checkout/common/event/EventClient.java:TYPE_HANDLERS\n * and EVENT_PAYLOAD_TYPE_REGISTRY.\n *\n * @generated from enum event.v1.Event.Type\n */\nexport const Event_Type = proto3.makeEnum(\n \"event.v1.Event.Type\",\n [\n {no: 0, name: \"TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"TYPE_BILLING\", localName: \"BILLING\"},\n {no: 2, name: \"TYPE_CHECKOUT_TRACE\", localName: \"CHECKOUT_TRACE\"},\n {no: 3, name: \"TYPE_PAY_PAYMENT\", localName: \"PAY_PAYMENT\"},\n {no: 4, name: \"TYPE_ORDER\", localName: \"ORDER\"},\n {no: 1000, name: \"TYPE_RDS_EXPORTED\", localName: \"RDS_EXPORTED\"},\n ],\n);\n\n/**\n * Event's metadata holds basic information which applies to all event types.\n *\n * @generated from message event.v1.Event.Metadata\n */\nexport const Event_Metadata = proto3.makeMessageType(\n \"event.v1.Event.Metadata\",\n () => [\n { no: 1, name: \"client\", kind: \"enum\", T: proto3.getEnumType(Event_Client) },\n { no: 2, name: \"client_time\", kind: \"message\", T: Timestamp },\n { no: 3, name: \"experiment_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"user_agent\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"device_ip\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"locale\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"request_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 9, name: \"payment_gateway_mid\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 10, name: \"shopper_profile_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 11, name: \"order_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 12, name: \"correlation_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n {localName: \"Event_Metadata\"},\n);\n\n/**\n * @generated from message event.v1.TypedPayload\n */\nexport const TypedPayload = proto3.makeMessageType(\n \"event.v1.TypedPayload\",\n () => [\n { no: 1, name: \"billing\", kind: \"message\", T: BillingEventPayload, oneof: \"data\" },\n { no: 2, name: \"checkout_trace\", kind: \"message\", T: CheckoutTraceEventPayload, oneof: \"data\" },\n { no: 3, name: \"payment\", kind: \"message\", T: PaymentEventPayload, oneof: \"data\" },\n { no: 4, name: \"order\", kind: \"message\", T: OrderEventPayload, oneof: \"data\" },\n ],\n);\n\n/**\n * A list of events for writing and reading in batches.\n *\n * @generated from message event.v1.EventBatch\n */\nexport const EventBatch = proto3.makeMessageType(\n \"event.v1.EventBatch\",\n () => [\n { no: 1, name: \"events\", kind: \"message\", T: Event, repeated: true },\n ],\n);\n\n","// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file checkout/fe/v1/checkout_fe_api.proto (package checkout.fe.v1, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\nimport { Struct } from \"../../../google/protobuf/struct_pb\";\nimport { BillingAddressCollectionFields, CardNetwork, CheckoutOptions, EncryptedCard, EncryptedElectronicCheck, EncryptedPayByBank, EncryptedSepa, EncryptedStoredPaymentMethod, EncryptedWallet, Lpm, OrderOrigination, PaymentGatewayType, PaymentMethodSettings } from \"../../../common/v1/common_pb\";\nimport { IntegrationType, Layout, Mandate, OrdersOnHpp, PageHeader, PaymentButtonName, PaymentMethods, SecuritySettings, TaxIntegration } from \"../../../common/v1/merchant_settings_pb\";\nimport { BrowserInfo, ScaChallengeWindowSize } from \"../../../common/v1/three_domain_secure_pb\";\nimport { PayRequestErrorCode } from \"../../../common/v1/payment_errors_pb\";\nimport { Timestamp } from \"../../../google/protobuf/timestamp_pb\";\nimport { PaymentProfile, PayRequestResult } from \"../../../payment/v1/payment_pb\";\nimport { PaymentMethodTypeCode } from \"../../../common/v1/payment_pb\";\nimport { Cart } from \"../../../merchant/v1/cart_pb\";\nimport { ShopperProfile } from \"../../../common/v1/shopper_pb\";\nimport { Event } from \"../../../event/v1/event_pb\";\n\n/**\n * SessionType to indicate which product the jwt should be created for\n *\n * @generated from enum checkout.fe.v1.SessionType\n */\nexport const SessionType = proto3.makeEnum(\n \"checkout.fe.v1.SessionType\",\n [\n {no: 0, name: \"SESSION_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"SESSION_TYPE_CHECKOUT_SETTINGS\", localName: \"CHECKOUT_SETTINGS\"},\n {no: 2, name: \"SESSION_TYPE_MPP_PAYMENT_LINKS\", localName: \"MPP_PAYMENT_LINKS\"},\n ],\n);\n\n/**\n * @generated from message checkout.fe.v1.GetMerchantSettingsRequest\n */\nexport const GetMerchantSettingsRequest = proto3.makeMessageType(\n \"checkout.fe.v1.GetMerchantSettingsRequest\",\n [],\n);\n\n/**\n * @generated from message checkout.fe.v1.GetMerchantSettingsResponse\n */\nexport const GetMerchantSettingsResponse = proto3.makeMessageType(\n \"checkout.fe.v1.GetMerchantSettingsResponse\",\n () => [\n { no: 1, name: \"merchant_settings\", kind: \"message\", T: GetMerchantSettingsResponse_MerchantSettings },\n ],\n);\n\n/**\n * @generated from message checkout.fe.v1.GetMerchantSettingsResponse.MerchantSettings\n */\nexport const GetMerchantSettingsResponse_MerchantSettings = proto3.makeMessageType(\n \"checkout.fe.v1.GetMerchantSettingsResponse.MerchantSettings\",\n () => [\n { no: 1, name: \"custom_theme\", kind: \"message\", T: Struct },\n { no: 2, name: \"form_config\", kind: \"message\", T: Struct },\n { no: 3, name: \"encryption_key\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"encryption_key_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"payment_settings\", kind: \"message\", T: PaymentMethodSettings, repeated: true },\n { no: 6, name: \"safetech_merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"billing_address_collection_fields\", kind: \"enum\", T: proto3.getEnumType(BillingAddressCollectionFields) },\n { no: 8, name: \"payment_methods\", kind: \"message\", T: PaymentMethods },\n { no: 10, name: \"supported_ship_to_country_region\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 11, name: \"merchant_display_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 12, name: \"integration_type\", kind: \"enum\", T: proto3.getEnumType(IntegrationType) },\n { no: 13, name: \"layout\", kind: \"enum\", T: proto3.getEnumType(Layout) },\n { no: 14, name: \"orders_on_hpp\", kind: \"message\", T: OrdersOnHpp },\n { no: 15, name: \"address_autocomplete_enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 17, name: \"payment_button_name\", kind: \"enum\", T: proto3.getEnumType(PaymentButtonName) },\n { no: 18, name: \"order_mandates\", kind: \"message\", T: Mandate, repeated: true },\n { no: 19, name: \"security_settings\", kind: \"message\", T: SecuritySettings },\n { no: 20, name: \"page_header\", kind: \"message\", T: PageHeader },\n { no: 21, name: \"supported_payment_gateway_type\", kind: \"enum\", T: proto3.getEnumType(PaymentGatewayType) },\n { no: 22, name: \"brand_experience\", kind: \"message\", T: Struct },\n { no: 23, name: \"country\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 24, name: \"billing_address_country_restriction\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 25, name: \"tax_integration\", kind: \"message\", T: TaxIntegration },\n { no: 26, name: \"surcharge_fee_enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */, opt: true },\n ],\n {localName: \"GetMerchantSettingsResponse_MerchantSettings\"},\n);\n\n/**\n * @generated from message checkout.fe.v1.GetEncryptionKeyRequest\n */\nexport const GetEncryptionKeyRequest = proto3.makeMessageType(\n \"checkout.fe.v1.GetEncryptionKeyRequest\",\n [],\n);\n\n/**\n * @generated from message checkout.fe.v1.GetEncryptionKeyResponse\n */\nexport const GetEncryptionKeyResponse = proto3.makeMessageType(\n \"checkout.fe.v1.GetEncryptionKeyResponse\",\n () => [\n { no: 1, name: \"encryption_key\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"encryption_key_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message checkout.fe.v1.GetHostedFieldsSettingsRequest\n */\nexport const GetHostedFieldsSettingsRequest = proto3.makeMessageType(\n \"checkout.fe.v1.GetHostedFieldsSettingsRequest\",\n [],\n);\n\n/**\n * @generated from message checkout.fe.v1.GetHostedFieldsSettingsResponse\n */\nexport const GetHostedFieldsSettingsResponse = proto3.makeMessageType(\n \"checkout.fe.v1.GetHostedFieldsSettingsResponse\",\n () => [\n { no: 1, name: \"safetech_merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * PayRequest defines a request for Pay endpoint.\n *\n * @generated from message checkout.fe.v1.PayRequest\n */\nexport const PayRequest = proto3.makeMessageType(\n \"checkout.fe.v1.PayRequest\",\n () => [\n { no: 1, name: \"payment_method\", kind: \"message\", T: PaymentMethod },\n { no: 2, name: \"accepted_mandates\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 3, name: \"browser_info\", kind: \"message\", T: BrowserInfo },\n { no: 4, name: \"sca_challenge_window_size\", kind: \"enum\", T: proto3.getEnumType(ScaChallengeWindowSize) },\n { no: 5, name: \"billing_address_from_intent_billing\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 6, name: \"consent_to_store_for_future_payments\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"save_payment_method_to_profile\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 8, name: \"make_default_payment_method\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 9, name: \"order_digest\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 10, name: \"lpm_payment_cancelled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 11, name: \"device_fingerprint_session_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, opt: true },\n ],\n);\n\n/**\n * PayResponse defines a response for Pay request.\n *\n * @generated from message checkout.fe.v1.PayResponse\n */\nexport const PayResponse = proto3.makeMessageType(\n \"checkout.fe.v1.PayResponse\",\n () => [\n { no: 1, name: \"status\", kind: \"enum\", T: proto3.getEnumType(PayResponse_Status) },\n { no: 3, name: \"debug_info\", kind: \"message\", T: PayResponse_DebugInfo },\n { no: 4, name: \"pay_request_error_code\", kind: \"enum\", T: proto3.getEnumType(PayRequestErrorCode) },\n { no: 5, name: \"sca_orchestration_url\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"lpm_orchestration_url\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 7, name: \"masked_pan\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"card_type_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 9, name: \"card_expiration_month\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 10, name: \"card_expiration_year\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 11, name: \"account_holder_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 12, name: \"approval_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 13, name: \"payment_gateway_transaction_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 14, name: \"pbb_consent_url\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 15, name: \"nonce_token\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 16, name: \"nonce_token_expiration_timestamp\", kind: \"message\", T: Timestamp },\n { no: 17, name: \"payment_gateway_transaction_timestamp\", kind: \"message\", T: Timestamp },\n { no: 18, name: \"total_transaction_amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 19, name: \"partial_authorization\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n);\n\n/**\n * Defines possible outcomes of Pay request.\n *\n * @generated from enum checkout.fe.v1.PayResponse.Status\n */\nexport const PayResponse_Status = proto3.makeEnum(\n \"checkout.fe.v1.PayResponse.Status\",\n [\n {no: 0, name: \"STATUS_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"STATUS_SUCCESS\", localName: \"SUCCESS\"},\n {no: 2, name: \"STATUS_TRANSIENT_FAILURE\", localName: \"TRANSIENT_FAILURE\"},\n {no: 3, name: \"STATUS_FAILURE\", localName: \"FAILURE\"},\n {no: 4, name: \"STATUS_PENDING\", localName: \"PENDING\"},\n ],\n);\n\n/**\n * @generated from message checkout.fe.v1.PayResponse.DebugInfo\n */\nexport const PayResponse_DebugInfo = proto3.makeMessageType(\n \"checkout.fe.v1.PayResponse.DebugInfo\",\n () => [\n { no: 1, name: \"pay_result\", kind: \"message\", T: PayRequestResult },\n ],\n {localName: \"PayResponse_DebugInfo\"},\n);\n\n/**\n * Payment method.\n *\n * @generated from message checkout.fe.v1.PaymentMethod\n */\nexport const PaymentMethod = proto3.makeMessageType(\n \"checkout.fe.v1.PaymentMethod\",\n () => [\n { no: 1, name: \"type\", kind: \"enum\", T: proto3.getEnumType(PaymentMethod_Type) },\n { no: 2, name: \"card\", kind: \"message\", T: EncryptedCard },\n { no: 3, name: \"electronic_check\", kind: \"message\", T: EncryptedElectronicCheck },\n { no: 4, name: \"wallet\", kind: \"message\", T: EncryptedWallet },\n { no: 5, name: \"stored_payment_method\", kind: \"message\", T: EncryptedStoredPaymentMethod },\n { no: 7, name: \"sepa\", kind: \"message\", T: EncryptedSepa },\n { no: 8, name: \"lpm\", kind: \"message\", T: Lpm },\n { no: 9, name: \"pay_by_bank\", kind: \"message\", T: EncryptedPayByBank },\n ],\n);\n\n/**\n * Defines supported payment method types.\n *\n * @generated from enum checkout.fe.v1.PaymentMethod.Type\n */\nexport const PaymentMethod_Type = proto3.makeEnum(\n \"checkout.fe.v1.PaymentMethod.Type\",\n [\n {no: 0, name: \"TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"TYPE_CARD\", localName: \"CARD\"},\n {no: 2, name: \"TYPE_ELECTRONIC_CHECK\", localName: \"ELECTRONIC_CHECK\"},\n {no: 3, name: \"TYPE_WALLET\", localName: \"WALLET\"},\n {no: 4, name: \"TYPE_STORED_PAYMENT_METHOD\", localName: \"STORED_PAYMENT_METHOD\"},\n {no: 5, name: \"TYPE_SEPA\", localName: \"SEPA\"},\n {no: 6, name: \"TYPE_LPM\", localName: \"LPM\"},\n {no: 7, name: \"TYPE_PAY_BY_BANK\", localName: \"PAY_BY_BANK\"},\n {no: 8, name: \"TYPE_GIFT_CARD\", localName: \"GIFT_CARD\"},\n ],\n);\n\n/**\n * Defines the request for an Apple Pay Payment session request.\n *\n * @generated from message checkout.fe.v1.RequestApplePayPaymentSessionRequest\n */\nexport const RequestApplePayPaymentSessionRequest = proto3.makeMessageType(\n \"checkout.fe.v1.RequestApplePayPaymentSessionRequest\",\n () => [\n { no: 1, name: \"validation_url\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"merchant_domain\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * Defines the response for an Apple Pay Payment session request.\n *\n * @generated from message checkout.fe.v1.RequestApplePayPaymentSessionResponse\n */\nexport const RequestApplePayPaymentSessionResponse = proto3.makeMessageType(\n \"checkout.fe.v1.RequestApplePayPaymentSessionResponse\",\n () => [\n { no: 1, name: \"payment_session\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * GetCheckoutSessionRequest defines a request for the GetCheckoutSession endpoint.\n *\n * @generated from message checkout.fe.v1.GetCheckoutSessionRequest\n */\nexport const GetCheckoutSessionRequest = proto3.makeMessageType(\n \"checkout.fe.v1.GetCheckoutSessionRequest\",\n () => [\n { no: 1, name: \"method_of_payment\", kind: \"enum\", T: proto3.getEnumType(PaymentMethodTypeCode), opt: true },\n ],\n);\n\n/**\n * GetCheckoutSessionResponse defines a response for the GetCheckoutSession endpoint.\n *\n * @generated from message checkout.fe.v1.GetCheckoutSessionResponse\n */\nexport const GetCheckoutSessionResponse = proto3.makeMessageType(\n \"checkout.fe.v1.GetCheckoutSessionResponse\",\n () => [\n { no: 3, name: \"checkout_options\", kind: \"message\", T: CheckoutOptions },\n { no: 1, name: \"cart\", kind: \"message\", T: Cart },\n { no: 2, name: \"shopper_profile\", kind: \"message\", T: ShopperProfile },\n { no: 6, name: \"payment_profile\", kind: \"message\", T: PaymentProfile },\n { no: 5, name: \"debug_info\", kind: \"message\", T: GetCheckoutSessionResponse_DebugInfo },\n { no: 7, name: \"order_origination\", kind: \"enum\", T: proto3.getEnumType(OrderOrigination) },\n { no: 8, name: \"reference\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 9, name: \"currency_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 10, name: \"shopper_billing_address_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 11, name: \"is_paid\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 13, name: \"surcharge_amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */, opt: true },\n { no: 12, name: \"total_transaction_amount_with_surcharge\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */, opt: true },\n ],\n);\n\n/**\n * @generated from message checkout.fe.v1.GetCheckoutSessionResponse.DebugInfo\n */\nexport const GetCheckoutSessionResponse_DebugInfo = proto3.makeMessageType(\n \"checkout.fe.v1.GetCheckoutSessionResponse.DebugInfo\",\n () => [\n { no: 1, name: \"pay_result\", kind: \"message\", T: PayRequestResult },\n ],\n {localName: \"GetCheckoutSessionResponse_DebugInfo\"},\n);\n\n/**\n * @generated from message checkout.fe.v1.CreateSettingsSessionRequest\n */\nexport const CreateSettingsSessionRequest = proto3.makeMessageType(\n \"checkout.fe.v1.CreateSettingsSessionRequest\",\n () => [\n { no: 1, name: \"subject_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"mids\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 3, name: \"session_type\", kind: \"enum\", T: proto3.getEnumType(SessionType) },\n ],\n);\n\n/**\n * @generated from message checkout.fe.v1.CreateSettingsSessionResponse\n */\nexport const CreateSettingsSessionResponse = proto3.makeMessageType(\n \"checkout.fe.v1.CreateSettingsSessionResponse\",\n () => [\n { no: 1, name: \"settings_session_jwt\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message checkout.fe.v1.SendEventsRequest\n */\nexport const SendEventsRequest = proto3.makeMessageType(\n \"checkout.fe.v1.SendEventsRequest\",\n () => [\n { no: 1, name: \"events\", kind: \"message\", T: Event, repeated: true },\n ],\n);\n\n/**\n * @generated from message checkout.fe.v1.SendEventsResponse\n */\nexport const SendEventsResponse = proto3.makeMessageType(\n \"checkout.fe.v1.SendEventsResponse\",\n [],\n);\n\n/**\n * @generated from message checkout.fe.v1.UpdateCartRequest\n */\nexport const UpdateCartRequest = proto3.makeMessageType(\n \"checkout.fe.v1.UpdateCartRequest\",\n () => [\n { no: 1, name: \"cart\", kind: \"message\", T: Cart },\n { no: 2, name: \"currency_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message checkout.fe.v1.UpdateCartResponse\n */\nexport const UpdateCartResponse = proto3.makeMessageType(\n \"checkout.fe.v1.UpdateCartResponse\",\n () => [\n { no: 1, name: \"order_digest\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * DeletePaymentProfilePaymentMethodRequest defines a request to delete the payment method of the PaymentProfile.\n *\n * @generated from message checkout.fe.v1.DeletePaymentProfilePaymentMethodRequest\n */\nexport const DeletePaymentProfilePaymentMethodRequest = proto3.makeMessageType(\n \"checkout.fe.v1.DeletePaymentProfilePaymentMethodRequest\",\n () => [\n { no: 1, name: \"payment_method_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message checkout.fe.v1.DeletePaymentProfilePaymentMethodResponse\n */\nexport const DeletePaymentProfilePaymentMethodResponse = proto3.makeMessageType(\n \"checkout.fe.v1.DeletePaymentProfilePaymentMethodResponse\",\n () => [\n { no: 1, name: \"payment_profile\", kind: \"message\", T: PaymentProfile },\n ],\n);\n\n/**\n * @generated from message checkout.fe.v1.PaymentMethodInfo\n */\nexport const PaymentMethodInfo = proto3.makeMessageType(\n \"checkout.fe.v1.PaymentMethodInfo\",\n () => [\n { no: 1, name: \"payment_method\", kind: \"message\", T: PaymentMethod },\n { no: 2, name: \"is_nonce_generation\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n ],\n);\n\n/**\n * @generated from message checkout.fe.v1.GetBinDataRequest\n */\nexport const GetBinDataRequest = proto3.makeMessageType(\n \"checkout.fe.v1.GetBinDataRequest\",\n () => [\n { no: 1, name: \"encrypted_pan\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message checkout.fe.v1.GetBinDataResponse\n */\nexport const GetBinDataResponse = proto3.makeMessageType(\n \"checkout.fe.v1.GetBinDataResponse\",\n () => [\n { no: 1, name: \"is_card_pinless_debit\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"card_networks\", kind: \"enum\", T: proto3.getEnumType(CardNetwork), repeated: true },\n ],\n);\n\n/**\n * @generated from message checkout.fe.v1.UpdateDefaultPaymentProfilePaymentMethodRequest\n */\nexport const UpdateDefaultPaymentProfilePaymentMethodRequest = proto3.makeMessageType(\n \"checkout.fe.v1.UpdateDefaultPaymentProfilePaymentMethodRequest\",\n () => [\n { no: 1, name: \"payment_method_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message checkout.fe.v1.UpdateDefaultPaymentProfilePaymentMethodResponse\n */\nexport const UpdateDefaultPaymentProfilePaymentMethodResponse = proto3.makeMessageType(\n \"checkout.fe.v1.UpdateDefaultPaymentProfilePaymentMethodResponse\",\n () => [\n { no: 1, name: \"payment_profile\", kind: \"message\", T: PaymentProfile },\n ],\n);\n\n","// @generated by protoc-gen-connect-es v1.1.2 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file checkout/fe/v1/checkout_fe_api.proto (package checkout.fe.v1, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { CreateSettingsSessionRequest, CreateSettingsSessionResponse, DeletePaymentProfilePaymentMethodRequest, DeletePaymentProfilePaymentMethodResponse, GetBinDataRequest, GetBinDataResponse, GetCheckoutSessionRequest, GetCheckoutSessionResponse, GetEncryptionKeyRequest, GetEncryptionKeyResponse, GetHostedFieldsSettingsRequest, GetHostedFieldsSettingsResponse, GetMerchantSettingsRequest, GetMerchantSettingsResponse, PayRequest, PayResponse, RequestApplePayPaymentSessionRequest, RequestApplePayPaymentSessionResponse, SendEventsRequest, SendEventsResponse, UpdateCartRequest, UpdateCartResponse, UpdateDefaultPaymentProfilePaymentMethodRequest, UpdateDefaultPaymentProfilePaymentMethodResponse } from \"./checkout_fe_api_pb\";\nimport { MethodKind } from \"@bufbuild/protobuf\";\n\n/**\n * @generated from service checkout.fe.v1.CheckoutFrontendV1Service\n */\nexport const CheckoutFrontendV1Service = {\n typeName: \"checkout.fe.v1.CheckoutFrontendV1Service\",\n methods: {\n /**\n * @generated from rpc checkout.fe.v1.CheckoutFrontendV1Service.GetMerchantSettings\n */\n getMerchantSettings: {\n name: \"GetMerchantSettings\",\n I: GetMerchantSettingsRequest,\n O: GetMerchantSettingsResponse,\n kind: MethodKind.Unary,\n },\n /**\n * @generated from rpc checkout.fe.v1.CheckoutFrontendV1Service.GetEncryptionKey\n */\n getEncryptionKey: {\n name: \"GetEncryptionKey\",\n I: GetEncryptionKeyRequest,\n O: GetEncryptionKeyResponse,\n kind: MethodKind.Unary,\n },\n /**\n * @generated from rpc checkout.fe.v1.CheckoutFrontendV1Service.GetHostedFieldsSettings\n */\n getHostedFieldsSettings: {\n name: \"GetHostedFieldsSettings\",\n I: GetHostedFieldsSettingsRequest,\n O: GetHostedFieldsSettingsResponse,\n kind: MethodKind.Unary,\n },\n /**\n * TODO: find better name, i.e. \"CompleteCheckout(Intent)?\" / \"FinalizeCheckout(Intent)?\"\n *\n * @generated from rpc checkout.fe.v1.CheckoutFrontendV1Service.Pay\n */\n pay: {\n name: \"Pay\",\n I: PayRequest,\n O: PayResponse,\n kind: MethodKind.Unary,\n },\n /**\n * Request an Apple Pay Payment Session.\n *\n * @generated from rpc checkout.fe.v1.CheckoutFrontendV1Service.RequestApplePayPaymentSession\n */\n requestApplePayPaymentSession: {\n name: \"RequestApplePayPaymentSession\",\n I: RequestApplePayPaymentSessionRequest,\n O: RequestApplePayPaymentSessionResponse,\n kind: MethodKind.Unary,\n },\n /**\n * Get checkout session info\n *\n * @generated from rpc checkout.fe.v1.CheckoutFrontendV1Service.GetCheckoutSession\n */\n getCheckoutSession: {\n name: \"GetCheckoutSession\",\n I: GetCheckoutSessionRequest,\n O: GetCheckoutSessionResponse,\n kind: MethodKind.Unary,\n },\n /**\n * TODO: To be removed once UI integration with backend completes - MPP\n *\n * @generated from rpc checkout.fe.v1.CheckoutFrontendV1Service.CreateSettingsSession\n */\n createSettingsSession: {\n name: \"CreateSettingsSession\",\n I: CreateSettingsSessionRequest,\n O: CreateSettingsSessionResponse,\n kind: MethodKind.Unary,\n },\n /**\n * Sends frontend UI events such as user interactions to the backend service.\n *\n * @generated from rpc checkout.fe.v1.CheckoutFrontendV1Service.SendEvents\n */\n sendEvents: {\n name: \"SendEvents\",\n I: SendEventsRequest,\n O: SendEventsResponse,\n kind: MethodKind.Unary,\n },\n /**\n * @generated from rpc checkout.fe.v1.CheckoutFrontendV1Service.UpdateCart\n */\n updateCart: {\n name: \"UpdateCart\",\n I: UpdateCartRequest,\n O: UpdateCartResponse,\n kind: MethodKind.Unary,\n },\n /**\n * Deletes the payment method of the PaymentProfile\n *\n * @generated from rpc checkout.fe.v1.CheckoutFrontendV1Service.DeletePaymentProfilePaymentMethod\n */\n deletePaymentProfilePaymentMethod: {\n name: \"DeletePaymentProfilePaymentMethod\",\n I: DeletePaymentProfilePaymentMethodRequest,\n O: DeletePaymentProfilePaymentMethodResponse,\n kind: MethodKind.Unary,\n },\n /**\n * Returns the bin details for the encrypted pan - CB entitlement & debit enabled\n *\n * @generated from rpc checkout.fe.v1.CheckoutFrontendV1Service.GetBinData\n */\n getBinData: {\n name: \"GetBinData\",\n I: GetBinDataRequest,\n O: GetBinDataResponse,\n kind: MethodKind.Unary,\n },\n /**\n * Updates the default payment method of the PaymentProfile\n *\n * @generated from rpc checkout.fe.v1.CheckoutFrontendV1Service.UpdateDefaultPaymentProfilePaymentMethod\n */\n updateDefaultPaymentProfilePaymentMethod: {\n name: \"UpdateDefaultPaymentProfilePaymentMethod\",\n I: UpdateDefaultPaymentProfilePaymentMethodRequest,\n O: UpdateDefaultPaymentProfilePaymentMethodResponse,\n kind: MethodKind.Unary,\n },\n }\n};\n\n","// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file headless/v1/link.proto (package headless.v1, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\nimport { Money } from \"../../common/v1/common_pb\";\nimport { Timestamp } from \"../../google/protobuf/timestamp_pb\";\nimport { Shopper } from \"../../common/v1/shopper_pb\";\nimport { Cart } from \"../../merchant/v1/cart_pb\";\n\n/**\n * Specifies the payment type for link\n *\n * @generated from enum headless.v1.PaymentType\n */\nexport const PaymentType = proto3.makeEnum(\n \"headless.v1.PaymentType\",\n [\n {no: 0, name: \"PAYMENT_TYPE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"PAYMENT_TYPE_SELL\", localName: \"SELL\"},\n {no: 2, name: \"PAYMENT_TYPE_DONATION\", localName: \"DONATION\"},\n ],\n);\n\n/**\n * Specifies how the link is created.\n *\n * @generated from enum headless.v1.LinkSource\n */\nexport const LinkSource = proto3.makeEnum(\n \"headless.v1.LinkSource\",\n [\n {no: 0, name: \"LINK_SOURCE_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"LINK_SOURCE_UNKNOWN\", localName: \"UNKNOWN\"},\n {no: 2, name: \"LINK_SOURCE_MPP\", localName: \"MPP\"},\n {no: 3, name: \"LINK_SOURCE_API\", localName: \"API\"},\n ],\n);\n\n/**\n * Status of payment link\n *\n * @generated from enum headless.v1.LinkStatus\n */\nexport const LinkStatus = proto3.makeEnum(\n \"headless.v1.LinkStatus\",\n [\n {no: 0, name: \"LINK_STATUS_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"LINK_STATUS_ACTIVE\", localName: \"ACTIVE\"},\n {no: 3, name: \"LINK_STATUS_INACTIVE\", localName: \"INACTIVE\"},\n {no: 4, name: \"LINK_STATUS_EXPIRED\", localName: \"EXPIRED\"},\n {no: 5, name: \"LINK_STATUS_PAID\", localName: \"PAID\"},\n {no: 6, name: \"LINK_STATUS_PENDING\", localName: \"PENDING\"},\n ],\n);\n\n/**\n * Link representation\n * Next Id : 21\n *\n * @generated from message headless.v1.Link\n */\nexport const Link = proto3.makeMessageType(\n \"headless.v1.Link\",\n () => [\n { no: 1, name: \"external_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"active\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 5, name: \"reusable\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 6, name: \"payment_type\", kind: \"enum\", T: proto3.getEnumType(PaymentType) },\n { no: 7, name: \"paid\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 8, name: \"total\", kind: \"message\", T: Money },\n { no: 9, name: \"template_order_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 10, name: \"created_at\", kind: \"message\", T: Timestamp },\n { no: 11, name: \"reference\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 12, name: \"description\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 13, name: \"payment_link_url\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 14, name: \"expires_on\", kind: \"message\", T: Timestamp },\n { no: 15, name: \"source\", kind: \"enum\", T: proto3.getEnumType(LinkSource) },\n { no: 16, name: \"customer_profile_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 17, name: \"shopper\", kind: \"message\", T: Shopper },\n { no: 18, name: \"status\", kind: \"enum\", T: proto3.getEnumType(LinkStatus) },\n { no: 19, name: \"segment_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 20, name: \"cart\", kind: \"message\", T: Cart },\n { no: 21, name: \"purchase_order_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n","// Protocol Buffers - Google's data interchange format\n// Copyright 2008 Google Inc. All rights reserved.\n// https://developers.google.com/protocol-buffers/\n//\n// Redistribution and use in source and binary forms, with or without\n// modification, are permitted provided that the following conditions are\n// met:\n//\n// * Redistributions of source code must retain the above copyright\n// notice, this list of conditions and the following disclaimer.\n// * Redistributions in binary form must reproduce the above\n// copyright notice, this list of conditions and the following disclaimer\n// in the documentation and/or other materials provided with the\n// distribution.\n// * Neither the name of Google Inc. nor the names of its\n// contributors may be used to endorse or promote products derived from\n// this software without specific prior written permission.\n//\n// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n// \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n\n// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file google/protobuf/field_mask.proto (package google.protobuf, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\n\n/**\n * `FieldMask` represents a set of symbolic field paths, for example:\n *\n * paths: \"f.a\"\n * paths: \"f.b.d\"\n *\n * Here `f` represents a field in some root message, `a` and `b`\n * fields in the message found in `f`, and `d` a field found in the\n * message in `f.b`.\n *\n * Field masks are used to specify a subset of fields that should be\n * returned by a get operation or modified by an update operation.\n * Field masks also have a custom JSON encoding (see below).\n *\n * # Field Masks in Projections\n *\n * When used in the context of a projection, a response message or\n * sub-message is filtered by the API to only contain those fields as\n * specified in the mask. For example, if the mask in the previous\n * example is applied to a response message as follows:\n *\n * f {\n * a : 22\n * b {\n * d : 1\n * x : 2\n * }\n * y : 13\n * }\n * z: 8\n *\n * The result will not contain specific values for fields x,y and z\n * (their value will be set to the default, and omitted in proto text\n * output):\n *\n *\n * f {\n * a : 22\n * b {\n * d : 1\n * }\n * }\n *\n * A repeated field is not allowed except at the last position of a\n * paths string.\n *\n * If a FieldMask object is not present in a get operation, the\n * operation applies to all fields (as if a FieldMask of all fields\n * had been specified).\n *\n * Note that a field mask does not necessarily apply to the\n * top-level response message. In case of a REST get operation, the\n * field mask applies directly to the response, but in case of a REST\n * list operation, the mask instead applies to each individual message\n * in the returned resource list. In case of a REST custom method,\n * other definitions may be used. Where the mask applies will be\n * clearly documented together with its declaration in the API. In\n * any case, the effect on the returned resource/resources is required\n * behavior for APIs.\n *\n * # Field Masks in Update Operations\n *\n * A field mask in update operations specifies which fields of the\n * targeted resource are going to be updated. The API is required\n * to only change the values of the fields as specified in the mask\n * and leave the others untouched. If a resource is passed in to\n * describe the updated values, the API ignores the values of all\n * fields not covered by the mask.\n *\n * If a repeated field is specified for an update operation, new values will\n * be appended to the existing repeated field in the target resource. Note that\n * a repeated field is only allowed in the last position of a `paths` string.\n *\n * If a sub-message is specified in the last position of the field mask for an\n * update operation, then new value will be merged into the existing sub-message\n * in the target resource.\n *\n * For example, given the target message:\n *\n * f {\n * b {\n * d: 1\n * x: 2\n * }\n * c: [1]\n * }\n *\n * And an update message:\n *\n * f {\n * b {\n * d: 10\n * }\n * c: [2]\n * }\n *\n * then if the field mask is:\n *\n * paths: [\"f.b\", \"f.c\"]\n *\n * then the result will be:\n *\n * f {\n * b {\n * d: 10\n * x: 2\n * }\n * c: [1, 2]\n * }\n *\n * An implementation may provide options to override this default behavior for\n * repeated and message fields.\n *\n * In order to reset a field's value to the default, the field must\n * be in the mask and set to the default value in the provided resource.\n * Hence, in order to reset all fields of a resource, provide a default\n * instance of the resource and set all fields in the mask, or do\n * not provide a mask as described below.\n *\n * If a field mask is not present on update, the operation applies to\n * all fields (as if a field mask of all fields has been specified).\n * Note that in the presence of schema evolution, this may mean that\n * fields the client does not know and has therefore not filled into\n * the request will be reset to their default. If this is unwanted\n * behavior, a specific service may require a client to always specify\n * a field mask, producing an error if not.\n *\n * As with get operations, the location of the resource which\n * describes the updated values in the request message depends on the\n * operation kind. In any case, the effect of the field mask is\n * required to be honored by the API.\n *\n * ## Considerations for HTTP REST\n *\n * The HTTP kind of an update operation which uses a field mask must\n * be set to PATCH instead of PUT in order to satisfy HTTP semantics\n * (PUT must only be used for full updates).\n *\n * # JSON Encoding of Field Masks\n *\n * In JSON, a field mask is encoded as a single string where paths are\n * separated by a comma. Fields name in each path are converted\n * to/from lower-camel naming conventions.\n *\n * As an example, consider the following message declarations:\n *\n * message Profile {\n * User user = 1;\n * Photo photo = 2;\n * }\n * message User {\n * string display_name = 1;\n * string address = 2;\n * }\n *\n * In proto a field mask for `Profile` may look as such:\n *\n * mask {\n * paths: \"user.display_name\"\n * paths: \"photo\"\n * }\n *\n * In JSON, the same mask is represented as below:\n *\n * {\n * mask: \"user.displayName,photo\"\n * }\n *\n * # Field Masks and Oneof Fields\n *\n * Field masks treat fields in oneofs just as regular fields. Consider the\n * following message:\n *\n * message SampleMessage {\n * oneof test_oneof {\n * string name = 4;\n * SubMessage sub_message = 9;\n * }\n * }\n *\n * The field mask can be:\n *\n * mask {\n * paths: \"name\"\n * }\n *\n * Or:\n *\n * mask {\n * paths: \"sub_message\"\n * }\n *\n * Note that oneof type names (\"test_oneof\" in this case) cannot be used in\n * paths.\n *\n * ## Field Mask Verification\n *\n * The implementation of any API method which has a FieldMask type field in the\n * request should verify the included field paths, and return an\n * `INVALID_ARGUMENT` error if any path is unmappable.\n *\n * @generated from message google.protobuf.FieldMask\n */\nexport const FieldMask = proto3.makeMessageType(\n \"google.protobuf.FieldMask\",\n () => [\n { no: 1, name: \"paths\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n ],\n);\n\nFieldMask.prototype.toJson = function toJson(options) {\n // Converts snake_case to protoCamelCase according to the convention\n // used by protoc to convert a field name to a JSON name.\n function protoCamelCase(snakeCase) {\n let capNext = false;\n const b = [];\n for (let i = 0; i < snakeCase.length; i++) {\n let c = snakeCase.charAt(i);\n switch (c) {\n case '_':\n capNext = true;\n break;\n case '0':\n case '1':\n case '2':\n case '3':\n case '4':\n case '5':\n case '6':\n case '7':\n case '8':\n case '9':\n b.push(c);\n capNext = false;\n break;\n default:\n if (capNext) {\n capNext = false;\n c = c.toUpperCase();\n }\n b.push(c);\n break;\n }\n }\n return b.join('');\n }\n return this.paths.map(p => {\n if (p.match(/_[0-9]?_/g) || p.match(/[A-Z]/g)) {\n throw new Error(\"cannot encode google.protobuf.FieldMask to JSON: lowerCamelCase of path name \\\"\" + p + \"\\\" is irreversible\");\n }\n return protoCamelCase(p);\n }).join(\",\");\n};\n\nFieldMask.prototype.fromJson = function fromJson(json, options) {\n if (typeof json !== \"string\") {\n throw new Error(\"cannot decode google.protobuf.FieldMask from JSON: \" + proto3.json.debug(json));\n }\n if (json === \"\") {\n return this;\n }\n function camelToSnake (str) {\n if (str.includes(\"_\")) {\n throw new Error(\"cannot decode google.protobuf.FieldMask from JSON: path names must be lowerCamelCase\");\n }\n const sc = str.replace(/[A-Z]/g, letter => \"_\" + letter.toLowerCase());\n return (sc[0] === \"_\") ? sc.substring(1) : sc;\n }\n this.paths = json.split(\",\").map(camelToSnake);\n return this;\n};\n\n","// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file checkout/mpp/v1/checkout_mpp_api.proto (package checkout.mpp.v1, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\nimport { Value } from \"../../../google/protobuf/struct_pb\";\nimport { AccessPrivilege, ExpiryInfo, MerchantInfo, UserType } from \"../../../common/v1/common_pb\";\nimport { Cart } from \"../../../merchant/v1/cart_pb\";\nimport { Shopper } from \"../../../common/v1/shopper_pb\";\nimport { Link, LinkStatus } from \"../../../headless/v1/link_pb\";\nimport { CreateMerchantSettingsPayload, CreateSegmentPayload, MerchantSettings, ReferenceData, Segment } from \"../../../common/v1/merchant_settings_pb\";\nimport { FieldMask } from \"../../../google/protobuf/field_mask_pb\";\n\n/**\n * @generated from message checkout.mpp.v1.AuthorizeRequest\n */\nexport const AuthorizeRequest = proto3.makeMessageType(\n \"checkout.mpp.v1.AuthorizeRequest\",\n () => [\n { no: 1, name: \"extensions\", kind: \"map\", K: 9 /* ScalarType.STRING */, V: {kind: \"message\", T: Value} },\n ],\n);\n\n/**\n * @generated from message checkout.mpp.v1.AuthorizeResponse\n */\nexport const AuthorizeResponse = proto3.makeMessageType(\n \"checkout.mpp.v1.AuthorizeResponse\",\n () => [\n { no: 1, name: \"session_token\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"access_privilege\", kind: \"enum\", T: proto3.getEnumType(AccessPrivilege) },\n { no: 3, name: \"merchants_info\", kind: \"message\", T: MerchantInfo, repeated: true },\n { no: 4, name: \"user_type\", kind: \"enum\", T: proto3.getEnumType(UserType) },\n { no: 5, name: \"profile_owner_eci\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message checkout.mpp.v1.CreateOrUpdatePaymentLinkRequest\n */\nexport const CreateOrUpdatePaymentLinkRequest = proto3.makeMessageType(\n \"checkout.mpp.v1.CreateOrUpdatePaymentLinkRequest\",\n () => [\n { no: 1, name: \"link_external_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"reference\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"cart\", kind: \"message\", T: Cart },\n { no: 3, name: \"name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"description\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"active\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 7, name: \"currency_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"expiry_info\", kind: \"message\", T: ExpiryInfo },\n { no: 9, name: \"shopper\", kind: \"message\", T: Shopper },\n { no: 10, name: \"status\", kind: \"enum\", T: proto3.getEnumType(LinkStatus) },\n { no: 11, name: \"segment_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 12, name: \"three_ds_enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 13, name: \"purchase_order_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message checkout.mpp.v1.CreateOrUpdatePaymentLinkResponse\n */\nexport const CreateOrUpdatePaymentLinkResponse = proto3.makeMessageType(\n \"checkout.mpp.v1.CreateOrUpdatePaymentLinkResponse\",\n () => [\n { no: 1, name: \"payment_link_url\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"link\", kind: \"message\", T: Link },\n ],\n);\n\n/**\n * @generated from message checkout.mpp.v1.ListPaymentLinksRequest\n */\nexport const ListPaymentLinksRequest = proto3.makeMessageType(\n \"checkout.mpp.v1.ListPaymentLinksRequest\",\n () => [\n { no: 1, name: \"page_size\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 2, name: \"page_token\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"filter\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"order_by\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message checkout.mpp.v1.ListPaymentLinksResponse\n */\nexport const ListPaymentLinksResponse = proto3.makeMessageType(\n \"checkout.mpp.v1.ListPaymentLinksResponse\",\n () => [\n { no: 1, name: \"links\", kind: \"message\", T: Link, repeated: true },\n { no: 2, name: \"next_page_token\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message checkout.mpp.v1.CreateAndPromoteMerchantSettingsRequest\n */\nexport const CreateAndPromoteMerchantSettingsRequest = proto3.makeMessageType(\n \"checkout.mpp.v1.CreateAndPromoteMerchantSettingsRequest\",\n () => [\n { no: 1, name: \"merchant_settings\", kind: \"message\", T: CreateMerchantSettingsPayload },\n ],\n);\n\n/**\n * @generated from message checkout.mpp.v1.CreateSegmentRequest\n */\nexport const CreateSegmentRequest = proto3.makeMessageType(\n \"checkout.mpp.v1.CreateSegmentRequest\",\n () => [\n { no: 1, name: \"segment\", kind: \"message\", T: CreateSegmentPayload },\n ],\n);\n\n/**\n * @generated from message checkout.mpp.v1.CreateAndPromoteMerchantSettingsResponse\n */\nexport const CreateAndPromoteMerchantSettingsResponse = proto3.makeMessageType(\n \"checkout.mpp.v1.CreateAndPromoteMerchantSettingsResponse\",\n () => [\n { no: 1, name: \"merchant_settings\", kind: \"message\", T: MerchantSettings },\n ],\n);\n\n/**\n * @generated from message checkout.mpp.v1.CreateSegmentResponse\n */\nexport const CreateSegmentResponse = proto3.makeMessageType(\n \"checkout.mpp.v1.CreateSegmentResponse\",\n () => [\n { no: 1, name: \"merchant_settings\", kind: \"message\", T: MerchantSettings },\n ],\n);\n\n/**\n * @generated from message checkout.mpp.v1.UpdateMerchantSettingsRequest\n */\nexport const UpdateMerchantSettingsRequest = proto3.makeMessageType(\n \"checkout.mpp.v1.UpdateMerchantSettingsRequest\",\n () => [\n { no: 1, name: \"merchant_settings\", kind: \"message\", T: CreateMerchantSettingsPayload },\n { no: 2, name: \"field_mask\", kind: \"message\", T: FieldMask },\n ],\n);\n\n/**\n * @generated from message checkout.mpp.v1.UpdateMerchantSettingsResponse\n */\nexport const UpdateMerchantSettingsResponse = proto3.makeMessageType(\n \"checkout.mpp.v1.UpdateMerchantSettingsResponse\",\n () => [\n { no: 1, name: \"merchant_settings\", kind: \"message\", T: MerchantSettings },\n ],\n);\n\n/**\n * @generated from message checkout.mpp.v1.ExchangeCodeForTokenRequest\n */\nexport const ExchangeCodeForTokenRequest = proto3.makeMessageType(\n \"checkout.mpp.v1.ExchangeCodeForTokenRequest\",\n () => [\n { no: 1, name: \"code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"state\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"error\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"error_description\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"product_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message checkout.mpp.v1.ExchangeCodeForTokenResponse\n */\nexport const ExchangeCodeForTokenResponse = proto3.makeMessageType(\n \"checkout.mpp.v1.ExchangeCodeForTokenResponse\",\n () => [\n { no: 1, name: \"mids\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 2, name: \"settings_session_token\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"access_privilege\", kind: \"enum\", T: proto3.getEnumType(AccessPrivilege) },\n { no: 4, name: \"profile_owner_eci\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"merchant_info\", kind: \"message\", T: MerchantInfo, repeated: true },\n { no: 6, name: \"user_type\", kind: \"enum\", T: proto3.getEnumType(UserType) },\n ],\n);\n\n/**\n * @generated from message checkout.mpp.v1.GetSettingsBundleRequest\n */\nexport const GetSettingsBundleRequest = proto3.makeMessageType(\n \"checkout.mpp.v1.GetSettingsBundleRequest\",\n () => [\n { no: 1, name: \"segment_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message checkout.mpp.v1.GetSettingsBundleResponse\n */\nexport const GetSettingsBundleResponse = proto3.makeMessageType(\n \"checkout.mpp.v1.GetSettingsBundleResponse\",\n () => [\n { no: 1, name: \"reference_data\", kind: \"message\", T: ReferenceData },\n { no: 2, name: \"active_settings\", kind: \"message\", T: MerchantSettings },\n { no: 3, name: \"segment\", kind: \"message\", T: Segment, repeated: true },\n { no: 4, name: \"max_segments_limit\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n ],\n);\n\n/**\n * @generated from message checkout.mpp.v1.DeleteSegmentRequest\n */\nexport const DeleteSegmentRequest = proto3.makeMessageType(\n \"checkout.mpp.v1.DeleteSegmentRequest\",\n () => [\n { no: 1, name: \"segment_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message checkout.mpp.v1.DeleteSegmentResponse\n */\nexport const DeleteSegmentResponse = proto3.makeMessageType(\n \"checkout.mpp.v1.DeleteSegmentResponse\",\n () => [\n { no: 1, name: \"segment\", kind: \"message\", T: Segment, repeated: true },\n ],\n);\n\n/**\n * @generated from message checkout.mpp.v1.GetPaymentLinkRequest\n */\nexport const GetPaymentLinkRequest = proto3.makeMessageType(\n \"checkout.mpp.v1.GetPaymentLinkRequest\",\n () => [\n { no: 1, name: \"external_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message checkout.mpp.v1.GetPaymentLinkResponse\n */\nexport const GetPaymentLinkResponse = proto3.makeMessageType(\n \"checkout.mpp.v1.GetPaymentLinkResponse\",\n () => [\n { no: 1, name: \"link\", kind: \"message\", T: Link },\n ],\n);\n\n/**\n * @generated from message checkout.mpp.v1.ExportPaymentLinksRequest\n */\nexport const ExportPaymentLinksRequest = proto3.makeMessageType(\n \"checkout.mpp.v1.ExportPaymentLinksRequest\",\n () => [\n { no: 1, name: \"locale\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"filter\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"order_by\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message checkout.mpp.v1.ExportPaymentLinksResponse\n */\nexport const ExportPaymentLinksResponse = proto3.makeMessageType(\n \"checkout.mpp.v1.ExportPaymentLinksResponse\",\n () => [\n { no: 1, name: \"data\", kind: \"scalar\", T: 12 /* ScalarType.BYTES */ },\n ],\n);\n\n/**\n * @generated from message checkout.mpp.v1.SendPaymentLinkEmailRequest\n */\nexport const SendPaymentLinkEmailRequest = proto3.makeMessageType(\n \"checkout.mpp.v1.SendPaymentLinkEmailRequest\",\n () => [\n { no: 2, name: \"link_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"send_to\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n ],\n);\n\n/**\n * @generated from message checkout.mpp.v1.SendPaymentLinkEmailResponse\n */\nexport const SendPaymentLinkEmailResponse = proto3.makeMessageType(\n \"checkout.mpp.v1.SendPaymentLinkEmailResponse\",\n [],\n);\n\n/**\n * @generated from message checkout.mpp.v1.UploadLogoRequest\n */\nexport const UploadLogoRequest = proto3.makeMessageType(\n \"checkout.mpp.v1.UploadLogoRequest\",\n () => [\n { no: 1, name: \"file_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"logo\", kind: \"scalar\", T: 12 /* ScalarType.BYTES */ },\n ],\n);\n\n/**\n * @generated from message checkout.mpp.v1.UploadLogoResponse\n */\nexport const UploadLogoResponse = proto3.makeMessageType(\n \"checkout.mpp.v1.UploadLogoResponse\",\n () => [\n { no: 1, name: \"file_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * RegisterMerchantToApplePayRequest defines the domains to be registered to Apple Pay.\n *\n * @generated from message checkout.mpp.v1.RegisterMerchantToApplePayRequest\n * @deprecated\n */\nexport const RegisterMerchantToApplePayRequest = proto3.makeMessageType(\n \"checkout.mpp.v1.RegisterMerchantToApplePayRequest\",\n () => [\n { no: 1, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"domain_names\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n ],\n);\n\n/**\n * RegisterMerchantToApplePayResponse defines the settings ID of Apple Pay changes.\n *\n * @generated from message checkout.mpp.v1.RegisterMerchantToApplePayResponse\n * @deprecated\n */\nexport const RegisterMerchantToApplePayResponse = proto3.makeMessageType(\n \"checkout.mpp.v1.RegisterMerchantToApplePayResponse\",\n () => [\n { no: 1, name: \"merchant_settings\", kind: \"message\", T: MerchantSettings },\n ],\n);\n\n/**\n * UnregisterMerchantToApplePayRequest defines the domains to be unregistered to Apple Pay.\n *\n * @generated from message checkout.mpp.v1.UnregisterMerchantToApplePayRequest\n * @deprecated\n */\nexport const UnregisterMerchantToApplePayRequest = proto3.makeMessageType(\n \"checkout.mpp.v1.UnregisterMerchantToApplePayRequest\",\n () => [\n { no: 1, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"domain_names\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n ],\n);\n\n/**\n * UnregisterMerchantToApplePayResponse defines the settings ID of Apple Pay changes.\n *\n * @generated from message checkout.mpp.v1.UnregisterMerchantToApplePayResponse\n * @deprecated\n */\nexport const UnregisterMerchantToApplePayResponse = proto3.makeMessageType(\n \"checkout.mpp.v1.UnregisterMerchantToApplePayResponse\",\n () => [\n { no: 1, name: \"merchant_settings\", kind: \"message\", T: MerchantSettings },\n ],\n);\n\n/**\n * AddApplePayDomainsRequest defines the domains to be added.\n *\n * @generated from message checkout.mpp.v1.AddApplePayDomainsRequest\n */\nexport const AddApplePayDomainsRequest = proto3.makeMessageType(\n \"checkout.mpp.v1.AddApplePayDomainsRequest\",\n () => [\n { no: 1, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"domain_names\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n ],\n);\n\n/**\n * RegisterMerchantToApplePayResponse defines the settings of Apple Pay changes.\n *\n * @generated from message checkout.mpp.v1.AddApplePayDomainsResponse\n */\nexport const AddApplePayDomainsResponse = proto3.makeMessageType(\n \"checkout.mpp.v1.AddApplePayDomainsResponse\",\n () => [\n { no: 1, name: \"merchant_settings\", kind: \"message\", T: MerchantSettings },\n ],\n);\n\n/**\n * VerifyApplePayDomainsRequest defines the domains to be registered to Apple Pay.\n *\n * @generated from message checkout.mpp.v1.VerifyApplePayDomainsRequest\n */\nexport const VerifyApplePayDomainsRequest = proto3.makeMessageType(\n \"checkout.mpp.v1.VerifyApplePayDomainsRequest\",\n () => [\n { no: 1, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"domain_names\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n ],\n);\n\n/**\n * VerifyApplePayDomainsResponse defines the settings of Apple Pay changes.\n *\n * @generated from message checkout.mpp.v1.VerifyApplePayDomainsResponse\n */\nexport const VerifyApplePayDomainsResponse = proto3.makeMessageType(\n \"checkout.mpp.v1.VerifyApplePayDomainsResponse\",\n () => [\n { no: 1, name: \"merchant_settings\", kind: \"message\", T: MerchantSettings },\n ],\n);\n\n/**\n * DeleteApplePayDomainsRequest defines the domains to be deleted and un-registered to Apple Pay.\n *\n * @generated from message checkout.mpp.v1.DeleteApplePayDomainsRequest\n */\nexport const DeleteApplePayDomainsRequest = proto3.makeMessageType(\n \"checkout.mpp.v1.DeleteApplePayDomainsRequest\",\n () => [\n { no: 1, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"domain_names\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n ],\n);\n\n/**\n * DeleteApplePayDomainsRequest defines the settings of Apple Pay changes.\n *\n * @generated from message checkout.mpp.v1.DeleteApplePayDomainsResponse\n */\nexport const DeleteApplePayDomainsResponse = proto3.makeMessageType(\n \"checkout.mpp.v1.DeleteApplePayDomainsResponse\",\n () => [\n { no: 1, name: \"merchant_settings\", kind: \"message\", T: MerchantSettings },\n ],\n);\n\n","// @generated by protoc-gen-connect-es v1.1.2 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file checkout/mpp/v1/checkout_mpp_api.proto (package checkout.mpp.v1, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { AddApplePayDomainsRequest, AddApplePayDomainsResponse, AuthorizeRequest, AuthorizeResponse, CreateAndPromoteMerchantSettingsRequest, CreateAndPromoteMerchantSettingsResponse, CreateOrUpdatePaymentLinkRequest, CreateOrUpdatePaymentLinkResponse, CreateSegmentRequest, CreateSegmentResponse, DeleteApplePayDomainsRequest, DeleteApplePayDomainsResponse, DeleteSegmentRequest, DeleteSegmentResponse, ExchangeCodeForTokenRequest, ExchangeCodeForTokenResponse, ExportPaymentLinksRequest, ExportPaymentLinksResponse, GetPaymentLinkRequest, GetPaymentLinkResponse, GetSettingsBundleRequest, GetSettingsBundleResponse, ListPaymentLinksRequest, ListPaymentLinksResponse, RegisterMerchantToApplePayRequest, RegisterMerchantToApplePayResponse, SendPaymentLinkEmailRequest, SendPaymentLinkEmailResponse, UnregisterMerchantToApplePayRequest, UnregisterMerchantToApplePayResponse, UpdateMerchantSettingsRequest, UpdateMerchantSettingsResponse, UploadLogoRequest, UploadLogoResponse, VerifyApplePayDomainsRequest, VerifyApplePayDomainsResponse } from \"./checkout_mpp_api_pb\";\nimport { MethodKind } from \"@bufbuild/protobuf\";\n\n/**\n * @generated from service checkout.mpp.v1.CheckoutMppV1Service\n */\nexport const CheckoutMppV1Service = {\n typeName: \"checkout.mpp.v1.CheckoutMppV1Service\",\n methods: {\n /**\n * @generated from rpc checkout.mpp.v1.CheckoutMppV1Service.CreateOrUpdatePaymentLink\n */\n createOrUpdatePaymentLink: {\n name: \"CreateOrUpdatePaymentLink\",\n I: CreateOrUpdatePaymentLinkRequest,\n O: CreateOrUpdatePaymentLinkResponse,\n kind: MethodKind.Unary,\n },\n /**\n * @generated from rpc checkout.mpp.v1.CheckoutMppV1Service.ListPaymentLinks\n */\n listPaymentLinks: {\n name: \"ListPaymentLinks\",\n I: ListPaymentLinksRequest,\n O: ListPaymentLinksResponse,\n kind: MethodKind.Unary,\n },\n /**\n * Endpoint to directly publish a new merchant settings and make it ACTIVE. Used in MPP Checkout Settings.\n *\n * @generated from rpc checkout.mpp.v1.CheckoutMppV1Service.CreateAndPromoteMerchantSettings\n */\n createAndPromoteMerchantSettings: {\n name: \"CreateAndPromoteMerchantSettings\",\n I: CreateAndPromoteMerchantSettingsRequest,\n O: CreateAndPromoteMerchantSettingsResponse,\n kind: MethodKind.Unary,\n },\n /**\n * Endpoint to create a new merchant segment. Used in MPP Checkout Settings.\n *\n * @generated from rpc checkout.mpp.v1.CheckoutMppV1Service.CreateSegment\n */\n createSegment: {\n name: \"CreateSegment\",\n I: CreateSegmentRequest,\n O: CreateSegmentResponse,\n kind: MethodKind.Unary,\n },\n /**\n * Endpoint to patch current active settings with an update. To be used in MPP Checkout Settings.\n *\n * @generated from rpc checkout.mpp.v1.CheckoutMppV1Service.UpdateMerchantSettings\n */\n updateMerchantSettings: {\n name: \"UpdateMerchantSettings\",\n I: UpdateMerchantSettingsRequest,\n O: UpdateMerchantSettingsResponse,\n kind: MethodKind.Unary,\n },\n /**\n * @generated from rpc checkout.mpp.v1.CheckoutMppV1Service.GetSettingsBundle\n */\n getSettingsBundle: {\n name: \"GetSettingsBundle\",\n I: GetSettingsBundleRequest,\n O: GetSettingsBundleResponse,\n kind: MethodKind.Unary,\n },\n /**\n * @generated from rpc checkout.mpp.v1.CheckoutMppV1Service.DeleteSegment\n */\n deleteSegment: {\n name: \"DeleteSegment\",\n I: DeleteSegmentRequest,\n O: DeleteSegmentResponse,\n kind: MethodKind.Unary,\n },\n /**\n * Public API to exchange the authorization code for an access token as part of MPP authorization flow\n *\n * @generated from rpc checkout.mpp.v1.CheckoutMppV1Service.ExchangeCodeForToken\n */\n exchangeCodeForToken: {\n name: \"ExchangeCodeForToken\",\n I: ExchangeCodeForTokenRequest,\n O: ExchangeCodeForTokenResponse,\n kind: MethodKind.Unary,\n },\n /**\n * @generated from rpc checkout.mpp.v1.CheckoutMppV1Service.GetPaymentLink\n */\n getPaymentLink: {\n name: \"GetPaymentLink\",\n I: GetPaymentLinkRequest,\n O: GetPaymentLinkResponse,\n kind: MethodKind.Unary,\n },\n /**\n * @generated from rpc checkout.mpp.v1.CheckoutMppV1Service.ExportPaymentLinks\n */\n exportPaymentLinks: {\n name: \"ExportPaymentLinks\",\n I: ExportPaymentLinksRequest,\n O: ExportPaymentLinksResponse,\n kind: MethodKind.ServerStreaming,\n },\n /**\n * @generated from rpc checkout.mpp.v1.CheckoutMppV1Service.SendPaymentLinkEmail\n */\n sendPaymentLinkEmail: {\n name: \"SendPaymentLinkEmail\",\n I: SendPaymentLinkEmailRequest,\n O: SendPaymentLinkEmailResponse,\n kind: MethodKind.Unary,\n },\n /**\n * @generated from rpc checkout.mpp.v1.CheckoutMppV1Service.UploadLogo\n */\n uploadLogo: {\n name: \"UploadLogo\",\n I: UploadLogoRequest,\n O: UploadLogoResponse,\n kind: MethodKind.Unary,\n },\n /**\n * Public API to register/unregister merchant domains to Apple Pay\n *\n * @generated from rpc checkout.mpp.v1.CheckoutMppV1Service.RegisterMerchantToApplePay\n * @deprecated\n */\n registerMerchantToApplePay: {\n name: \"RegisterMerchantToApplePay\",\n I: RegisterMerchantToApplePayRequest,\n O: RegisterMerchantToApplePayResponse,\n kind: MethodKind.Unary,\n },\n /**\n * @generated from rpc checkout.mpp.v1.CheckoutMppV1Service.UnregisterMerchantToApplePay\n * @deprecated\n */\n unregisterMerchantToApplePay: {\n name: \"UnregisterMerchantToApplePay\",\n I: UnregisterMerchantToApplePayRequest,\n O: UnregisterMerchantToApplePayResponse,\n kind: MethodKind.Unary,\n },\n /**\n * New Apple Pay endpoints\n *\n * @generated from rpc checkout.mpp.v1.CheckoutMppV1Service.AddApplePayDomains\n */\n addApplePayDomains: {\n name: \"AddApplePayDomains\",\n I: AddApplePayDomainsRequest,\n O: AddApplePayDomainsResponse,\n kind: MethodKind.Unary,\n },\n /**\n * @generated from rpc checkout.mpp.v1.CheckoutMppV1Service.VerifyApplePayDomains\n */\n verifyApplePayDomains: {\n name: \"VerifyApplePayDomains\",\n I: VerifyApplePayDomainsRequest,\n O: VerifyApplePayDomainsResponse,\n kind: MethodKind.Unary,\n },\n /**\n * @generated from rpc checkout.mpp.v1.CheckoutMppV1Service.DeleteApplePayDomains\n */\n deleteApplePayDomains: {\n name: \"DeleteApplePayDomains\",\n I: DeleteApplePayDomainsRequest,\n O: DeleteApplePayDomainsResponse,\n kind: MethodKind.Unary,\n },\n /**\n * @generated from rpc checkout.mpp.v1.CheckoutMppV1Service.Authorize\n */\n authorize: {\n name: \"Authorize\",\n I: AuthorizeRequest,\n O: AuthorizeResponse,\n kind: MethodKind.Unary,\n },\n }\n};\n\n","// Copyright 2020 Google LLC\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file google/rpc/code.proto (package google.rpc, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\n\n/**\n * The canonical error codes for gRPC APIs.\n *\n *\n * Sometimes multiple error codes may apply. Services should return\n * the most specific error code that applies. For example, prefer\n * `OUT_OF_RANGE` over `FAILED_PRECONDITION` if both codes apply.\n * Similarly prefer `NOT_FOUND` or `ALREADY_EXISTS` over `FAILED_PRECONDITION`.\n *\n * @generated from enum google.rpc.Code\n */\nexport const Code = proto3.makeEnum(\n \"google.rpc.Code\",\n [\n {no: 0, name: \"OK\"},\n {no: 1, name: \"CANCELLED\"},\n {no: 2, name: \"UNKNOWN\"},\n {no: 3, name: \"INVALID_ARGUMENT\"},\n {no: 4, name: \"DEADLINE_EXCEEDED\"},\n {no: 5, name: \"NOT_FOUND\"},\n {no: 6, name: \"ALREADY_EXISTS\"},\n {no: 7, name: \"PERMISSION_DENIED\"},\n {no: 16, name: \"UNAUTHENTICATED\"},\n {no: 8, name: \"RESOURCE_EXHAUSTED\"},\n {no: 9, name: \"FAILED_PRECONDITION\"},\n {no: 10, name: \"ABORTED\"},\n {no: 11, name: \"OUT_OF_RANGE\"},\n {no: 12, name: \"UNIMPLEMENTED\"},\n {no: 13, name: \"INTERNAL\"},\n {no: 14, name: \"UNAVAILABLE\"},\n {no: 15, name: \"DATA_LOSS\"},\n ],\n);\n\n","// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file common/v1/merchant_ops.proto (package common.v1, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\nimport { Struct } from \"../../google/protobuf/struct_pb\";\nimport { Timestamp } from \"../../google/protobuf/timestamp_pb\";\n\n/**\n * @generated from message common.v1.MopConfiguration\n */\nexport const MopConfiguration = proto3.makeMessageType(\n \"common.v1.MopConfiguration\",\n () => [\n { no: 1, name: \"payment_method_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"settlement_currency_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"point_of_sale_currency_code_list\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n ],\n);\n\n/**\n * @generated from message common.v1.StratusConfiguration\n */\nexport const StratusConfiguration = proto3.makeMessageType(\n \"common.v1.StratusConfiguration\",\n () => [\n { no: 1, name: \"merchant_acquirer_company_identifier\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"merchant_acquirer_business_unit_identifier\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"merchant_acquirer_transaction_division_identifier\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"point_of_sale_currency_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"settlement_currency_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message common.v1.JpmcMerchant\n */\nexport const JpmcMerchant = proto3.makeMessageType(\n \"common.v1.JpmcMerchant\",\n () => [\n { no: 1, name: \"id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"client_ids\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 4, name: \"event_source\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"merchant_type\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"stratus_configuration\", kind: \"message\", T: StratusConfiguration, repeated: true },\n { no: 7, name: \"status_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"category_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 9, name: \"category_label\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 10, name: \"legal_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 11, name: \"checkout_features\", kind: \"message\", T: Struct },\n { no: 12, name: \"checkout_enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 13, name: \"fraud_check_enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 14, name: \"pinless_debit_enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 15, name: \"three_ds\", kind: \"message\", T: Struct },\n { no: 16, name: \"address\", kind: \"message\", T: Struct },\n { no: 17, name: \"event\", kind: \"message\", T: Struct },\n { no: 18, name: \"transaction_ceiling_amount\", kind: \"scalar\", T: 1 /* ScalarType.DOUBLE */ },\n { no: 19, name: \"mop_configuration\", kind: \"message\", T: MopConfiguration, repeated: true },\n { no: 20, name: \"created_by\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 21, name: \"created_at\", kind: \"message\", T: Timestamp },\n { no: 22, name: \"updated_by\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 23, name: \"updated_at\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 24, name: \"wallet_config\", kind: \"message\", T: WalletConfig },\n { no: 25, name: \"enterprise_party_identifier\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 26, name: \"lpm_callback_url\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message common.v1.WalletConfig\n */\nexport const WalletConfig = proto3.makeMessageType(\n \"common.v1.WalletConfig\",\n () => [\n { no: 1, name: \"enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 2, name: \"values\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 3, name: \"paze_client_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message common.v1.JpmcMerchantAuditHistory\n */\nexport const JpmcMerchantAuditHistory = proto3.makeMessageType(\n \"common.v1.JpmcMerchantAuditHistory\",\n () => [\n { no: 1, name: \"revision_metadata\", kind: \"message\", T: RevisionMetadata },\n { no: 2, name: \"payload\", kind: \"message\", T: JpmcMerchant },\n ],\n);\n\n/**\n * @generated from message common.v1.RevisionMetadata\n */\nexport const RevisionMetadata = proto3.makeMessageType(\n \"common.v1.RevisionMetadata\",\n () => [\n { no: 1, name: \"revision_number\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 2, name: \"revision_instant\", kind: \"message\", T: Timestamp },\n { no: 3, name: \"revision_type\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n","// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file identity/v1/settings_service.proto (package identity.v1, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\nimport { BrowserData, CardNetwork, MerchantSettingsSource, PaymentGatewayType } from \"../../common/v1/common_pb\";\nimport { CreateExperimentPayload, CreateMerchantSettingsPayload, CreateSegmentPayload, Experiment, ExperimentStatus, ExperimentWithResults, IntegrationType, Layout, Mandate, MerchantSettings, MerchantSettingsMeta, OrdersOnHpp, PageHeader, PaymentButtonName, PaymentMethods, ReferenceData, SecuritySettings, Segment, TaxIntegration } from \"../../common/v1/merchant_settings_pb\";\nimport { Timestamp } from \"../../google/protobuf/timestamp_pb\";\nimport { Struct } from \"../../google/protobuf/struct_pb\";\nimport { FieldMask } from \"../../google/protobuf/field_mask_pb\";\nimport { StratusConfiguration } from \"../../common/v1/merchant_ops_pb\";\nimport { Date } from \"../../google/type/date_pb\";\n\n/**\n * @generated from message identity.v1.GetMerchantSettingsRequest\n */\nexport const GetMerchantSettingsRequest = proto3.makeMessageType(\n \"identity.v1.GetMerchantSettingsRequest\",\n () => [\n { no: 1, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"settings_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"segment_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"browser_data\", kind: \"message\", T: BrowserData },\n ],\n);\n\n/**\n * @generated from message identity.v1.GetMerchantSettingsListRequest\n */\nexport const GetMerchantSettingsListRequest = proto3.makeMessageType(\n \"identity.v1.GetMerchantSettingsListRequest\",\n () => [\n { no: 1, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"segment_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message identity.v1.GetMerchantSettingsResponse\n */\nexport const GetMerchantSettingsResponse = proto3.makeMessageType(\n \"identity.v1.GetMerchantSettingsResponse\",\n () => [\n { no: 1, name: \"merchant_settings\", kind: \"message\", T: MerchantSettings },\n ],\n);\n\n/**\n * @generated from message identity.v1.GetMerchantSettingsListResponse\n */\nexport const GetMerchantSettingsListResponse = proto3.makeMessageType(\n \"identity.v1.GetMerchantSettingsListResponse\",\n () => [\n { no: 1, name: \"merchant_settings_meta\", kind: \"message\", T: MerchantSettingsMeta, repeated: true },\n ],\n);\n\n/**\n * @generated from message identity.v1.PromoteMerchantSettingsRequest\n */\nexport const PromoteMerchantSettingsRequest = proto3.makeMessageType(\n \"identity.v1.PromoteMerchantSettingsRequest\",\n () => [\n { no: 1, name: \"settings_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"active_from\", kind: \"message\", T: Timestamp, opt: true },\n { no: 3, name: \"updated_by\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message identity.v1.PromoteMerchantSettingsResponse\n */\nexport const PromoteMerchantSettingsResponse = proto3.makeMessageType(\n \"identity.v1.PromoteMerchantSettingsResponse\",\n () => [\n { no: 1, name: \"merchant_settings\", kind: \"message\", T: MerchantSettings },\n ],\n);\n\n/**\n * *\n * Behavior is as per below:\n * - if only merchant_id is provided, the Settings Service will return the currently ACTIVE Merchant Settings associated with given Merchant.\n * - if also settings_id is provided, the given Settings are returned are provided irrespective of their Status.\n *\n * @generated from message identity.v1.GetMerchantSettingsForBundleRequest\n */\nexport const GetMerchantSettingsForBundleRequest = proto3.makeMessageType(\n \"identity.v1.GetMerchantSettingsForBundleRequest\",\n () => [\n { no: 1, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"settings_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, opt: true },\n { no: 3, name: \"segment_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, opt: true },\n ],\n);\n\n/**\n * @generated from message identity.v1.GetMerchantSettingsForBundleResponse\n */\nexport const GetMerchantSettingsForBundleResponse = proto3.makeMessageType(\n \"identity.v1.GetMerchantSettingsForBundleResponse\",\n () => [\n { no: 1, name: \"merchant_bundle_settings\", kind: \"message\", T: MerchantBundleSettings },\n ],\n);\n\n/**\n * @generated from message identity.v1.MerchantBundleSettings\n */\nexport const MerchantBundleSettings = proto3.makeMessageType(\n \"identity.v1.MerchantBundleSettings\",\n () => [\n { no: 1, name: \"custom_theme\", kind: \"message\", T: Struct },\n { no: 2, name: \"form_config\", kind: \"message\", T: Struct },\n { no: 4, name: \"safetech_merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 6, name: \"payment_methods\", kind: \"message\", T: PaymentMethods },\n { no: 8, name: \"supported_ship_to_country_region\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 11, name: \"merchant_display_name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 12, name: \"integration_type\", kind: \"enum\", T: proto3.getEnumType(IntegrationType) },\n { no: 13, name: \"layout\", kind: \"enum\", T: proto3.getEnumType(Layout) },\n { no: 14, name: \"orders_on_hpp\", kind: \"message\", T: OrdersOnHpp },\n { no: 15, name: \"address_autocomplete_enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 17, name: \"payment_button_name\", kind: \"enum\", T: proto3.getEnumType(PaymentButtonName) },\n { no: 18, name: \"order_mandates\", kind: \"message\", T: Mandate, repeated: true },\n { no: 19, name: \"security_settings\", kind: \"message\", T: SecuritySettings },\n { no: 20, name: \"page_header\", kind: \"message\", T: PageHeader },\n { no: 21, name: \"supported_payment_gateway_type\", kind: \"enum\", T: proto3.getEnumType(PaymentGatewayType) },\n { no: 22, name: \"brand_experience\", kind: \"message\", T: Struct },\n { no: 23, name: \"country\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 24, name: \"billing_address_country_restriction\", kind: \"scalar\", T: 9 /* ScalarType.STRING */, repeated: true },\n { no: 25, name: \"segment\", kind: \"message\", T: Segment },\n { no: 26, name: \"tax_integration\", kind: \"message\", T: TaxIntegration },\n { no: 27, name: \"surcharge_fee_enabled\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */, opt: true },\n ],\n);\n\n/**\n * @generated from message identity.v1.CardPaymentSetting\n */\nexport const CardPaymentSetting = proto3.makeMessageType(\n \"identity.v1.CardPaymentSetting\",\n () => [\n { no: 1, name: \"accepted_card_network\", kind: \"enum\", T: proto3.getEnumType(CardNetwork), repeated: true },\n ],\n);\n\n/**\n * @generated from message identity.v1.CreateMerchantSettingsRequest\n */\nexport const CreateMerchantSettingsRequest = proto3.makeMessageType(\n \"identity.v1.CreateMerchantSettingsRequest\",\n () => [\n { no: 1, name: \"merchant_settings\", kind: \"message\", T: CreateMerchantSettingsPayload },\n { no: 2, name: \"created_by\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"updated_by\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"force_update\", kind: \"scalar\", T: 8 /* ScalarType.BOOL */ },\n { no: 6, name: \"source\", kind: \"enum\", T: proto3.getEnumType(MerchantSettingsSource), opt: true },\n ],\n);\n\n/**\n * @generated from message identity.v1.CreateMerchantSettingsResponse\n */\nexport const CreateMerchantSettingsResponse = proto3.makeMessageType(\n \"identity.v1.CreateMerchantSettingsResponse\",\n () => [\n { no: 1, name: \"merchant_settings\", kind: \"message\", T: MerchantSettings },\n ],\n);\n\n/**\n * @generated from message identity.v1.GetMerchantSettingsForAdminRequest\n */\nexport const GetMerchantSettingsForAdminRequest = proto3.makeMessageType(\n \"identity.v1.GetMerchantSettingsForAdminRequest\",\n () => [\n { no: 1, name: \"merchant_settings_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message identity.v1.GetMerchantSettingsForAdminResponse\n */\nexport const GetMerchantSettingsForAdminResponse = proto3.makeMessageType(\n \"identity.v1.GetMerchantSettingsForAdminResponse\",\n () => [\n { no: 1, name: \"merchant_settings\", kind: \"message\", T: MerchantSettings },\n ],\n);\n\n/**\n * @generated from message identity.v1.GetActiveMerchantSettingsRequest\n */\nexport const GetActiveMerchantSettingsRequest = proto3.makeMessageType(\n \"identity.v1.GetActiveMerchantSettingsRequest\",\n () => [\n { no: 1, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"segment_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message identity.v1.GetAllActiveMerchantSettingsRequest\n */\nexport const GetAllActiveMerchantSettingsRequest = proto3.makeMessageType(\n \"identity.v1.GetAllActiveMerchantSettingsRequest\",\n () => [\n { no: 1, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message identity.v1.GetActiveMerchantSettingsResponse\n */\nexport const GetActiveMerchantSettingsResponse = proto3.makeMessageType(\n \"identity.v1.GetActiveMerchantSettingsResponse\",\n () => [\n { no: 1, name: \"merchant_settings\", kind: \"message\", T: MerchantSettings },\n ],\n);\n\n/**\n * @generated from message identity.v1.GetAllActiveMerchantSettingsResponse\n */\nexport const GetAllActiveMerchantSettingsResponse = proto3.makeMessageType(\n \"identity.v1.GetAllActiveMerchantSettingsResponse\",\n () => [\n { no: 1, name: \"merchant_settings\", kind: \"message\", T: MerchantSettings, repeated: true },\n ],\n);\n\n/**\n * @generated from message identity.v1.GetReferenceDataForMppSettingsRequest\n */\nexport const GetReferenceDataForMppSettingsRequest = proto3.makeMessageType(\n \"identity.v1.GetReferenceDataForMppSettingsRequest\",\n () => [\n { no: 1, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message identity.v1.GetReferenceDataForMppSettingsResponse\n */\nexport const GetReferenceDataForMppSettingsResponse = proto3.makeMessageType(\n \"identity.v1.GetReferenceDataForMppSettingsResponse\",\n () => [\n { no: 1, name: \"reference_data\", kind: \"message\", T: ReferenceData },\n { no: 2, name: \"segment_limit\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n ],\n);\n\n/**\n * @generated from message identity.v1.CreateAndPromoteMerchantSettingsRequest\n */\nexport const CreateAndPromoteMerchantSettingsRequest = proto3.makeMessageType(\n \"identity.v1.CreateAndPromoteMerchantSettingsRequest\",\n () => [\n { no: 1, name: \"merchant_settings\", kind: \"message\", T: CreateMerchantSettingsPayload },\n { no: 2, name: \"created_by\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"updated_by\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"source\", kind: \"enum\", T: proto3.getEnumType(MerchantSettingsSource), opt: true },\n ],\n);\n\n/**\n * @generated from message identity.v1.CreateAndPromoteMerchantSettingsResponse\n */\nexport const CreateAndPromoteMerchantSettingsResponse = proto3.makeMessageType(\n \"identity.v1.CreateAndPromoteMerchantSettingsResponse\",\n () => [\n { no: 1, name: \"merchant_settings\", kind: \"message\", T: MerchantSettings },\n ],\n);\n\n/**\n * @generated from message identity.v1.CreateSegmentRequest\n */\nexport const CreateSegmentRequest = proto3.makeMessageType(\n \"identity.v1.CreateSegmentRequest\",\n () => [\n { no: 1, name: \"segment\", kind: \"message\", T: CreateSegmentPayload },\n { no: 2, name: \"created_by\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"updated_by\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"source\", kind: \"enum\", T: proto3.getEnumType(MerchantSettingsSource), opt: true },\n ],\n);\n\n/**\n * @generated from message identity.v1.CreateSegmentResponse\n */\nexport const CreateSegmentResponse = proto3.makeMessageType(\n \"identity.v1.CreateSegmentResponse\",\n () => [\n { no: 1, name: \"merchant_settings\", kind: \"message\", T: MerchantSettings },\n ],\n);\n\n/**\n * @generated from message identity.v1.UpdateMerchantSettingsRequest\n */\nexport const UpdateMerchantSettingsRequest = proto3.makeMessageType(\n \"identity.v1.UpdateMerchantSettingsRequest\",\n () => [\n { no: 1, name: \"merchant_settings\", kind: \"message\", T: CreateMerchantSettingsPayload },\n { no: 2, name: \"created_by\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"updated_by\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"field_mask\", kind: \"message\", T: FieldMask },\n { no: 6, name: \"source\", kind: \"enum\", T: proto3.getEnumType(MerchantSettingsSource), opt: true },\n ],\n);\n\n/**\n * @generated from message identity.v1.UpdateMerchantSettingsResponse\n */\nexport const UpdateMerchantSettingsResponse = proto3.makeMessageType(\n \"identity.v1.UpdateMerchantSettingsResponse\",\n () => [\n { no: 1, name: \"merchant_settings\", kind: \"message\", T: MerchantSettings },\n ],\n);\n\n/**\n * @generated from message identity.v1.DeleteSegmentRequest\n */\nexport const DeleteSegmentRequest = proto3.makeMessageType(\n \"identity.v1.DeleteSegmentRequest\",\n () => [\n { no: 1, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"segment_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message identity.v1.DeleteSegmentResponse\n */\nexport const DeleteSegmentResponse = proto3.makeMessageType(\n \"identity.v1.DeleteSegmentResponse\",\n () => [\n { no: 1, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"segment\", kind: \"message\", T: Segment, repeated: true },\n ],\n);\n\n/**\n * @generated from message identity.v1.GetStratusConfigForJpmppMidRequest\n */\nexport const GetStratusConfigForJpmppMidRequest = proto3.makeMessageType(\n \"identity.v1.GetStratusConfigForJpmppMidRequest\",\n () => [\n { no: 1, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message identity.v1.GetStratusConfigForJpmppMidResponse\n */\nexport const GetStratusConfigForJpmppMidResponse = proto3.makeMessageType(\n \"identity.v1.GetStratusConfigForJpmppMidResponse\",\n () => [\n { no: 1, name: \"stratus_config\", kind: \"message\", T: StratusConfiguration, repeated: true },\n ],\n);\n\n/**\n * @generated from message identity.v1.CreateExperimentRequest\n */\nexport const CreateExperimentRequest = proto3.makeMessageType(\n \"identity.v1.CreateExperimentRequest\",\n () => [\n { no: 1, name: \"experiment\", kind: \"message\", T: CreateExperimentPayload },\n { no: 2, name: \"created_by\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"updated_by\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message identity.v1.CreateExperimentResponse\n */\nexport const CreateExperimentResponse = proto3.makeMessageType(\n \"identity.v1.CreateExperimentResponse\",\n () => [\n { no: 1, name: \"experiment\", kind: \"message\", T: Experiment },\n ],\n);\n\n/**\n * @generated from message identity.v1.GetActiveExperimentRequest\n */\nexport const GetActiveExperimentRequest = proto3.makeMessageType(\n \"identity.v1.GetActiveExperimentRequest\",\n () => [\n { no: 1, name: \"control_segment_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message identity.v1.GetActiveExperimentResponse\n */\nexport const GetActiveExperimentResponse = proto3.makeMessageType(\n \"identity.v1.GetActiveExperimentResponse\",\n () => [\n { no: 1, name: \"experiment\", kind: \"message\", T: Experiment },\n ],\n);\n\n/**\n * @generated from message identity.v1.GetAllExperimentsRequest\n */\nexport const GetAllExperimentsRequest = proto3.makeMessageType(\n \"identity.v1.GetAllExperimentsRequest\",\n () => [\n { no: 1, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"page\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 3, name: \"size\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n ],\n);\n\n/**\n * @generated from message identity.v1.GetAllExperimentsResponse\n */\nexport const GetAllExperimentsResponse = proto3.makeMessageType(\n \"identity.v1.GetAllExperimentsResponse\",\n () => [\n { no: 1, name: \"experiment\", kind: \"message\", T: Experiment, repeated: true },\n ],\n);\n\n/**\n * @generated from message identity.v1.UpdateExperimentRequest\n */\nexport const UpdateExperimentRequest = proto3.makeMessageType(\n \"identity.v1.UpdateExperimentRequest\",\n () => [\n { no: 1, name: \"experiment_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"status\", kind: \"enum\", T: proto3.getEnumType(ExperimentStatus), opt: true },\n ],\n);\n\n/**\n * @generated from message identity.v1.UpdateExperimentResponse\n */\nexport const UpdateExperimentResponse = proto3.makeMessageType(\n \"identity.v1.UpdateExperimentResponse\",\n () => [\n { no: 1, name: \"experiment_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message identity.v1.GetExperimentResultsRequest\n */\nexport const GetExperimentResultsRequest = proto3.makeMessageType(\n \"identity.v1.GetExperimentResultsRequest\",\n () => [\n { no: 1, name: \"experiment_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"start_date\", kind: \"message\", T: Date },\n { no: 3, name: \"end_date\", kind: \"message\", T: Date },\n ],\n);\n\n/**\n * @generated from message identity.v1.GetExperimentResultsResponse\n */\nexport const GetExperimentResultsResponse = proto3.makeMessageType(\n \"identity.v1.GetExperimentResultsResponse\",\n () => [\n { no: 1, name: \"experiment_with_results_list\", kind: \"message\", T: ExperimentWithResults },\n ],\n);\n\n/**\n * @generated from message identity.v1.GetExperimentResultsListRequest\n */\nexport const GetExperimentResultsListRequest = proto3.makeMessageType(\n \"identity.v1.GetExperimentResultsListRequest\",\n () => [\n { no: 1, name: \"merchant_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"page\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n { no: 3, name: \"size\", kind: \"scalar\", T: 5 /* ScalarType.INT32 */ },\n ],\n);\n\n/**\n * @generated from message identity.v1.GetExperimentResultsListResponse\n */\nexport const GetExperimentResultsListResponse = proto3.makeMessageType(\n \"identity.v1.GetExperimentResultsListResponse\",\n () => [\n { no: 1, name: \"experiment_with_results_list\", kind: \"message\", T: ExperimentWithResults, repeated: true },\n ],\n);\n\n","// @generated by protoc-gen-connect-es v1.1.2 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file identity/v1/settings_service.proto (package identity.v1, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { CreateAndPromoteMerchantSettingsRequest, CreateAndPromoteMerchantSettingsResponse, CreateExperimentRequest, CreateExperimentResponse, CreateMerchantSettingsRequest, CreateMerchantSettingsResponse, CreateSegmentRequest, CreateSegmentResponse, DeleteSegmentRequest, DeleteSegmentResponse, GetActiveExperimentRequest, GetActiveExperimentResponse, GetActiveMerchantSettingsRequest, GetActiveMerchantSettingsResponse, GetAllActiveMerchantSettingsRequest, GetAllActiveMerchantSettingsResponse, GetAllExperimentsRequest, GetAllExperimentsResponse, GetExperimentResultsListRequest, GetExperimentResultsListResponse, GetExperimentResultsRequest, GetExperimentResultsResponse, GetMerchantSettingsForAdminRequest, GetMerchantSettingsForAdminResponse, GetMerchantSettingsForBundleRequest, GetMerchantSettingsForBundleResponse, GetMerchantSettingsListRequest, GetMerchantSettingsListResponse, GetMerchantSettingsRequest, GetMerchantSettingsResponse, GetReferenceDataForMppSettingsRequest, GetReferenceDataForMppSettingsResponse, GetStratusConfigForJpmppMidRequest, GetStratusConfigForJpmppMidResponse, PromoteMerchantSettingsRequest, PromoteMerchantSettingsResponse, UpdateExperimentRequest, UpdateExperimentResponse, UpdateMerchantSettingsRequest, UpdateMerchantSettingsResponse } from \"./settings_service_pb\";\nimport { MethodKind } from \"@bufbuild/protobuf\";\n\n/**\n * @generated from service identity.v1.MerchantSettingsService\n */\nexport const MerchantSettingsService = {\n typeName: \"identity.v1.MerchantSettingsService\",\n methods: {\n /**\n * @generated from rpc identity.v1.MerchantSettingsService.GetMerchantSettings\n */\n getMerchantSettings: {\n name: \"GetMerchantSettings\",\n I: GetMerchantSettingsRequest,\n O: GetMerchantSettingsResponse,\n kind: MethodKind.Unary,\n },\n /**\n * @generated from rpc identity.v1.MerchantSettingsService.GetMerchantSettingsList\n */\n getMerchantSettingsList: {\n name: \"GetMerchantSettingsList\",\n I: GetMerchantSettingsListRequest,\n O: GetMerchantSettingsListResponse,\n kind: MethodKind.Unary,\n },\n /**\n * Get Setting by Settings Id used by TechOps\n *\n * @generated from rpc identity.v1.MerchantSettingsService.GetMerchantSettingsForAdmin\n */\n getMerchantSettingsForAdmin: {\n name: \"GetMerchantSettingsForAdmin\",\n I: GetMerchantSettingsForAdminRequest,\n O: GetMerchantSettingsForAdminResponse,\n kind: MethodKind.Unary,\n },\n /**\n * Get settings used by\n *\n * @generated from rpc identity.v1.MerchantSettingsService.GetMerchantSettingsForBundle\n */\n getMerchantSettingsForBundle: {\n name: \"GetMerchantSettingsForBundle\",\n I: GetMerchantSettingsForBundleRequest,\n O: GetMerchantSettingsForBundleResponse,\n kind: MethodKind.Unary,\n },\n /**\n * Create settings will take merchant setting object as well as createBy and updateBy from IDA JWT\n *\n * @generated from rpc identity.v1.MerchantSettingsService.CreateMerchantSettings\n */\n createMerchantSettings: {\n name: \"CreateMerchantSettings\",\n I: CreateMerchantSettingsRequest,\n O: CreateMerchantSettingsResponse,\n kind: MethodKind.Unary,\n },\n /**\n * For promoting a settings from DRAFT to Active or Pending (future)\n *\n * @generated from rpc identity.v1.MerchantSettingsService.PromoteMerchantSettings\n */\n promoteMerchantSettings: {\n name: \"PromoteMerchantSettings\",\n I: PromoteMerchantSettingsRequest,\n O: PromoteMerchantSettingsResponse,\n kind: MethodKind.Unary,\n },\n /**\n * For publishing a settings from MPP. This will create and promote a new settings together.\n *\n * @generated from rpc identity.v1.MerchantSettingsService.CreateAndPromoteMerchantSettings\n */\n createAndPromoteMerchantSettings: {\n name: \"CreateAndPromoteMerchantSettings\",\n I: CreateAndPromoteMerchantSettingsRequest,\n O: CreateAndPromoteMerchantSettingsResponse,\n kind: MethodKind.Unary,\n },\n /**\n * Endpoint to create a new merchant segment. Used in MPP Checkout Settings.\n *\n * @generated from rpc identity.v1.MerchantSettingsService.CreateSegment\n */\n createSegment: {\n name: \"CreateSegment\",\n I: CreateSegmentRequest,\n O: CreateSegmentResponse,\n kind: MethodKind.Unary,\n },\n /**\n * Get currently active merchant settings for specific merchant id\n *\n * @generated from rpc identity.v1.MerchantSettingsService.GetActiveMerchantSettings\n */\n getActiveMerchantSettings: {\n name: \"GetActiveMerchantSettings\",\n I: GetActiveMerchantSettingsRequest,\n O: GetActiveMerchantSettingsResponse,\n kind: MethodKind.Unary,\n },\n /**\n * Get all active merchant settings\n *\n * @generated from rpc identity.v1.MerchantSettingsService.GetAllActiveMerchantSettings\n */\n getAllActiveMerchantSettings: {\n name: \"GetAllActiveMerchantSettings\",\n I: GetAllActiveMerchantSettingsRequest,\n O: GetAllActiveMerchantSettingsResponse,\n kind: MethodKind.Unary,\n },\n /**\n * Get reference data for mpp settings request\n *\n * @generated from rpc identity.v1.MerchantSettingsService.GetReferenceDataForMppSettings\n */\n getReferenceDataForMppSettings: {\n name: \"GetReferenceDataForMppSettings\",\n I: GetReferenceDataForMppSettingsRequest,\n O: GetReferenceDataForMppSettingsResponse,\n kind: MethodKind.Unary,\n },\n /**\n * Patch on merchant settings\n *\n * @generated from rpc identity.v1.MerchantSettingsService.UpdateMerchantSettings\n */\n updateMerchantSettings: {\n name: \"UpdateMerchantSettings\",\n I: UpdateMerchantSettingsRequest,\n O: UpdateMerchantSettingsResponse,\n kind: MethodKind.Unary,\n },\n /**\n * Delete Merchant Settings Segment\n *\n * @generated from rpc identity.v1.MerchantSettingsService.DeleteSegment\n */\n deleteSegment: {\n name: \"DeleteSegment\",\n I: DeleteSegmentRequest,\n O: DeleteSegmentResponse,\n kind: MethodKind.Unary,\n },\n /**\n * Return Stratus config against a JPMPP mid\n *\n * @generated from rpc identity.v1.MerchantSettingsService.GetStratusConfigForJpmppMid\n */\n getStratusConfigForJpmppMid: {\n name: \"GetStratusConfigForJpmppMid\",\n I: GetStratusConfigForJpmppMidRequest,\n O: GetStratusConfigForJpmppMidResponse,\n kind: MethodKind.Unary,\n },\n /**\n * Create an experiment\n *\n * @generated from rpc identity.v1.MerchantSettingsService.CreateExperiment\n */\n createExperiment: {\n name: \"CreateExperiment\",\n I: CreateExperimentRequest,\n O: CreateExperimentResponse,\n kind: MethodKind.Unary,\n },\n /**\n * Get currently active experiment\n *\n * @generated from rpc identity.v1.MerchantSettingsService.GetActiveExperiment\n */\n getActiveExperiment: {\n name: \"GetActiveExperiment\",\n I: GetActiveExperimentRequest,\n O: GetActiveExperimentResponse,\n kind: MethodKind.Unary,\n },\n /**\n * List all experiments\n *\n * @generated from rpc identity.v1.MerchantSettingsService.GetAllExperiments\n */\n getAllExperiments: {\n name: \"GetAllExperiments\",\n I: GetAllExperimentsRequest,\n O: GetAllExperimentsResponse,\n kind: MethodKind.Unary,\n },\n /**\n * Update experiment status\n *\n * @generated from rpc identity.v1.MerchantSettingsService.UpdateExperiment\n */\n updateExperiment: {\n name: \"UpdateExperiment\",\n I: UpdateExperimentRequest,\n O: UpdateExperimentResponse,\n kind: MethodKind.Unary,\n },\n /**\n * Get Experiment Result\n *\n * @generated from rpc identity.v1.MerchantSettingsService.GetExperimentResults\n */\n getExperimentResults: {\n name: \"GetExperimentResults\",\n I: GetExperimentResultsRequest,\n O: GetExperimentResultsResponse,\n kind: MethodKind.Unary,\n },\n /**\n * Get Experiment Results List\n *\n * @generated from rpc identity.v1.MerchantSettingsService.GetExperimentResultsList\n */\n getExperimentResultsList: {\n name: \"GetExperimentResultsList\",\n I: GetExperimentResultsListRequest,\n O: GetExperimentResultsListResponse,\n kind: MethodKind.Unary,\n },\n }\n};\n\n","// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file merchant/v1/payment_link.proto (package merchant.v1, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\nimport { Product } from \"./product_pb\";\nimport { Timestamp } from \"../../google/protobuf/timestamp_pb\";\n\n/**\n * Defines possible status for Payment Links\n *\n * @generated from enum merchant.v1.LinkStatus\n */\nexport const LinkStatus = proto3.makeEnum(\n \"merchant.v1.LinkStatus\",\n [\n {no: 0, name: \"LINK_STATUS_UNSPECIFIED\", localName: \"UNSPECIFIED\"},\n {no: 1, name: \"LINK_STATUS_ACTIVE\", localName: \"ACTIVE\"},\n {no: 2, name: \"LINK_STATUS_PAID\", localName: \"PAID\"},\n {no: 3, name: \"LINK_STATUS_INACTIVE\", localName: \"INACTIVE\"},\n {no: 4, name: \"LINK_STATUS_EXPIRED\", localName: \"EXPIRED\"},\n ],\n);\n\n/**\n * @generated from message merchant.v1.LinkItem\n */\nexport const LinkItem = proto3.makeMessageType(\n \"merchant.v1.LinkItem\",\n () => [\n { no: 1, name: \"product\", kind: \"message\", T: Product },\n { no: 2, name: \"quantity\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 3, name: \"unit_price\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n ],\n);\n\n/**\n * Main resource for Payment Link representing single use link created by Merchant\n * and payable by their Customers.\n *\n * @generated from message merchant.v1.PaymentLink\n */\nexport const PaymentLink = proto3.makeMessageType(\n \"merchant.v1.PaymentLink\",\n () => [\n { no: 1, name: \"link_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"merchant_order_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"description\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 5, name: \"items\", kind: \"message\", T: LinkItem, repeated: true },\n { no: 6, name: \"status\", kind: \"enum\", T: proto3.getEnumType(LinkStatus) },\n { no: 7, name: \"url\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"expiration_timestamp\", kind: \"message\", T: Timestamp },\n { no: 9, name: \"total_transaction_amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 10, name: \"currency_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 11, name: \"creation_timestamp\", jsonName: \"createdTimestamp\", kind: \"message\", T: Timestamp },\n { no: 12, name: \"purchase_order_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n","// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file merchant/v1/public_catalog_api.proto (package merchant.v1, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\nimport { Product } from \"./product_pb\";\n\n/**\n * @generated from message merchant.v1.CreateProductRequest\n */\nexport const CreateProductRequest = proto3.makeMessageType(\n \"merchant.v1.CreateProductRequest\",\n () => [\n { no: 1, name: \"name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"sku\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"description\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message merchant.v1.CreateProductResponse\n */\nexport const CreateProductResponse = proto3.makeMessageType(\n \"merchant.v1.CreateProductResponse\",\n () => [\n { no: 1, name: \"product\", kind: \"message\", T: Product },\n ],\n);\n\n","// @generated by protoc-gen-es v1.3.3 with parameter \"target=js+dts,import_extension=none\"\n// @generated from file merchant/v1/public_payment_links_api.proto (package merchant.v1, syntax proto3)\n/* eslint-disable */\n// @ts-nocheck\n\nimport { proto3 } from \"@bufbuild/protobuf\";\nimport { LinkItem, LinkStatus, PaymentLink } from \"./payment_link_pb\";\nimport { Timestamp } from \"../../google/protobuf/timestamp_pb\";\nimport { Shopper } from \"../../common/v1/shopper_pb\";\nimport { PaymentLinkCheckoutOptions, SendTo } from \"../../common/v1/common_pb\";\nimport { Cart } from \"./cart_pb\";\n\n/**\n * next number: 10\n *\n * @generated from message merchant.v1.CreateLinkRequest\n */\nexport const CreateLinkRequest = proto3.makeMessageType(\n \"merchant.v1.CreateLinkRequest\",\n () => [\n { no: 1, name: \"merchant_order_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"name\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"description\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"items\", kind: \"message\", T: LinkItem, repeated: true },\n { no: 5, name: \"expiration_timestamp\", kind: \"message\", T: Timestamp },\n { no: 6, name: \"customer\", kind: \"message\", T: Shopper },\n { no: 7, name: \"currency_code\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 8, name: \"total_transaction_amount\", kind: \"scalar\", T: 3 /* ScalarType.INT64 */ },\n { no: 9, name: \"checkout_options\", kind: \"message\", T: PaymentLinkCheckoutOptions },\n { no: 10, name: \"send_to\", kind: \"message\", T: SendTo },\n { no: 11, name: \"cart\", kind: \"message\", T: Cart },\n { no: 12, name: \"purchase_order_number\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message merchant.v1.CreateLinkResponse\n */\nexport const CreateLinkResponse = proto3.makeMessageType(\n \"merchant.v1.CreateLinkResponse\",\n () => [\n { no: 1, name: \"link\", kind: \"message\", T: PaymentLink },\n ],\n);\n\n/**\n * @generated from message merchant.v1.ListLinksRequest\n */\nexport const ListLinksRequest = proto3.makeMessageType(\n \"merchant.v1.ListLinksRequest\",\n () => [\n { no: 1, name: \"page_size\", kind: \"scalar\", T: 13 /* ScalarType.UINT32 */ },\n { no: 2, name: \"page_token\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 3, name: \"filter\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 4, name: \"order_by\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message merchant.v1.ListLinksResponse\n */\nexport const ListLinksResponse = proto3.makeMessageType(\n \"merchant.v1.ListLinksResponse\",\n () => [\n { no: 1, name: \"links\", kind: \"message\", T: PaymentLink, repeated: true },\n { no: 2, name: \"next_page_token\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message merchant.v1.UpdateLinkRequest\n */\nexport const UpdateLinkRequest = proto3.makeMessageType(\n \"merchant.v1.UpdateLinkRequest\",\n () => [\n { no: 1, name: \"link_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n { no: 2, name: \"status\", kind: \"enum\", T: proto3.getEnumType(LinkStatus) },\n ],\n);\n\n/**\n * @generated from message merchant.v1.UpdateLinkResponse\n */\nexport const UpdateLinkResponse = proto3.makeMessageType(\n \"merchant.v1.UpdateLinkResponse\",\n () => [\n { no: 1, name: \"link\", kind: \"message\", T: PaymentLink },\n ],\n);\n\n/**\n * @generated from message merchant.v1.GetLinkRequest\n */\nexport const GetLinkRequest = proto3.makeMessageType(\n \"merchant.v1.GetLinkRequest\",\n () => [\n { no: 1, name: \"link_id\", kind: \"scalar\", T: 9 /* ScalarType.STRING */ },\n ],\n);\n\n/**\n * @generated from message merchant.v1.GetLinkResponse\n */\nexport const GetLinkResponse = proto3.makeMessageType(\n \"merchant.v1.GetLinkResponse\",\n () => [\n { no: 1, name: \"link\", kind: \"message\", T: PaymentLink },\n ],\n);\n\n","import { Interceptor } from \"@connectrpc/connect\";\n\nexport const headerInterceptor: Interceptor = (next) => (req) => {\n const authToken = req.header.get(\"Authorization\");\n if (authToken) {\n const authMetadata = getAuthMetadata(authToken);\n if (authMetadata?.cid) {\n req.header.set(\"x-checkout-correlation-id\", authMetadata.cid);\n }\n if (authMetadata?.mid) {\n req.header.set(\"x-checkout-merchant-id\", authMetadata.mid);\n }\n }\n return next(req);\n};\n\nexport const createVersionHeaderInterceptor: (\n version: string\n) => Interceptor = (version) => {\n const versionHeaderInterceptor: Interceptor = (next) => (req) => {\n if (version) {\n req.header.set(\"x-checkout-version\", version);\n }\n\n return next(req);\n };\n\n return versionHeaderInterceptor;\n};\n\nconst getAuthMetadata = (token: string): Partial => {\n const parts = token.split(\".\");\n\n if (parts.length !== 3) {\n return {};\n }\n try {\n return JSON.parse(atob(parts[1])) as CheckoutIntentPayload;\n } catch (e) {\n return {};\n }\n};\n\nexport type CheckoutIntentPayload = {\n ksi: string;\n Role: Array;\n mor: string;\n od: string;\n iss: string;\n mid: string;\n oid: string;\n exp: number;\n msr: string;\n spi: string;\n iat: number;\n cid: string;\n};\n","import {\n Interceptor,\n PromiseClient,\n createPromiseClient,\n} from \"@connectrpc/connect\";\nimport { createGrpcWebTransport } from \"@connectrpc/connect-web\";\n\nimport { CheckoutFrontendV1Service } from \"../generated-connect-es/checkout/fe/v1/checkout_fe_api_connect\";\nimport {\n createVersionHeaderInterceptor,\n headerInterceptor,\n} from \"./header-interceptor\";\n\nexport const getFeClient = (\n baseUrl: string,\n target = \"NA\",\n version: string\n): PromiseClient => {\n const logger: Interceptor = (next) => async (req) => {\n console.debug(`sending message to ${req.url} with message`, req.message);\n const res = await next(req);\n if (!res.stream) {\n console.debug(\"response:\", res.message);\n }\n return res;\n };\n\n // Default interceptors\n const interceptors = [\n headerInterceptor,\n createVersionHeaderInterceptor(version),\n ];\n\n // If dev or local log req and res\n if (\n baseUrl.includes(\"local\") ||\n baseUrl.includes(\"dev\") ||\n target === \"c7-local\" ||\n target === \"c7-dev\"\n ) {\n interceptors.push(logger);\n }\n\n const transport = createGrpcWebTransport({\n baseUrl,\n interceptors,\n });\n\n return createPromiseClient(\n CheckoutFrontendV1Service,\n transport\n );\n};\n"],"names":["NullValue","proto3","Struct","Value","options","json","k","v","ListValue","e","DoubleValue","ScalarType","m","value","FloatValue","Int64Value","UInt64Value","Int32Value","UInt32Value","BoolValue","StringValue","BytesValue","LocalizedText","Duration","match","longSeconds","protoInt64","nanosStr","text","QuotaFailure_Violation","PreconditionFailure_Violation","BadRequest","BadRequest_FieldViolation","Help_Link","PostalAddress","Timestamp","matches","ms","z","date","ScaChallengeWindowSize","BrowserInfo","PaymentCardScaRequest","PaymentCardScaRequest_ScaExemption","PaymentCardScaRequest_ChallengeType","CardholderAccountHistory","PurchaseInfo","RequestorAuthenticationInfo","RequestorPriorTransactionAuthenticationInfo","PaymentCardScaRequest_AuthenticationType","PurchaseInfo_MerchantFraudRiskAssessment","PurchaseInfo_TransactionType","PurchaseInfo_MerchantFraudRiskAssessment_ShippingMethod","PurchaseInfo_MerchantFraudRiskAssessment_DeliveryType","RequestorAuthenticationInfo_RequestorAuthenticationMethod","RequestorPriorTransactionAuthenticationInfo_PriorAuthenticationMethod","ThreeDsTransactionDetails","CardNetwork","CardType","PreferredRoutingInitiator","CardInteractionType","DebitAcceptanceType","EcpBankAccountType","AchVerificationType","GooglePayPaymentMethodType","GooglePayTokenizationType","GooglePayProtocolVersion","PaymentGatewayType","CookiePolicy","PaymentMethodType","AuthMethod","CitMessageType","CaptureMethod","PayRequestStatus","TokenType","TokenizationStatus","BillingAddressCollectionFields","OrderOrigination","OnboardingStatus","UnitTime","AccessPrivilege","Operation","GlobalMandateType","RefundRequestStatus","CancelRequestStatus","TipRequestStatus","NonceGenerationRequestStatus","CaptureRequestStatus","RefundPaymentMethod","LpmType","UserType","MerchantEventSource","DlqStatus","MerchantSettingsSource","Money","Address","BusinessAddress","LocalizedString","PaymentMethodSettings","PaymentMethodSettings_CardPaymentSetting","EncryptedCard","EncryptedCardHolderName","PaymentCardOrTokenPaymentMethod","OtherPaymentMethod","CardPresentPaymentMethod","CashPaymentMethod","AchPaymentMethod","EncryptedElectronicCheck","EncryptedPayByBank","ApplePayPaymentHeader","ApplePayEncryptedPaymentBundle","GooglePayAssuranceDetailsSpecification","GooglePayCardInfo","GooglePayTokenData","GooglePayPaymentMethodTokenizationData","GooglePayPaymentMethodData","GooglePayEncryptedPaymentBundle","PazeEncryptedPaymentBundle","EncryptedWalletPaymentBundle","EncryptedWallet","EncryptedStoredPaymentMethod","StoredPaymentMethodUpdateDetails","EncryptedSepa","CardUpdateDetails","EcpUpdateDetails","SepaUpdateDetails","Lpm","CheckoutOptions","AuthOptions","CaptureOptions","ShopperProfileOptions","PaymentMethodOptions","FraudCheckOptions","SettlementSplitOptions","PaymentLinkCheckoutOptions","SettlementSplitOptions_Split","SettlementSplitOptions_Split_UsPartyIdentifier","RefundSplitOptions","RefundSplitOptions_Split","SoftMerchantDescriptor","CITOptions","AuthOptions_CofOptions","SoftMerchantDescriptors","SubMerchantSupplementalData","AuthOptions_CofOptions_CofTransactionType","AuthOptions_CofOptions_RecurringPaymentDetails","AuthOptions_CofOptions_InstallmentPaymentDetails","MerchantIdentification","TokenizedPaymentMethod","AuthAccount","ShippingMethod","MandateAcknowledgement_Mandates","Device","MandateAcknowledgement_Consent","MandateAcknowledgement_AcceptedFlag","MandateAcknowledgement_MandateType","MandateAcknowledgement_ConsentType","MandateAcknowledgement_AcknowledgementType","ExpiresAfter","ExpiryInfo","CardTypeIndicators","GlobalMandateDetails","GlobalMandateVerbiage","Channel","Channel_OrderChannelType","BrowserData","MerchantInfo","Dda","FinancialInstitution","SendTo","Date","ProductType","MerchantSettingsStatus","ExpirationDateFormat","DomainStatusWithApple","PayPalButtonColor","PayPalButtonLabel","PaymentAccountFieldMask","IntegrationType","Layout","IndustryType","FraudCheckTimeoutHandlingMode","FraudCheckInReviewHandlingMode","FraudCheckData","PaymentButtonName","SupportedLanguages","ExperimentStatus","MerchantSettings","UISettings","FraudCheck","PaymentMethods","OrdersOnHpp","NotificationSubscription","Mandate","SecuritySettings","PageHeader","L2L3DataConfig","Segment","TaxIntegration","MerchantAcceptedDomains","CreateSegmentPayload","CardPaymentMethod","WalletPaymentMethod","EcpPaymentMethod","SepaPaymentMethod","AltPaymentMethod","PayByBankPaymentMethod","GiftCardPaymentMethod","SupportedCards","BillingAddressCollection","CardPaymentMethod_SupportedDebitMethod","ApplePay","GooglePay","Paze","Alipay","ApplePayButton","MerchantDomain","Paypal","WechatPay","GooglePay_Gateway","GooglePay_GooglePayButton","Ideal","Sofort","Giropay","Trustly","MandateVerbiage","ThreeDs","MerchantLogoSettings","PaymentLinksNotifications","CustomerPblNotifications","MerchantPblNotifications","CreateMerchantSettingsPayload","ReferenceData","ReferenceData_PaymentMethods","ReferenceData_PaymentMethods_ECP","ReferenceData_PaymentMethods_CardNetworks","ReferenceData_PaymentMethods_Wallet","ReferenceData_PaymentMethods_SEPA","ReferenceData_PaymentMethods_PayByBank","ReferenceData_PaymentMethods_AltMops","ReferenceData_PaymentMethods_GiftCard","ReferenceData_PaymentMethods_AltMops_WechatPay","ReferenceData_PaymentMethods_AltMops_GiroPay","ReferenceData_PaymentMethods_AltMops_Sofort","ReferenceData_PaymentMethods_AltMops_Trustly","ReferenceData_PaymentMethods_AltMops_Ideal","ReferenceData_PaymentMethods_AltMops_PayPal","MerchantSettingsMeta","Experiment","ExperimentResult","TimeToCompleteHistogram","ExperimentWithResults","CreateExperimentPayload","PayRequestErrorCode","RefundErrorCode","CancelErrorCode","TipErrorCode","NonceGenerationErrorCode","CaptureErrorCode","DynamicDepositAccountType","PaymentMethodTypeCode","ElectronicCheck","Card","DigitalWallet","Sepa","LpmDetails","PayByBankResponse","PaymentMethod","RateMode","ChargeType","DiscountType","TaxType","SourceType","TaxRate","TransactionCharge","SubMerchantInfo","Discount","Product","OrderStatus","OrderSplitType","RetryType","RefundStatus","CancelStatus","LineItem","LineItem_Price","ShippingMethod$1","Order","Refund","Cancel","FraudCheckStatus","WalletType","Transaction","DebitTransaction_State","PayRequestDetails","PayRequestResult","EncryptedPaymentMethod","ShopperProfileDetails","FraudCheckResult","PaymentGatewayResponse","PaymentMethod$1","Lpm$1","PrepayPaymentMethod","DecryptedCard","DecryptedElectronicCheck","DecryptedPayByBank","DecryptedDigitalCard","DecryptedWallet","DecryptedStoredPaymentMethod","DecryptedStoredPaymentMethod_StoredPaymentType","DecryptedSepa","PaymentRequest","Capture","Authorization","PaymentProfile","PaymentMethodSummary","CardSummary","ElectronicCheckSummary","SepaSummary","PayByBankSummary","RefundRequestDetails","PaymentGatewayRefundResponse","RefundRequestResult","PaymentGatewayPatchResponse","RefundTransaction_State","CancelRequestDetails","CancelRequestResult","CancelTransaction_State","Link","CaptureTransaction_State","CaptureRequestDetails","CaptureRequestResult","Cart","JourneyType","ProfileSource","Shopper","ShopperProfile","ProfileAddress","Any","typeName","messageType","typeUrl","message","copy","target","registry","type","name","url","slash","any","BillingType","BillingEventPayload","CheckoutTraceType","RequestType","CheckoutTraceEventPayload","PaymentEventPayload","OrderEventPayload","OrderEventPayload_SubType","Event","Event_Type","Event_Metadata","TypedPayload","Event_Client","SessionType","GetMerchantSettingsRequest","GetMerchantSettingsResponse","GetMerchantSettingsResponse_MerchantSettings","GetEncryptionKeyRequest","GetEncryptionKeyResponse","GetHostedFieldsSettingsRequest","GetHostedFieldsSettingsResponse","PayRequest","PayResponse","PayResponse_Status","PayResponse_DebugInfo","PaymentMethod_Type","RequestApplePayPaymentSessionRequest","RequestApplePayPaymentSessionResponse","GetCheckoutSessionRequest","GetCheckoutSessionResponse","GetCheckoutSessionResponse_DebugInfo","CreateSettingsSessionRequest","CreateSettingsSessionResponse","SendEventsRequest","SendEventsResponse","UpdateCartRequest","UpdateCartResponse","DeletePaymentProfilePaymentMethodRequest","DeletePaymentProfilePaymentMethodResponse","GetBinDataRequest","GetBinDataResponse","UpdateDefaultPaymentProfilePaymentMethodRequest","UpdateDefaultPaymentProfilePaymentMethodResponse","CheckoutFrontendV1Service","MethodKind","PaymentType","LinkSource","LinkStatus","FieldMask","protoCamelCase","snakeCase","capNext","b","i","c","p","camelToSnake","str","sc","letter","MopConfiguration","StratusConfiguration","JpmcMerchant","WalletConfig","RevisionMetadata","MerchantBundleSettings","LinkItem","PaymentLink","headerInterceptor","next","req","authToken","authMetadata","getAuthMetadata","createVersionHeaderInterceptor","version","token","parts","getFeClient","baseUrl","logger","res","interceptors","transport","createGrpcWebTransport","createPromiseClient"],"mappings":"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"}