status-go/protocol/protobuf/profile_showcase.proto

116 lines
2.9 KiB
Protocol Buffer

syntax = "proto3";
option go_package = "./;protobuf";
package protobuf;
message ProfileShowcaseCommunity {
string community_id = 1;
uint32 order = 2;
bytes grant = 3;
}
message ProfileShowcaseAccount {
string address = 1;
string name = 2;
string color_id = 3;
string emoji = 4;
uint32 order = 5;
}
message ProfileShowcaseCollectible {
string uid = 1 [deprecated = true];
uint32 order = 2;
string contract_address = 3;
string community_id = 4;
uint64 chain_id = 5;
string token_id = 6;
string account_address = 7;
}
message ProfileShowcaseVerifiedToken {
string symbol = 1;
uint32 order = 2;
}
message ProfileShowcaseUnverifiedToken {
string contract_address = 1;
uint32 order = 2;
uint64 chain_id = 3;
string community_id = 4;
}
message ProfileShowcaseEntries {
repeated ProfileShowcaseCommunity communities = 1;
repeated ProfileShowcaseAccount accounts = 2;
repeated ProfileShowcaseCollectible collectibles = 3;
repeated ProfileShowcaseVerifiedToken verifiedTokens = 4;
repeated ProfileShowcaseUnverifiedToken unverifiedTokens = 5;
}
message ProfileShowcaseEntriesEncrypted {
bytes encrypted_entries = 1;
repeated bytes encryption_keys = 2;
}
message ProfileShowcase {
ProfileShowcaseEntries for_everyone = 1;
ProfileShowcaseEntriesEncrypted for_contacts = 2;
ProfileShowcaseEntriesEncrypted for_id_verified_contacts = 3;
}
// Preferences
enum ProfileShowcaseVisibility {
PROFILE_SHOWCASE_VISIBILITY_NO_ONE = 0;
PROFILE_SHOWCASE_VISIBILITY_IDVERIFIED_CONTACTS = 1;
PROFILE_SHOWCASE_VISIBILITY_CONTACTS = 2;
PROFILE_SHOWCASE_VISIBILITY_EVERYONE = 3;
}
message ProfileShowcaseCommunityPreference {
string community_id = 1;
ProfileShowcaseVisibility showcase_visibility = 2;
int32 order = 3;
}
message ProfileShowcaseAccountPreference {
string address = 1;
string name = 2;
string color_id = 3;
string emoji = 4;
ProfileShowcaseVisibility showcase_visibility = 5;
int32 order = 6;
}
message ProfileShowcaseCollectiblePreference {
string contract_address = 1;
uint64 chain_id = 2;
string token_id = 3;
string community_id = 4;
string account_address = 5;
ProfileShowcaseVisibility showcase_visibility = 6;
int32 order = 7;
}
message ProfileShowcaseVerifiedTokenPreference {
string symbol = 1;
ProfileShowcaseVisibility showcase_visibility = 2;
int32 order = 3;
}
message ProfileShowcaseUnverifiedTokenPreference {
string contract_address = 1;
uint64 chain_id = 2;
string community_id = 3;
ProfileShowcaseVisibility showcase_visibility = 4;
int32 order = 5;
}
message SyncProfileShowcasePreferences {
uint64 clock = 1;
repeated ProfileShowcaseCommunityPreference communities = 2;
repeated ProfileShowcaseAccountPreference accounts = 3;
repeated ProfileShowcaseCollectiblePreference collectibles = 4;
repeated ProfileShowcaseVerifiedTokenPreference verified_tokens = 5;
repeated ProfileShowcaseUnverifiedTokenPreference unverified_tokens = 6;
}