Current section

Files

Jump to
docusign lib docusign model user_account_management_granular_information.ex
Raw

lib/docusign/model/user_account_management_granular_information.ex

# NOTE: This file is auto generated by OpenAPI Generator
# https://openapi-generator.tech
# Do not edit this file manually.
defmodule DocuSign.Model.UserAccountManagementGranularInformation do
@moduledoc """
Describes which account management capabilities a user has.
"""
alias DocuSign.Deserializer
alias DocuSign.Model.SettingsMetadata
defstruct [
:canManageAccountSecuritySettings,
:canManageAccountSecuritySettingsMetadata,
:canManageAccountSettings,
:canManageAccountSettingsMetadata,
:canManageAdmins,
:canManageAdminsMetadata,
:canManageConnect,
:canManageConnectMetadata,
:canManageDocumentRetention,
:canManageDocumentRetentionMetadata,
:canManageEnvelopeTransfer,
:canManageEnvelopeTransferMetadata,
:canManageGroupsButNotUsers,
:canManageGroupsButNotUsersMetadata,
:canManageJointAgreements,
:canManageJointAgreementsMetadata,
:canManageReporting,
:canManageReportingMetadata,
:canManageSharing,
:canManageSharingMetadata,
:canManageSigningGroups,
:canManageSigningGroupsMetadata,
:canManageStamps,
:canManageStampsMetadata,
:canManageUsers,
:canManageUsersMetadata,
:canViewUsers
]
@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__{
:canManageAccountSecuritySettings => String.t() | nil,
:canManageAccountSecuritySettingsMetadata => SettingsMetadata.t() | nil,
:canManageAccountSettings => String.t() | nil,
:canManageAccountSettingsMetadata => SettingsMetadata.t() | nil,
:canManageAdmins => String.t() | nil,
:canManageAdminsMetadata => SettingsMetadata.t() | nil,
:canManageConnect => String.t() | nil,
:canManageConnectMetadata => SettingsMetadata.t() | nil,
:canManageDocumentRetention => String.t() | nil,
:canManageDocumentRetentionMetadata => SettingsMetadata.t() | nil,
:canManageEnvelopeTransfer => String.t() | nil,
:canManageEnvelopeTransferMetadata => SettingsMetadata.t() | nil,
:canManageGroupsButNotUsers => String.t() | nil,
:canManageGroupsButNotUsersMetadata => SettingsMetadata.t() | nil,
:canManageJointAgreements => String.t() | nil,
:canManageJointAgreementsMetadata => SettingsMetadata.t() | nil,
:canManageReporting => String.t() | nil,
:canManageReportingMetadata => SettingsMetadata.t() | nil,
:canManageSharing => String.t() | nil,
:canManageSharingMetadata => SettingsMetadata.t() | nil,
:canManageSigningGroups => String.t() | nil,
:canManageSigningGroupsMetadata => SettingsMetadata.t() | nil,
:canManageStamps => String.t() | nil,
:canManageStampsMetadata => SettingsMetadata.t() | nil,
:canManageUsers => String.t() | nil,
:canManageUsersMetadata => SettingsMetadata.t() | nil,
:canViewUsers => String.t() | nil
}
def decode(value) do
value
|> Deserializer.deserialize(
:canManageAccountSecuritySettingsMetadata,
:struct,
SettingsMetadata
)
|> Deserializer.deserialize(
:canManageAccountSettingsMetadata,
:struct,
SettingsMetadata
)
|> Deserializer.deserialize(
:canManageAdminsMetadata,
:struct,
SettingsMetadata
)
|> Deserializer.deserialize(
:canManageConnectMetadata,
:struct,
SettingsMetadata
)
|> Deserializer.deserialize(
:canManageDocumentRetentionMetadata,
:struct,
SettingsMetadata
)
|> Deserializer.deserialize(
:canManageEnvelopeTransferMetadata,
:struct,
SettingsMetadata
)
|> Deserializer.deserialize(
:canManageGroupsButNotUsersMetadata,
:struct,
SettingsMetadata
)
|> Deserializer.deserialize(
:canManageJointAgreementsMetadata,
:struct,
SettingsMetadata
)
|> Deserializer.deserialize(
:canManageReportingMetadata,
:struct,
SettingsMetadata
)
|> Deserializer.deserialize(
:canManageSharingMetadata,
:struct,
SettingsMetadata
)
|> Deserializer.deserialize(
:canManageSigningGroupsMetadata,
:struct,
SettingsMetadata
)
|> Deserializer.deserialize(
:canManageStampsMetadata,
:struct,
SettingsMetadata
)
|> Deserializer.deserialize(
:canManageUsersMetadata,
:struct,
SettingsMetadata
)
|> then(&struct(__MODULE__, &1))
end
end