use std::collections::HashMap;
use bytes::Bytes;
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct PutResult {
pub etag: String,
pub size: u64,
}
#[derive(Debug, Clone)]
pub struct StorageObject {
pub body: Bytes,
pub content_type: String,
pub size: u64,
pub etag: String,
pub last_modified: String,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct ListResult {
pub objects: Vec<ObjectInfo>,
pub next_cursor: Option<String>,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct ObjectInfo {
pub key: String,
pub size: u64,
pub content_type: String,
pub etag: String,
pub last_modified: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
pub struct ObjectMetadata {
pub owner: Option<String>,
pub custom_headers: HashMap<String, String>,
}