namespace LlamaApp.Common;
///
/// A model entry — locally installed or available for download.
///
public interface IModel
{
string Name { get; }
///
/// The canonical model id the llama server uses for its router API
/// (POST /models, /models/load, /models/sse): the HF
/// repo id with an optional :<quant> suffix, e.g.
/// ggml-org/gemma-3-270m-it-qat-GGUF:Q4_0. The bare repo id works for
/// downloads but /models/load requires the quant suffix, so this is
/// the form passed to the server. stays the bare repo id
/// for local cache-path matching.
///
string ServerModelId { get; }
string Description { get; }
string License { get; }
/// Human-readable parameter count, e.g. "20B", "270M", "E4B".
string Parameters { get; }
/// Human-readable size, e.g. "12.1 GB".
string Size { get; }
bool Vision { get; }
}