# NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). # https://openapi-generator.tech # Do not edit the class manually. defmodule OpenXchangeClient.Model.FolderData do @moduledoc """ """ @derive [Poison.Encoder] defstruct [ :id, :created_by, :modified_by, :creation_date, :last_modified, :last_modified_utc, :folder_id, :title, :module, :type, :subfolders, :own_rights, :permissions, :summary, :standard_folder, :total, :new, :unread, :deleted, :capabilities, :subscribed, :subscr_subflds, :standard_folder_type, :supported_capabilities, :account_id, :"com.openexchange.publish.publicationFlag", :"com.openexchange.subscribe.subscriptionFlag", :"com.openexchange.folderstorage.displayName", :"com.openexchange.share.extendedPermissions", :"com.openexchange.calendar.extendedProperties", :"com.openexchange.calendar.config", :"com.openexchange.calendar.provider" ] @type t :: %__MODULE__{ :id => String.t() | nil, :created_by => String.t() | nil, :modified_by => String.t() | nil, :creation_date => integer() | nil, :last_modified => integer() | nil, :last_modified_utc => integer() | nil, :folder_id => String.t() | nil, :title => String.t() | nil, :module => String.t() | nil, :type => integer() | nil, :subfolders => boolean() | nil, :own_rights => integer() | nil, :permissions => [OpenXchangeClient.Model.FolderPermission.t()] | nil, :summary => String.t() | nil, :standard_folder => boolean() | nil, :total => integer() | nil, :new => integer() | nil, :unread => integer() | nil, :deleted => integer() | nil, :capabilities => integer() | nil, :subscribed => boolean() | nil, :subscr_subflds => boolean() | nil, :standard_folder_type => integer() | nil, :supported_capabilities => [String.t()] | nil, :account_id => String.t() | nil, :"com.openexchange.publish.publicationFlag" => boolean() | nil, :"com.openexchange.subscribe.subscriptionFlag" => boolean() | nil, :"com.openexchange.folderstorage.displayName" => String.t() | nil, :"com.openexchange.share.extendedPermissions" => [OpenXchangeClient.Model.FolderExtendedPermission.t()] | nil, :"com.openexchange.calendar.extendedProperties" => OpenXchangeClient.Model.FolderDataComOpenexchangeCalendarExtendedProperties.t() | nil, :"com.openexchange.calendar.config" => OpenXchangeClient.Model.FolderDataComOpenexchangeCalendarConfig.t() | nil, :"com.openexchange.calendar.provider" => String.t() | nil } end defimpl Poison.Decoder, for: OpenXchangeClient.Model.FolderData do import OpenXchangeClient.Deserializer def decode(value, options) do value |> deserialize(:permissions, :list, OpenXchangeClient.Model.FolderPermission, options) |> deserialize( :"com.openexchange.share.extendedPermissions", :list, OpenXchangeClient.Model.FolderExtendedPermission, options ) |> deserialize( :"com.openexchange.calendar.extendedProperties", :struct, OpenXchangeClient.Model.FolderDataComOpenexchangeCalendarExtendedProperties, options ) |> deserialize( :"com.openexchange.calendar.config", :struct, OpenXchangeClient.Model.FolderDataComOpenexchangeCalendarConfig, options ) end end