use std::path::PathBuf;
use reifydb_value::value::constraint::TypeConstraint;
use crate::{
common::{OperatorClass, WindowRequirements},
define_event,
};
#[derive(Debug, Clone)]
pub struct OperatorColumn {
pub name: String,
pub field_type: TypeConstraint,
pub description: String,
}
define_event! {
pub struct OperatorLoadedEvent {
pub operator: String,
pub library_path: PathBuf,
pub abi: Option<u32>,
pub version: String,
pub description: String,
pub input: Vec<OperatorColumn>,
pub output: Vec<OperatorColumn>,
pub capabilities: u32,
pub class: OperatorClass,
pub window: WindowRequirements,
pub unmanaged_because: Option<String>,
}
}