1use serde::{Deserialize, Serialize};
2
3#[derive(Serialize, Deserialize)]
4pub struct JwtToken {
5 pub token: String,
6}
7
8#[derive(Debug, Clone)]
9pub enum RequestType {
10 Get,
11 Post,
12 Put,
13 Delete,
14}
15
16#[derive(Debug, Clone)]
17pub enum Routes {
18 AuthLogin,
19 AuthRefresh,
20 Drift,
21 SpcDrift,
22 PsiDrift,
23 CustomDrift,
24 LLMDrift,
25 Profile,
26 ProfileStatus,
27 Alerts,
28 DownloadProfile,
29 Healthcheck,
30 Message,
31 PaginatedTraces,
32 TraceBaggage,
33 TraceSpans,
34 RefreshTraceSummary,
35 TraceMetrics,
36 Tags,
37}
38
39impl Routes {
40 pub fn as_str(&self) -> &str {
41 match self {
42 Routes::AuthLogin => "auth/login",
43 Routes::AuthRefresh => "auth/refresh",
44 Routes::Profile => "profile",
45 Routes::Drift => "drift",
46 Routes::SpcDrift => "drift/spc",
47 Routes::PsiDrift => "drift/psi",
48 Routes::CustomDrift => "drift/custom",
49 Routes::LLMDrift => "drift/llm",
50 Routes::ProfileStatus => "profile/status",
51 Routes::DownloadProfile => "profile/download",
52 Routes::Alerts => "alerts",
53 Routes::Healthcheck => "healthcheck",
54 Routes::Message => "message",
55 Routes::PaginatedTraces => "trace/paginated",
56 Routes::TraceBaggage => "trace/baggage",
57 Routes::TraceSpans => "trace/spans",
58 Routes::RefreshTraceSummary => "trace/refresh-summary",
59 Routes::TraceMetrics => "trace/metrics",
60 Routes::Tags => "tags",
61 }
62 }
63}