# NOTE: This file is auto generated by OpenAPI Generator
# https://openapi-generator.tech
# Do not edit this file manually.
defmodule DocuSign.Model.BccEmailArchive do
@moduledoc """
The `EmailArchive` resource provides methods for managing your email archive configuration, which consists of the BCC email address or addresses that you want to use to archive Docusign emails. Each account can use up to five BCC email addresses for archiving purposes.
"""
alias DocuSign.Deserializer
alias DocuSign.Model.BccEmailArchiveHistory
defstruct [
:bccEmailArchiveHistory,
:endPosition,
:nextUri,
:previousUri,
:resultSetSize,
:startPosition,
:totalSetSize
]
@doc false
defimpl Jason.Encoder, for: __MODULE__ do
def encode(struct, opts) do
struct
|> Map.from_struct()
|> Enum.reject(fn {_k, v} -> is_nil(v) end)
|> Map.new()
|> Jason.Encode.map(opts)
end
end
@type t :: %__MODULE__{
:bccEmailArchiveHistory => [BccEmailArchiveHistory.t()] | nil,
:endPosition => String.t() | nil,
:nextUri => String.t() | nil,
:previousUri => String.t() | nil,
:resultSetSize => String.t() | nil,
:startPosition => String.t() | nil,
:totalSetSize => String.t() | nil
}
def decode(value) do
value
|> Deserializer.deserialize(
:bccEmailArchiveHistory,
:list,
BccEmailArchiveHistory
)
|> then(&struct(__MODULE__, &1))
end
end