blob: e81b2ec3c50ccb796346e9c96da2995c958d1848 [file] [log] [blame]
// Copyright 2020 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
library fuchsia.settings;
/// Settings related to factory reset.
protocol FactoryReset {
/// Notifies of a change in information about the factory reset settings.
/// On a given connection, the first call will return the current `settings`
/// value while subsequent calls will only return the new `settings` value
/// upon a value change. This follows the hanging get pattern.
/// If this call fails, it is considered a fatal error and the channel will
/// be closed.
Watch() -> (struct {
settings FactoryResetSettings;
/// Sets factory reset settings. Any field not explicitly set in the table
/// performs a no-op, and will not make any changes.
Set(struct {
settings FactoryResetSettings;
}) -> () error Error;
/// Information about the factory reset settings.
type FactoryResetSettings = table {
/// When set to true, a user is able to physically perform a factory reset.
/// When false, that functionality is disabled.
1: is_local_reset_allowed bool;