# NOTE: This file is auto generated by OpenAPI Generator 7.17.0 (https://openapi-generator.tech). # Do not edit this file manually. defmodule MollieAPI.Model.SessionResponse do @moduledoc """ """ @derive JSON.Encoder defstruct [ :resource, :id, :mode, :clientAccessToken, :status, :amount, :description, :lines, :redirectUrl, :billingAddress, :shippingAddress, :customerId, :sequenceType, :metadata, :payment, :profileId, :testmode, :createdAt, :_links ] @type t :: %__MODULE__{ :resource => any(), :id => String.t, :mode => MollieAPI.Model.Mode.t, :clientAccessToken => any(), :status => MollieAPI.Model.SessionStatus.t, :amount => MollieAPI.Model.Amount.t, :description => any(), :lines => [MollieAPI.Model.SessionLineItemResponse.t], :redirectUrl => any(), :billingAddress => MollieAPI.Model.PaymentAddress.t | nil, :shippingAddress => MollieAPI.Model.PaymentAddress.t | nil, :customerId => String.t | nil, :sequenceType => MollieAPI.Model.SessionSequenceTypeResponse.t | nil, :metadata => %{optional(String.t) => any()} | nil, :payment => MollieAPI.Model.EntitySessionPayment.t | nil, :profileId => String.t, :testmode => boolean() | nil, :createdAt => String.t, :_links => MollieAPI.Model.EntitySessionLinks.t } alias MollieAPI.Deserializer def decode(value) do value |> Deserializer.deserialize(:mode, :struct, MollieAPI.Model.Mode) |> Deserializer.deserialize(:status, :struct, MollieAPI.Model.SessionStatus) |> Deserializer.deserialize(:amount, :struct, MollieAPI.Model.Amount) |> Deserializer.deserialize(:lines, :list, MollieAPI.Model.SessionLineItemResponse) |> Deserializer.deserialize(:billingAddress, :struct, MollieAPI.Model.PaymentAddress) |> Deserializer.deserialize(:shippingAddress, :struct, MollieAPI.Model.PaymentAddress) |> Deserializer.deserialize(:sequenceType, :struct, MollieAPI.Model.SessionSequenceTypeResponse) |> Deserializer.deserialize(:payment, :struct, MollieAPI.Model.EntitySessionPayment) |> Deserializer.deserialize(:_links, :struct, MollieAPI.Model.EntitySessionLinks) end end