// Copyright 2024 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.
@available(added=HEAD)
library fuchsia.input.interaction.observation;

using zx;

/// The Aggregator protocol collects evidence of user activity and uses this
/// evidence to set the system's activity state.
@discoverable
closed protocol Aggregator {
    /// Reports a discrete activity such as a keystroke.
    strict ReportDiscreteActivity(struct {
        event_time zx.Time;
    }) -> ();
};
