// Copyright 2021 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
module crosapi.mojom;
// Information about Ash's field trial group to be propagated to lacros.
[Stable]
struct FieldTrialGroupInfo {
string trial_name;
string group_name;
[MinVersion=1] bool? is_overridden;
};
// Interface for field trial observers. Implemented by lacros-chrome.
// Used by ash-chrome to send field trial updates.
[Stable, Uuid="4867d01a-c21d-4e67-9452-d9a6fe53606d"]
interface FieldTrialObserver {
// Called when a field trial group is activated.
OnFieldTrialGroupActivated@0(
array<FieldTrialGroupInfo> field_trial_group_infos);
};
// Interface that allows clients to receive update
// when a trial field becomes active. Implemented by ash-chrome.
[Stable, Uuid="14fa84de-e4ab-4fdc-aab6-9e933a8b2558"]
interface FieldTrialService {
// Adds an observer for field trial changes.
AddFieldTrialObserver@0(
pending_remote<FieldTrialObserver> observer);
};