blob: a24fef3810e9186d1d9fe1feb7d9b3de58b81cc2 [file] [log] [blame]
// Copyright 2025 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 optimize_for = LITE_RUNTIME;
package data_sharing_pb;
message MigrationState {
enum State {
// Default value, should not be used.
UNSPECIFIED = 0;
// The user has explicitly started the sharing flow (from the UI) on this
// device. This is the initiating device.
SHARE_INITIATED = 1;
// This is a remote device that has detected the existence of a sharing
// transition. The transition could be in-progress or complete on the
// initiating device but this remote device must complete the transition as
// well.
SHARE_PASSIVE = 2;
// Sharing flow has been completed. The UI and feature code can be notified
// of the completion. Both the initiating device and remote device have to
// proceed through this phase.
SHARE_COMPLETED = 3;
// The unshare flow has been initiated by the user on this device. This is
// the initiating device.
UNSHARE_INITIATED = 4;
// The unshare result is being applied to the current device. At this point,
// the shared group has been copied to the private storage and waiting for
// commit of the private group.
UNSHARE_PREPARED = 5;
// The unshare flow has been successfully completed. Both the initiating
// device and remote device have to proceed through this phase.
UNSHARE_COMPLETED = 6;
}
optional State state = 1;
}