# 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.Workspace do @moduledoc """ A Docusign workspace is a collaboration area for sharing files and data. """ alias DocuSign.Deserializer alias DocuSign.Model.WorkspaceSettings alias DocuSign.Model.WorkspaceUser @derive Jason.Encoder defstruct [ :billableAccountId, :callerInformation, :created, :createdByInformation, :lastModified, :lastModifiedByInformation, :settings, :status, :workspaceBaseUrl, :workspaceDescription, :workspaceId, :workspaceName, :workspaceUri ] @type t :: %__MODULE__{ :billableAccountId => String.t() | nil, :callerInformation => WorkspaceUser.t() | nil, :created => String.t() | nil, :createdByInformation => WorkspaceUser.t() | nil, :lastModified => String.t() | nil, :lastModifiedByInformation => WorkspaceUser.t() | nil, :settings => WorkspaceSettings.t() | nil, :status => String.t() | nil, :workspaceBaseUrl => String.t() | nil, :workspaceDescription => String.t() | nil, :workspaceId => String.t() | nil, :workspaceName => String.t() | nil, :workspaceUri => String.t() | nil } def decode(value) do value |> Deserializer.deserialize(:callerInformation, :struct, WorkspaceUser) |> Deserializer.deserialize(:createdByInformation, :struct, WorkspaceUser) |> Deserializer.deserialize(:lastModifiedByInformation, :struct, WorkspaceUser) |> Deserializer.deserialize(:settings, :struct, WorkspaceSettings) end end