# NOTE: This file is auto generated by OpenAPI Generator 7.12.0 (https://openapi-generator.tech). # Do not edit this file manually. defmodule DocuSign.Model.Envelope do @moduledoc """ """ alias DocuSign.Deserializer alias DocuSign.Model.AccountCustomFields alias DocuSign.Model.Attachment alias DocuSign.Model.EmailSettings alias DocuSign.Model.EnvelopeCustomMetadata alias DocuSign.Model.EnvelopeDocument alias DocuSign.Model.EnvelopeLocks alias DocuSign.Model.EnvelopeMetadata alias DocuSign.Model.EnvelopeRecipients alias DocuSign.Model.Folder alias DocuSign.Model.Notification alias DocuSign.Model.PowerForm alias DocuSign.Model.UserInfo alias DocuSign.Model.Workflow @derive Jason.Encoder defstruct [ :accessControlListBase64, :allowComments, :allowMarkup, :allowReassign, :allowViewHistory, :anySigner, :asynchronous, :attachmentsUri, :authoritativeCopy, :authoritativeCopyDefault, :autoNavigation, :brandId, :brandLock, :burnDefaultTabData, :certificateUri, :completedDateTime, :copyRecipientData, :createdDateTime, :customFields, :customFieldsUri, :dataPopulationScope, :declinedDateTime, :deletedDateTime, :deliveredDateTime, :disableResponsiveDocument, :documentBase64, :documentsCombinedUri, :documentsUri, :emailBlurb, :emailSettings, :emailSubject, :enableWetSign, :enforceSignerVisibility, :envelopeAttachments, :envelopeCustomMetadata, :envelopeDocuments, :envelopeId, :envelopeIdStamping, :envelopeLocation, :envelopeMetadata, :envelopeUri, :expireAfter, :expireDateTime, :expireEnabled, :externalEnvelopeId, :folders, :hasComments, :hasDocumentTemplateLibrary, :hasFormDataChanged, :hasWavFile, :holder, :initialSentDateTime, :is21CFRPart11, :isDynamicEnvelope, :isSignatureProviderEnvelope, :lastModifiedDateTime, :location, :lockInformation, :messageLock, :notification, :notificationUri, :powerForm, :purgeCompletedDate, :purgeRequestDate, :purgeState, :recipients, :recipientsLock, :recipientsUri, :sender, :sentDateTime, :signerCanSignOnMobile, :signingLocation, :status, :statusChangedDateTime, :statusDateTime, :templatesUri, :transactionId, :uSigState, :useDisclosure, :voidedDateTime, :voidedReason, :workflow ] @type t :: %__MODULE__{ :accessControlListBase64 => String.t() | nil, :allowComments => String.t() | nil, :allowMarkup => String.t() | nil, :allowReassign => String.t() | nil, :allowViewHistory => String.t() | nil, :anySigner => String.t() | nil, :asynchronous => String.t() | nil, :attachmentsUri => String.t() | nil, :authoritativeCopy => String.t() | nil, :authoritativeCopyDefault => String.t() | nil, :autoNavigation => String.t() | nil, :brandId => String.t() | nil, :brandLock => String.t() | nil, :burnDefaultTabData => String.t() | nil, :certificateUri => String.t() | nil, :completedDateTime => String.t() | nil, :copyRecipientData => String.t() | nil, :createdDateTime => String.t() | nil, :customFields => AccountCustomFields.t() | nil, :customFieldsUri => String.t() | nil, :dataPopulationScope => String.t() | nil, :declinedDateTime => String.t() | nil, :deletedDateTime => String.t() | nil, :deliveredDateTime => String.t() | nil, :disableResponsiveDocument => String.t() | nil, :documentBase64 => String.t() | nil, :documentsCombinedUri => String.t() | nil, :documentsUri => String.t() | nil, :emailBlurb => String.t() | nil, :emailSettings => EmailSettings.t() | nil, :emailSubject => String.t() | nil, :enableWetSign => String.t() | nil, :enforceSignerVisibility => String.t() | nil, :envelopeAttachments => [Attachment.t()] | nil, :envelopeCustomMetadata => EnvelopeCustomMetadata.t() | nil, :envelopeDocuments => [EnvelopeDocument.t()] | nil, :envelopeId => String.t() | nil, :envelopeIdStamping => String.t() | nil, :envelopeLocation => String.t() | nil, :envelopeMetadata => EnvelopeMetadata.t() | nil, :envelopeUri => String.t() | nil, :expireAfter => String.t() | nil, :expireDateTime => String.t() | nil, :expireEnabled => String.t() | nil, :externalEnvelopeId => String.t() | nil, :folders => [Folder.t()] | nil, :hasComments => String.t() | nil, :hasDocumentTemplateLibrary => String.t() | nil, :hasFormDataChanged => String.t() | nil, :hasWavFile => String.t() | nil, :holder => String.t() | nil, :initialSentDateTime => String.t() | nil, :is21CFRPart11 => String.t() | nil, :isDynamicEnvelope => String.t() | nil, :isSignatureProviderEnvelope => String.t() | nil, :lastModifiedDateTime => String.t() | nil, :location => String.t() | nil, :lockInformation => EnvelopeLocks.t() | nil, :messageLock => String.t() | nil, :notification => Notification.t() | nil, :notificationUri => String.t() | nil, :powerForm => PowerForm.t() | nil, :purgeCompletedDate => String.t() | nil, :purgeRequestDate => String.t() | nil, :purgeState => String.t() | nil, :recipients => EnvelopeRecipients.t() | nil, :recipientsLock => String.t() | nil, :recipientsUri => String.t() | nil, :sender => UserInfo.t() | nil, :sentDateTime => String.t() | nil, :signerCanSignOnMobile => String.t() | nil, :signingLocation => String.t() | nil, :status => String.t() | nil, :statusChangedDateTime => String.t() | nil, :statusDateTime => String.t() | nil, :templatesUri => String.t() | nil, :transactionId => String.t() | nil, :uSigState => String.t() | nil, :useDisclosure => String.t() | nil, :voidedDateTime => String.t() | nil, :voidedReason => String.t() | nil, :workflow => Workflow.t() | nil } def decode(value) do value |> Deserializer.deserialize(:customFields, :struct, AccountCustomFields) |> Deserializer.deserialize(:emailSettings, :struct, EmailSettings) |> Deserializer.deserialize(:envelopeAttachments, :list, Attachment) |> Deserializer.deserialize( :envelopeCustomMetadata, :struct, EnvelopeCustomMetadata ) |> Deserializer.deserialize(:envelopeDocuments, :list, EnvelopeDocument) |> Deserializer.deserialize(:envelopeMetadata, :struct, EnvelopeMetadata) |> Deserializer.deserialize(:folders, :list, Folder) |> Deserializer.deserialize(:lockInformation, :struct, EnvelopeLocks) |> Deserializer.deserialize(:notification, :struct, Notification) |> Deserializer.deserialize(:powerForm, :struct, PowerForm) |> Deserializer.deserialize(:recipients, :struct, EnvelopeRecipients) |> Deserializer.deserialize(:sender, :struct, UserInfo) |> Deserializer.deserialize(:workflow, :struct, Workflow) end end