blob: 8f643a7a33e923ed51344562e32f9188ff62ffab [file] [log] [blame]
// Copyright (c) 2024, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
// Generated from Web IDL definitions.
import 'dart:js_interop';
import 'hr_time.dart';
typedef PressureUpdateCallback = JSFunction;
typedef PressureSource = String;
typedef PressureState = String;
@JS('PressureObserver')
@staticInterop
class PressureObserver {
external factory PressureObserver(
PressureUpdateCallback callback, [
PressureObserverOptions options,
]);
external static JSArray get supportedSources;
}
extension PressureObserverExtension on PressureObserver {
external JSPromise observe(PressureSource source);
external void unobserve(PressureSource source);
external void disconnect();
external JSArray takeRecords();
}
@JS('PressureRecord')
@staticInterop
class PressureRecord {}
extension PressureRecordExtension on PressureRecord {
external JSObject toJSON();
external PressureSource get source;
external PressureState get state;
external DOMHighResTimeStamp get time;
}
@JS()
@staticInterop
@anonymous
class PressureObserverOptions {
external factory PressureObserverOptions({num sampleRate});
}
extension PressureObserverOptionsExtension on PressureObserverOptions {
external set sampleRate(num value);
external num get sampleRate;
}