# NOTE: This file is auto generated by OpenAPI Generator 7.22.0 (https://openapi-generator.tech).
# Do not edit this file manually.
defmodule Spatio.Model.FilesAndFoldersResponse do
@moduledoc """
Aggregated `{files, folders, accounts}` envelope used by the renderer's file-browser. Calls `ListFiles` and `ListFolders` in parallel and merges the results — saves a round-trip when the UI shows both side-by-side.
"""
@derive JSON.Encoder
defstruct [
:files,
:folders,
:accounts,
:total,
:hasMore,
:nextOffset
]
@type t :: %__MODULE__{
:files => [Spatio.Model.SpatioFile.t] | nil,
:folders => [Spatio.Model.Folder.t] | nil,
:accounts => [Spatio.Model.AccountStatus.t] | nil,
:total => integer(),
:hasMore => boolean(),
:nextOffset => integer() | nil
}
alias Spatio.Deserializer
def decode(value) do
value
|> Deserializer.deserialize(:files, :list, Spatio.Model.SpatioFile)
|> Deserializer.deserialize(:folders, :list, Spatio.Model.Folder)
|> Deserializer.deserialize(:accounts, :list, Spatio.Model.AccountStatus)
end
end