package photos type Album struct { ID string `json:"id"` Title string `json:"title"` } type Asset struct { ID string `json:"id"` Filename string `json:"filename"` Cloud string `json:"cloud"` MediaType string `json:"mediaType"` PixelWidth int `json:"pixelWidth"` PixelHeight int `json:"pixelHeight"` CreationDate *string `json:"creationDate,omitempty"` Duration float64 `json:"duration,omitempty"` IsFavorite bool `json:"isFavorite,omitempty"` HasAdjustments bool `json:"hasAdjustments,omitempty"` Resources []AssetResource `json:"resources,omitempty"` } type AssetResource struct { Type string `json:"type"` Filename string `json:"filename"` UTI string `json:"uti"` Local bool `json:"local"` } type ExportResult struct { Filename string `json:"filename"` Size int64 `json:"size"` Cloud string `json:"cloud"` Skipped bool `json:"skipped,omitempty"` Error string `json:"error,omitempty"` } type CollectionNode struct { ID string `json:"id,omitempty"` Name string `json:"name"` Kind string `json:"kind"` Children []CollectionNode `json:"children,omitempty"` } type AlbumsResponse struct { Albums []Album `json:"albums"` } type AssetsResponse struct { Assets []Asset `json:"assets"` Total int `json:"total"` } type TreeResponse struct { Collections []CollectionNode `json:"collections"` } type ErrorResponse struct { Error string `json:"error"` } type ExportResultResponse struct { ExportResult }