allwright_plugin_sdk/lib.rs
1#[derive(Debug, Clone, Copy, PartialEq, Eq)]
2pub enum SurfaceFamily {
3 Web,
4 Mobile,
5 Desktop,
6}
7
8#[derive(Debug, Clone, Copy, PartialEq, Eq)]
9pub struct SurfacePluginDescriptor {
10 pub id: &'static str,
11 pub family: SurfaceFamily,
12 pub version: &'static str,
13 pub description: &'static str,
14}
15
16pub trait SurfacePlugin: Send + Sync {
17 fn descriptor(&self) -> SurfacePluginDescriptor;
18}