Current section
Files
Jump to
Current section
Files
lib/docusign/model/workflow.ex
# NOTE: This file is auto generated by OpenAPI Generator
# https://openapi-generator.tech
# Do not edit this file manually.
defmodule DocuSign.Model.Workflow do
@moduledoc """
Describes the workflow for an envelope.
"""
alias DocuSign.Deserializer
alias DocuSign.Model.ScheduledSending
alias DocuSign.Model.WorkflowStep
defstruct [
:currentWorkflowStepId,
:resumeDate,
:scheduledSending,
:workflowStatus,
:workflowSteps
]
@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__{
:currentWorkflowStepId => String.t() | nil,
:resumeDate => String.t() | nil,
:scheduledSending => ScheduledSending.t() | nil,
:workflowStatus => String.t() | nil,
:workflowSteps => [WorkflowStep.t()] | nil
}
def decode(value) do
value
|> Deserializer.deserialize(
:scheduledSending,
:struct,
ScheduledSending
)
|> Deserializer.deserialize(
:workflowSteps,
:list,
WorkflowStep
)
|> then(&struct(__MODULE__, &1))
end
end