aimo_client/types/
providers.rs1use aimo_core::provider::ProviderMetadata;
2use serde::{Deserialize, Serialize};
3
4use crate::types::models::ProviderModelMetadata;
5
6#[derive(Debug, Clone, Serialize, Deserialize)]
8pub struct RegisterProviderRequest {
9 pub metadata: ProviderMetadata,
10 pub signature: String,
11}
12
13#[derive(Debug, Clone, Serialize, Deserialize)]
15pub struct RegisterProviderResponse {
16 pub success: bool,
17 pub message: String,
18}
19
20#[derive(Debug, Clone, Serialize, Deserialize)]
21pub struct ConnectProviderRequest {
22 pub models: Vec<ProviderModelMetadata>,
23}
24
25#[derive(Debug, Clone, Serialize, Deserialize)]
26pub struct ConnectProviderResponse {
27 pub success: bool,
28 pub message: String,
29}
30
31#[derive(Debug, Clone, Serialize, Deserialize)]
32pub struct ProviderConnectionStatus {
33 pub connected: bool,
34 pub timestamp: i64,
35 pub timestamp_ui: String,
36 #[serde(default)]
37 pub models: Vec<ProviderModelMetadata>,
38}