buffet: Added minimal role into command definition

Possible values "viewer", "user", "owner", "manager".
Default minimal role is set to "user".
Role check is not yet implemented.

BUG=brillo:808
TEST=`FEATURES=test emerge-gizmo buffet`

Change-Id: I74d16c24618b50de1e7a2ffa37d7aef36978a38a
Reviewed-on: https://chromium-review.googlesource.com/274117
Reviewed-by: Vitaly Buka <vitalybuka@chromium.org>
Commit-Queue: Vitaly Buka <vitalybuka@chromium.org>
Tested-by: Vitaly Buka <vitalybuka@chromium.org>
diff --git a/buffet/commands/user_role.h b/buffet/commands/user_role.h
new file mode 100644
index 0000000..711abdf
--- /dev/null
+++ b/buffet/commands/user_role.h
@@ -0,0 +1,28 @@
+// Copyright 2015 The Chromium OS Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef BUFFET_COMMANDS_USER_ROLE_H_
+#define BUFFET_COMMANDS_USER_ROLE_H_
+
+#include <string>
+#include <chromeos/errors/error.h>
+
+namespace buffet {
+
+enum class UserRole {
+  kViewer,
+  kUser,
+  kManager,
+  kOwner,
+};
+
+std::string ToString(UserRole role);
+
+bool FromString(const std::string& str,
+                UserRole* role,
+                chromeos::ErrorPtr* error);
+
+}  // namespace buffet
+
+#endif  // BUFFET_COMMANDS_USER_ROLE_H_