// Copyright 2024 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
syntax = "proto2";
option java_multiple_files = true;
option java_package = "org.chromium.components.data_sharing.protocol";
option optimize_for = LITE_RUNTIME;
package data_sharing_pb;
import "components/data_sharing/public/protocol/group_data.proto";
message CreateGroupParams {
optional string display_name = 1;
};
message CreateGroupResult {
optional GroupData group_data = 1;
};
message ReadGroupsParams {
repeated string group_ids = 1;
};
message ReadGroupsResult {
repeated GroupData group_data = 1;
};
message AddMemberParams {
optional string group_id = 1;
oneof AddMemberOptions {
// To add an another member, to an owned group.
string member_gaia_id = 2;
// To add current account to an unowned group.
string access_token = 3;
}
};
message RemoveMemberParams {
optional string group_id = 1;
optional string member_gaia_id = 2;
};
message DeleteGroupParams {
optional string group_id = 1;
};
message LookupGaiaIdByEmailParams {
optional string email = 1;
};
message LookupGaiaIdByEmailResult {
optional string gaia_id = 1;
};
message AddAccessTokenParams {
optional string group_id = 1;
}
message AddAccessTokenResult {
optional GroupData group_data = 1;
}