/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ /* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this file, * You can obtain one at http://mozilla.org/MPL/2.0/. * * The origin of this IDL file is * https://w3c.github.io/navigation-timing/#the-performancetiming-interface * * Copyright © 2012 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C * liability, trademark and document use rules apply. */ [Exposed=Window] interface PerformanceTiming { readonly attribute unsigned long long navigationStart; readonly attribute unsigned long long unloadEventStart; readonly attribute unsigned long long unloadEventEnd; readonly attribute unsigned long long redirectStart; readonly attribute unsigned long long redirectEnd; readonly attribute unsigned long long fetchStart; readonly attribute unsigned long long domainLookupStart; readonly attribute unsigned long long domainLookupEnd; readonly attribute unsigned long long connectStart; readonly attribute unsigned long long connectEnd; readonly attribute unsigned long long secureConnectionStart; readonly attribute unsigned long long requestStart; readonly attribute unsigned long long responseStart; readonly attribute unsigned long long responseEnd; readonly attribute unsigned long long domLoading; readonly attribute unsigned long long domInteractive; readonly attribute unsigned long long domContentLoadedEventStart; readonly attribute unsigned long long domContentLoadedEventEnd; readonly attribute unsigned long long domComplete; readonly attribute unsigned long long loadEventStart; readonly attribute unsigned long long loadEventEnd; // This is a Chrome proprietary extension and not part of the // performance/navigation timing specification. // Returns 0 if a non-blank paint has not happened. [Pref="dom.performance.time_to_non_blank_paint.enabled"] readonly attribute unsigned long long timeToNonBlankPaint; // Returns 0 if a contentful paint has not happened. [Pref="dom.performance.time_to_contentful_paint.enabled"] readonly attribute unsigned long long timeToContentfulPaint; // This is a Mozilla proprietary extension and not part of the // performance/navigation timing specification. It marks the // completion of the first presentation flush after DOMContentLoaded. [Pref="dom.performance.time_to_dom_content_flushed.enabled"] readonly attribute unsigned long long timeToDOMContentFlushed; // This is a Chrome proprietary extension and not part of the // performance/navigation timing specification. // Returns 0 if a time-to-interactive measurement has not happened. [Pref="dom.performance.time_to_first_interactive.enabled"] readonly attribute unsigned long long timeToFirstInteractive; [Default] object toJSON(); };