mashin_primitives/
lib.rs

1use serde::{Deserialize, Serialize};
2use std::collections::HashMap;
3
4#[derive(Debug, Serialize, Deserialize, Default)]
5#[serde(rename_all = "camelCase")]
6pub struct Glue {
7	pub name: String,
8	pub version: String,
9	pub repository: String,
10	pub doc: String,
11	pub type_defs: HashMap<String, TsType>,
12}
13
14#[derive(Debug, Clone, Serialize, Deserialize)]
15pub struct TsType {
16	pub doc: String,
17	pub name: String,
18	pub typescript: String,
19	pub mashin_ty: InternalMashinType,
20	pub is_enum: bool,
21}
22
23#[derive(Debug, Clone, Serialize, Deserialize)]
24pub enum InternalMashinType {
25	ProviderConfig,
26	ResourceConfig,
27	Resource(String),
28	Extra,
29}