blob: 223c784535b3b9dc8d382b1bdad2ca4183742cc8 [file] [log] [blame]
// Copyright 2015 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
[
Exposed=(Window,ServiceWorker),
GarbageCollected,
RuntimeEnabled=BackgroundSyncPeriodic,
TypeChecking=Interface,
] interface PeriodicSyncManager {
[CallWith=(ScriptState,ExecutionContext),ImplementedAs=registerFunction] Promise<PeriodicSyncRegistration> register([RuntimeEnabled=BackgroundSyncV2] optional PeriodicSyncRegistrationOptions options);
[CallWith=ScriptState] Promise<PeriodicSyncRegistration> getRegistration(DOMString tag);
[CallWith=ScriptState] Promise<sequence<PeriodicSyncRegistration>> getRegistrations();
[RuntimeEnabled=BackgroundSyncV2, CallWith=ScriptState] Promise<SyncPermissionState> permissionState();
[RuntimeEnabled=BackgroundSyncV2] readonly attribute unsigned long minPossiblePeriod;
};