Current section
Files
Jump to
Current section
Files
lib/docusign/model/template_role.ex
# NOTE: This file is auto generated by OpenAPI Generator
# https://openapi-generator.tech
# Do not edit this file manually.
defmodule DocuSign.Model.TemplateRole do
@moduledoc """
Information about a specific role.
"""
alias DocuSign.Deserializer
alias DocuSign.Model.EnvelopeRecipientTabs
alias DocuSign.Model.RecipientAdditionalNotification
alias DocuSign.Model.RecipientEmailNotification
alias DocuSign.Model.RecipientPhoneNumber
alias DocuSign.Model.RecipientSignatureProvider
defstruct [
:accessCode,
:additionalNotifications,
:clientUserId,
:defaultRecipient,
:deliveryMethod,
:email,
:emailNotification,
:embeddedRecipientStartURL,
:inPersonSignerName,
:name,
:phoneNumber,
:recipientSignatureProviders,
:roleName,
:routingOrder,
:signingGroupId,
:tabs
]
@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__{
:accessCode => String.t() | nil,
:additionalNotifications => [RecipientAdditionalNotification.t()] | nil,
:clientUserId => String.t() | nil,
:defaultRecipient => String.t() | nil,
:deliveryMethod => String.t() | nil,
:email => String.t() | nil,
:emailNotification => RecipientEmailNotification.t() | nil,
:embeddedRecipientStartURL => String.t() | nil,
:inPersonSignerName => String.t() | nil,
:name => String.t() | nil,
:phoneNumber => RecipientPhoneNumber.t() | nil,
:recipientSignatureProviders => [RecipientSignatureProvider.t()] | nil,
:roleName => String.t() | nil,
:routingOrder => String.t() | nil,
:signingGroupId => String.t() | nil,
:tabs => EnvelopeRecipientTabs.t() | nil
}
def decode(value) do
value
|> Deserializer.deserialize(
:additionalNotifications,
:list,
RecipientAdditionalNotification
)
|> Deserializer.deserialize(
:emailNotification,
:struct,
RecipientEmailNotification
)
|> Deserializer.deserialize(
:phoneNumber,
:struct,
RecipientPhoneNumber
)
|> Deserializer.deserialize(
:recipientSignatureProviders,
:list,
RecipientSignatureProvider
)
|> Deserializer.deserialize(
:tabs,
:struct,
EnvelopeRecipientTabs
)
|> then(&struct(__MODULE__, &1))
end
end