pub mod builder;
pub mod diff;
pub mod scheduler;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Clone, PartialEq, Eq, Hash)]
pub struct GraphNode {
pub ecosystem: String,
pub package_name: String,
pub resolved_version: String,
pub content_hash: String,
pub platform_markers: Option<String>,
pub lock_ref: String,
}
#[derive(Debug, Serialize, Deserialize, Clone, PartialEq, Eq)]
pub enum EdgeType {
NativeResolver,
UserDeclaredCrossRef,
}
#[derive(Debug, Serialize, Deserialize, Clone)]
pub struct GraphEdge {
pub from_node: String,
pub to_node: String,
pub edge_type: EdgeType,
}