use serde::{Deserialize, Serialize};
use crate::{
api::ApiMetadata,
domain::{
CodeRepositoryTotals, GraphInspection, IndexCursor, IndexKind, IndexRefreshDiagnostics,
IndexStatus,
},
};
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
pub struct GraphInspectionRequest {
#[serde(skip_serializing_if = "Option::is_none")]
pub source_scope: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
pub struct GraphInspectionResponse {
pub metadata: ApiMetadata,
pub graph: GraphInspection,
pub repository_code_totals: CodeRepositoryTotals,
}
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
pub struct IndexRefreshRequest {
#[serde(default)]
pub kinds: Vec<IndexKind>,
}
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
pub struct IndexRefreshResponse {
pub metadata: ApiMetadata,
pub indexes: Vec<IndexStatus>,
pub index_cursors: Vec<IndexCursor>,
pub diagnostics: IndexRefreshDiagnostics,
}