hypertune 0.6.2

Hypertune SDK for type safe configuration
Documentation
use std::collections::HashMap;

use serde::{Deserialize, Serialize};
use serde_json::Value;

#[derive(Deserialize, Serialize, Clone)]
pub enum LogLevel {
    Debug,
    Error,
    Info,
    Warn,
}

#[derive(Deserialize)]
pub struct Message {
    pub level: LogLevel,
    pub message: String,
    pub metadata: HashMap<String, Value>,
}

#[derive(Deserialize, Serialize, Eq, PartialEq, Debug, Clone)]
#[serde(tag = "type")]
pub enum InitQuery {
    // TODO: add internal query support to match JS SDK.
    #[serde(rename = "GraphqlQuery")]
    Graphql(GraphqlQuery),
    #[serde(rename = "StoredQuery")]
    Stored(StoredQuery),
}

#[derive(Deserialize, Serialize, Eq, PartialEq, Debug, Clone)]
#[serde(rename_all = "camelCase")]
pub struct GraphqlQuery {
    pub code: String,
}

#[derive(Deserialize, Serialize, Eq, PartialEq, Debug, Clone)]
#[serde(rename_all = "camelCase")]
pub struct StoredQuery {
    pub id: String,
}