#ifndef EXTENSIONS_COMMON_API_SYSTEM_STORAGE_H__
#define EXTENSIONS_COMMON_API_SYSTEM_STORAGE_H__
#include <stdint.h>
#include <map>
#include <memory>
#include <optional>
#include <string>
#include <vector>
#include "base/values.h"
#include <string_view>
namespace extensions {
namespace api {
namespace system_storage {
enum class StorageUnitType { … };
const char* ToString(StorageUnitType as_enum);
StorageUnitType ParseStorageUnitType(std::string_view as_string);
std::u16string GetStorageUnitTypeParseError(std::string_view as_string);
struct StorageUnitInfo { … };
struct StorageAvailableCapacityInfo { … };
enum class EjectDeviceResultCode { … };
const char* ToString(EjectDeviceResultCode as_enum);
EjectDeviceResultCode ParseEjectDeviceResultCode(std::string_view as_string);
std::u16string GetEjectDeviceResultCodeParseError(std::string_view as_string);
namespace GetInfo {
namespace Results {
base::Value::List Create(const std::vector<StorageUnitInfo>& info);
}
}
namespace EjectDevice {
struct Params { … };
namespace Results {
base::Value::List Create(const EjectDeviceResultCode& result);
}
}
namespace GetAvailableCapacity {
struct Params { … };
namespace Results {
base::Value::List Create(const StorageAvailableCapacityInfo& info);
}
}
namespace OnAttached {
extern const char kEventName[];
base::Value::List Create(const StorageUnitInfo& info);
}
namespace OnDetached {
extern const char kEventName[];
base::Value::List Create(const std::string& id);
}
}
}
}
#endif