encode<V> static method
Implementation
static V encode<V>(
PaymentMethodUpdateOptions instance,
Encoder<V> encoder,
) {
final container = encoder.container<String>();
if (instance.billingDetails != null) {
PaymentIntentBillingDetails.encode(
instance.billingDetails!,
container.nestedSingleValueContainer('billing_details').encoder,
);
}
if (instance.card != null) {
PaymentMethodUpdateOptionsCard.encode(
instance.card!,
container.nestedSingleValueContainer('card').encoder,
);
}
if (instance.expand != null) {
container.encodeList(
'expand',
(container) =>
instance.expand!.forEach((el) => container.encodeString(el)),
);
}
if (instance.link != null) {
container.encodePrimitive(
'link',
instance.link!,
);
}
if (instance.metadata != null) {
container.encodeMap(
'metadata',
(container) => instance.metadata!.forEach((
key,
value,
) =>
container.encodeString(
key,
value,
)),
);
}
if (instance.usBankAccount != null) {
PaymentMethodUsBankAccount.encode(
instance.usBankAccount!,
container.nestedSingleValueContainer('us_bank_account').encoder,
);
}
return container.value;
}