{
  "Vector3": {
    "comment": "A representation of a position in 3D space",
    "members": {
      "x": {
        "type": "f32",
        "kind": "scalar",
        "comment": "x coordinate"
      },
      "y": {
        "type": "f32",
        "kind": "scalar",
        "comment": "y coordinate"
      },
      "z": {
        "type": "f32",
        "kind": "scalar",
        "comment": "z coordinate"
      }
    }
  },
  "Login": {
    "comment": "The login object",
    "members": {
      "Email": {
        "type": "string",
        "kind": "string",
        "size": "256",
        "comment": "Email of the user"
      },
      "Password": {
        "type": "string",
        "kind": "string",
        "size": "64",
        "comment": "Password of the user"
      }
    }
  },
  "User": {
    "comment": "The user object",
    "members": {
      "Name": {
        "type": "string",
        "kind": "string",
        "size": "24",
        "comment": "Name of the user"
      },
      "Login": {
        "type": "Login",
        "kind": "struct",
        "comment": "user login info"
      },
      "Position": {
        "type": "Vector3",
        "kind": "struct",
        "comment": "last logout position of user"
      }
    }
  },
  "LoginRequest": {
    "comment": "a request for a login",
    "members": {
      "Login": {
        "type": "Login",
        "kind": "struct",
        "comment": "user login info"
      }
    }
  },
  "LoginResponse": {
    "comment": "the response from a login request",
    "members": {
      "success": {
        "type": "logical",
        "kind": "scalar",
        "comment": "login was successful or not"
      }
    }
  }
}
