syntax = "proto3"; package slash.store; import "store/common.proto"; option go_package = "gen/store"; message WorkspaceSetting { WorkspaceSettingKey key = 1; string raw = 4; oneof value { GeneralSetting general = 2; ShortcutRelatedSetting shortcut_related = 3; } message GeneralSetting { string secret_session = 1; string license_key = 2; string custom_style = 3; } message ShortcutRelatedSetting { Visibility default_visibility = 1; } } enum WorkspaceSettingKey { WORKSPACE_SETTING_KEY_UNSPECIFIED = 0; // Workspace general settings. WORKSPACE_SETTING_GENERAL = 1; // Workspace shortcut-related settings. WORKSPACE_SETTING_SHORTCUT_RELATED = 2; // TODO: remove the following keys. // The license key. WORKSPACE_SETTING_LICENSE_KEY = 3; // The secret session key used to encrypt session data. WORKSPACE_SETTING_SECRET_SESSION = 4; // The custom style. WORKSPACE_SETTING_CUSTOM_STYLE = 5; // The default visibility of shortcuts and collections. WORKSPACE_SETTING_DEFAULT_VISIBILITY = 6; }