1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
pub use crate::models::{
    accounts::*,
    tokens::*,
    users::*,
    wallet::*
};

mod accounts;
mod tokens;
mod users;
mod wallet;

pub enum DatabaseClassifications {
    Centralized,
    Decentralized,
    Distributed,
    SelfHosted,
}

pub enum DatabaseStyles {
    Object,
    NoSQL,
    SQL,
}

pub trait ModelSpec {
    type Actor;
    type Client;
    type Context;
    type Data;

    fn configure(&self, context: Self::Context) -> Self::Actor;
    fn constructor(&self, data: Self::Data) -> Self;
}