1use std::collections::HashMap;
2
3use serde::{Deserialize, Serialize};
4
5#[derive(Debug, Clone, Serialize, Deserialize, PartialEq)]
6pub struct WireProviderCatalog {
7 pub all: Vec<WireProviderEntry>,
8 pub connected: Vec<String>,
9}
10
11#[derive(Debug, Clone, Serialize, Deserialize, PartialEq)]
12pub struct WireProviderEntry {
13 pub id: String,
14 pub name: Option<String>,
15 pub models: HashMap<String, WireProviderModel>,
16}
17
18#[derive(Debug, Clone, Serialize, Deserialize, PartialEq)]
19pub struct WireProviderModel {
20 pub name: Option<String>,
21 pub limit: Option<WireProviderModelLimit>,
22}
23
24#[derive(Debug, Clone, Serialize, Deserialize, PartialEq)]
25pub struct WireProviderModelLimit {
26 pub context: Option<u32>,
27}