blob: 55cbab38c1cabb0cf9fbd3d9d6d1f8adb9ff76e2 [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 'dom.dart';
import 'html.dart';
typedef UserIdleState = String;
typedef ScreenIdleState = String;
@JS()
@staticInterop
@anonymous
class IdleOptions {
external factory IdleOptions({
int threshold,
AbortSignal signal,
});
}
extension IdleOptionsExtension on IdleOptions {
external set threshold(int value);
external int get threshold;
external set signal(AbortSignal value);
external AbortSignal get signal;
}
@JS('IdleDetector')
@staticInterop
class IdleDetector implements EventTarget {
external factory IdleDetector();
external static JSPromise requestPermission();
}
extension IdleDetectorExtension on IdleDetector {
external JSPromise start([IdleOptions options]);
external UserIdleState? get userState;
external ScreenIdleState? get screenState;
external set onchange(EventHandler value);
external EventHandler get onchange;
}