soma_provider_core/
surface.rs1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Serialize, Deserialize)]
4#[serde(rename_all = "kebab-case")]
5pub enum ProviderSurface {
6 #[default]
7 Internal,
8 Mcp,
9 Rest,
10 Cli,
11 Palette,
12 Ui,
13}
14
15impl ProviderSurface {
16 pub fn as_str(self) -> &'static str {
17 match self {
18 Self::Internal => "internal",
19 Self::Mcp => "mcp",
20 Self::Rest => "rest",
21 Self::Cli => "cli",
22 Self::Palette => "palette",
23 Self::Ui => "ui",
24 }
25 }
26}