devtools-tracing 1.2.0 → 1.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/front_end/core/common/App.d.ts +3 -0
- package/dist/lib/front_end/core/common/AppProvider.d.ts +12 -0
- package/dist/lib/front_end/core/common/Base64.d.ts +11 -0
- package/dist/lib/front_end/core/common/CharacterIdMap.d.ts +5 -0
- package/dist/lib/front_end/core/common/Color.d.ts +383 -0
- package/dist/lib/front_end/core/common/ColorConverter.d.ts +24 -0
- package/dist/lib/front_end/core/common/ColorUtils.d.ts +45 -0
- package/dist/lib/front_end/core/common/Console.d.ts +54 -0
- package/dist/lib/front_end/core/common/Debouncer.d.ts +6 -0
- package/dist/lib/front_end/core/common/EventTarget.d.ts +23 -0
- package/dist/lib/front_end/core/common/Gzip.d.ts +21 -0
- package/dist/lib/front_end/core/common/JavaScriptMetaData.d.ts +20 -0
- package/dist/lib/front_end/core/common/Lazy.d.ts +4 -0
- package/dist/lib/front_end/core/common/MapWithDefault.d.ts +9 -0
- package/dist/lib/front_end/core/common/Mutex.d.ts +13 -0
- package/dist/lib/front_end/core/common/Object.d.ts +25 -0
- package/dist/lib/front_end/core/common/ParsedURL.d.ts +87 -0
- package/dist/lib/front_end/core/common/Progress.d.ts +47 -0
- package/dist/lib/front_end/core/common/ResolverBase.d.ts +29 -0
- package/dist/lib/front_end/core/common/ResourceType.d.ts +89 -0
- package/dist/lib/front_end/core/common/ReturnToPanel.d.ts +10 -0
- package/dist/lib/front_end/core/common/Revealer.d.ts +79 -0
- package/dist/lib/front_end/core/common/Runnable.d.ts +14 -0
- package/dist/lib/front_end/core/common/SegmentedRange.d.ts +14 -0
- package/dist/lib/front_end/core/common/SettingRegistration.d.ts +175 -0
- package/dist/lib/front_end/core/common/Settings.d.ts +168 -0
- package/dist/lib/front_end/core/common/SimpleHistoryManager.d.ts +20 -0
- package/dist/lib/front_end/core/common/Srcset.d.ts +16 -0
- package/dist/lib/front_end/core/common/StringOutputStream.d.ts +10 -0
- package/dist/lib/front_end/core/common/TextDictionary.d.ts +11 -0
- package/dist/lib/front_end/core/common/Throttler.d.ts +12 -0
- package/dist/lib/front_end/core/common/Trie.d.ts +24 -0
- package/dist/lib/front_end/core/common/VersionController.d.ts +80 -0
- package/dist/lib/front_end/core/common/common.d.ts +35 -0
- package/dist/lib/front_end/core/host/AidaClient.d.ts +369 -0
- package/dist/lib/front_end/core/host/AidaGcaTranslation.d.ts +9 -0
- package/dist/lib/front_end/core/host/DispatchHttpRequestClient.d.ts +14 -0
- package/dist/lib/front_end/core/host/GcaTypes.d.ts +405 -0
- package/dist/lib/front_end/core/host/GdpClient.d.ts +84 -0
- package/dist/lib/front_end/core/host/InspectorFrontendHost.d.ts +29 -0
- package/dist/lib/front_end/core/host/InspectorFrontendHostAPI.d.ts +414 -0
- package/dist/lib/front_end/core/host/InspectorFrontendHostStub.d.ts +151 -0
- package/dist/lib/front_end/core/host/Platform.d.ts +11 -0
- package/dist/lib/front_end/core/host/ResourceLoader.d.ts +15 -0
- package/dist/lib/front_end/core/host/UserMetrics.d.ts +935 -0
- package/dist/lib/front_end/core/host/host.d.ts +12 -0
- package/dist/lib/front_end/core/i18n/ByteUtilities.d.ts +11 -0
- package/dist/lib/front_end/core/i18n/DevToolsLocale.d.ts +41 -0
- package/dist/lib/front_end/core/i18n/NumberFormatter.d.ts +11 -0
- package/dist/lib/front_end/core/i18n/i18n.d.ts +6 -0
- package/dist/lib/front_end/core/i18n/i18nImpl.d.ts +64 -0
- package/dist/lib/front_end/core/i18n/i18nTypes.d.ts +5 -0
- package/dist/lib/front_end/core/i18n/time-utilities.d.ts +16 -0
- package/dist/lib/front_end/core/platform/ArrayUtilities.d.ts +69 -0
- package/dist/lib/front_end/core/platform/Brand.d.ts +21 -0
- package/dist/lib/front_end/core/platform/Constructor.d.ts +3 -0
- package/dist/lib/front_end/core/platform/DateUtilities.d.ts +2 -0
- package/dist/lib/front_end/core/platform/DevToolsPath.d.ts +44 -0
- package/dist/lib/front_end/core/platform/HostRuntime.d.ts +3 -0
- package/dist/lib/front_end/core/platform/KeyboardUtilities.d.ts +21 -0
- package/dist/lib/front_end/core/platform/MapUtilities.d.ts +19 -0
- package/dist/lib/front_end/core/platform/MimeType.d.ts +28 -0
- package/dist/lib/front_end/core/platform/NumberUtilities.d.ts +14 -0
- package/dist/lib/front_end/core/platform/StringUtilities.d.ts +77 -0
- package/dist/lib/front_end/core/platform/Timing.d.ts +6 -0
- package/dist/lib/front_end/core/platform/TypedArrayUtilities.d.ts +34 -0
- package/dist/lib/front_end/core/platform/TypescriptUtilities.d.ts +66 -0
- package/dist/lib/front_end/core/platform/UIString.d.ts +3 -0
- package/dist/lib/front_end/core/platform/UserVisibleError.d.ts +12 -0
- package/dist/lib/front_end/core/platform/api/HostRuntime.d.ts +33 -0
- package/dist/lib/front_end/core/platform/api/api.d.ts +2 -0
- package/dist/lib/front_end/core/platform/platform.d.ts +18 -0
- package/dist/lib/front_end/core/protocol_client/CDPConnection.d.ts +77 -0
- package/dist/lib/front_end/core/protocol_client/ConnectionTransport.d.ts +9 -0
- package/dist/lib/front_end/core/protocol_client/DevToolsCDPConnection.d.ts +19 -0
- package/dist/lib/front_end/core/protocol_client/InspectorBackend.d.ts +221 -0
- package/dist/lib/front_end/core/protocol_client/protocol_client.d.ts +5 -0
- package/dist/lib/front_end/core/root/DevToolsContext.d.ts +34 -0
- package/dist/lib/front_end/core/root/ExperimentNames.d.ts +19 -0
- package/dist/lib/front_end/core/root/Runtime.d.ts +339 -0
- package/dist/lib/front_end/core/root/root.d.ts +4 -0
- package/dist/lib/front_end/core/sdk/AccessibilityModel.d.ts +68 -0
- package/dist/lib/front_end/core/sdk/AnimationModel.d.ts +161 -0
- package/dist/lib/front_end/core/sdk/AutofillModel.d.ts +23 -0
- package/dist/lib/front_end/core/sdk/CPUProfilerModel.d.ts +42 -0
- package/dist/lib/front_end/core/sdk/CPUThrottlingManager.d.ts +57 -0
- package/dist/lib/front_end/core/sdk/CSSContainerQuery.d.ts +41 -0
- package/dist/lib/front_end/core/sdk/CSSFontFace.d.ts +10 -0
- package/dist/lib/front_end/core/sdk/CSSLayer.d.ts +9 -0
- package/dist/lib/front_end/core/sdk/CSSMatchedStyles.d.ts +116 -0
- package/dist/lib/front_end/core/sdk/CSSMedia.d.ts +36 -0
- package/dist/lib/front_end/core/sdk/CSSMetadata.d.ts +85 -0
- package/dist/lib/front_end/core/sdk/CSSModel.d.ts +186 -0
- package/dist/lib/front_end/core/sdk/CSSNavigation.d.ts +10 -0
- package/dist/lib/front_end/core/sdk/CSSProperty.d.ts +53 -0
- package/dist/lib/front_end/core/sdk/CSSPropertyParser.d.ts +140 -0
- package/dist/lib/front_end/core/sdk/CSSPropertyParserMatchers.d.ts +599 -0
- package/dist/lib/front_end/core/sdk/CSSQuery.d.ts +21 -0
- package/dist/lib/front_end/core/sdk/CSSRule.d.ts +128 -0
- package/dist/lib/front_end/core/sdk/CSSScope.d.ts +9 -0
- package/dist/lib/front_end/core/sdk/CSSStartingStyle.d.ts +9 -0
- package/dist/lib/front_end/core/sdk/CSSStyleDeclaration.d.ts +38 -0
- package/dist/lib/front_end/core/sdk/CSSStyleSheetHeader.d.ts +53 -0
- package/dist/lib/front_end/core/sdk/CSSSupports.d.ts +10 -0
- package/dist/lib/front_end/core/sdk/CategorizedBreakpoint.d.ts +43 -0
- package/dist/lib/front_end/core/sdk/ChildTargetManager.d.ts +40 -0
- package/dist/lib/front_end/core/sdk/CompilerSourceMappingContentProvider.d.ts +12 -0
- package/dist/lib/front_end/core/sdk/Connections.d.ts +36 -0
- package/dist/lib/front_end/core/sdk/ConsoleModel.d.ts +124 -0
- package/dist/lib/front_end/core/sdk/ConsoleModelTypes.d.ts +6 -0
- package/dist/lib/front_end/core/sdk/Cookie.d.ts +68 -0
- package/dist/lib/front_end/core/sdk/CookieModel.d.ts +31 -0
- package/dist/lib/front_end/core/sdk/CookieParser.d.ts +14 -0
- package/dist/lib/front_end/core/sdk/DOMDebuggerModel.d.ts +123 -0
- package/dist/lib/front_end/core/sdk/DOMModel.d.ts +378 -0
- package/dist/lib/front_end/core/sdk/DebuggerModel.d.ts +269 -0
- package/dist/lib/front_end/core/sdk/EmulationModel.d.ts +92 -0
- package/dist/lib/front_end/core/sdk/EnhancedTracesParser.d.ts +105 -0
- package/dist/lib/front_end/core/sdk/EventBreakpointsModel.d.ts +63 -0
- package/dist/lib/front_end/core/sdk/FrameAssociated.d.ts +6 -0
- package/dist/lib/front_end/core/sdk/FrameManager.d.ts +68 -0
- package/dist/lib/front_end/core/sdk/HeapProfilerModel.d.ts +75 -0
- package/dist/lib/front_end/core/sdk/HttpReasonPhraseStrings.d.ts +5 -0
- package/dist/lib/front_end/core/sdk/IOModel.d.ts +10 -0
- package/dist/lib/front_end/core/sdk/IsolateManager.d.ts +52 -0
- package/dist/lib/front_end/core/sdk/IssuesModel.d.ts +28 -0
- package/dist/lib/front_end/core/sdk/LayerTreeBase.d.ts +70 -0
- package/dist/lib/front_end/core/sdk/LogModel.d.ts +20 -0
- package/dist/lib/front_end/core/sdk/NetworkManager.d.ts +414 -0
- package/dist/lib/front_end/core/sdk/NetworkRequest.d.ts +424 -0
- package/dist/lib/front_end/core/sdk/OverlayColorGenerator.d.ts +14 -0
- package/dist/lib/front_end/core/sdk/OverlayModel.d.ts +161 -0
- package/dist/lib/front_end/core/sdk/OverlayPersistentHighlighter.d.ts +116 -0
- package/dist/lib/front_end/core/sdk/PageLoad.d.ts +14 -0
- package/dist/lib/front_end/core/sdk/PageResourceLoader.d.ts +111 -0
- package/dist/lib/front_end/core/sdk/PaintProfiler.d.ts +43 -0
- package/dist/lib/front_end/core/sdk/PerformanceMetricsModel.d.ts +12 -0
- package/dist/lib/front_end/core/sdk/PreloadingModel.d.ts +146 -0
- package/dist/lib/front_end/core/sdk/RehydratingConnection.d.ts +57 -0
- package/dist/lib/front_end/core/sdk/RehydratingObject.d.ts +59 -0
- package/dist/lib/front_end/core/sdk/RemoteObject.d.ts +199 -0
- package/dist/lib/front_end/core/sdk/Resource.d.ts +34 -0
- package/dist/lib/front_end/core/sdk/ResourceTreeModel.d.ts +249 -0
- package/dist/lib/front_end/core/sdk/RuntimeModel.d.ts +158 -0
- package/dist/lib/front_end/core/sdk/SDKModel.d.ts +30 -0
- package/dist/lib/front_end/core/sdk/ScopeTreeCache.d.ts +21 -0
- package/dist/lib/front_end/core/sdk/ScreenCaptureModel.d.ts +69 -0
- package/dist/lib/front_end/core/sdk/Script.d.ts +125 -0
- package/dist/lib/front_end/core/sdk/SecurityOriginManager.d.ts +23 -0
- package/dist/lib/front_end/core/sdk/ServerSentEvents.d.ts +18 -0
- package/dist/lib/front_end/core/sdk/ServerSentEventsProtocol.d.ts +18 -0
- package/dist/lib/front_end/core/sdk/ServerTiming.d.ts +24 -0
- package/dist/lib/front_end/core/sdk/ServiceWorkerCacheModel.d.ts +79 -0
- package/dist/lib/front_end/core/sdk/ServiceWorkerManager.d.ts +130 -0
- package/dist/lib/front_end/core/sdk/SourceMap.d.ts +173 -0
- package/dist/lib/front_end/core/sdk/SourceMapCache.d.ts +11 -0
- package/dist/lib/front_end/core/sdk/SourceMapFunctionRanges.d.ts +26 -0
- package/dist/lib/front_end/core/sdk/SourceMapManager.d.ts +44 -0
- package/dist/lib/front_end/core/sdk/SourceMapScopeChainEntry.d.ts +20 -0
- package/dist/lib/front_end/core/sdk/SourceMapScopesInfo.d.ts +123 -0
- package/dist/lib/front_end/core/sdk/StorageBucketsModel.d.ts +56 -0
- package/dist/lib/front_end/core/sdk/StorageKeyManager.d.ts +38 -0
- package/dist/lib/front_end/core/sdk/Target.d.ts +71 -0
- package/dist/lib/front_end/core/sdk/TargetManager.d.ts +84 -0
- package/dist/lib/front_end/core/sdk/TraceObject.d.ts +37 -0
- package/dist/lib/front_end/core/sdk/WebAuthnModel.d.ts +29 -0
- package/dist/lib/front_end/core/sdk/WebMCPModel.d.ts +21 -0
- package/dist/lib/front_end/core/sdk/sdk.d.ts +90 -0
- package/dist/lib/front_end/entrypoints/formatter_worker/FormatterActions.d.ts +48 -0
- package/dist/lib/front_end/generated/InspectorBackendCommands.d.ts +14 -0
- package/dist/lib/front_end/generated/protocol.d.ts +21618 -0
- package/dist/lib/front_end/models/cpu_profile/CPUProfileDataModel.d.ts +104 -0
- package/dist/lib/front_end/models/cpu_profile/ProfileTreeModel.d.ts +29 -0
- package/dist/lib/front_end/models/cpu_profile/cpu_profile.d.ts +3 -0
- package/dist/lib/front_end/models/crux-manager/CrUXManager.d.ts +104 -0
- package/dist/lib/front_end/models/crux-manager/crux-manager.d.ts +1 -0
- package/dist/lib/front_end/models/emulation/DeviceModeModel.d.ts +135 -0
- package/dist/lib/front_end/models/emulation/EmulatedDevices.d.ts +680 -0
- package/dist/lib/front_end/models/emulation/emulation.d.ts +3 -0
- package/dist/lib/front_end/models/formatter/FormatterWorkerPool.d.ts +58 -0
- package/dist/lib/front_end/models/formatter/ScriptFormatter.d.ts +11 -0
- package/dist/lib/front_end/models/formatter/formatter.d.ts +3 -0
- package/dist/lib/front_end/models/geometry/GeometryImpl.d.ts +105 -0
- package/dist/lib/front_end/models/geometry/geometry.d.ts +1 -0
- package/dist/lib/front_end/models/text_utils/CodeMirrorUtils.d.ts +3 -0
- package/dist/lib/front_end/models/text_utils/ContentData.d.ts +74 -0
- package/dist/lib/front_end/models/text_utils/ContentProvider.d.ts +42 -0
- package/dist/lib/front_end/models/text_utils/StaticContentProvider.d.ts +13 -0
- package/dist/lib/front_end/models/text_utils/StreamingContentData.d.ts +49 -0
- package/dist/lib/front_end/models/text_utils/Text.d.ts +19 -0
- package/dist/lib/front_end/models/text_utils/TextCursor.d.ts +9 -0
- package/dist/lib/front_end/models/text_utils/TextRange.d.ts +80 -0
- package/dist/lib/front_end/models/text_utils/TextUtils.d.ts +97 -0
- package/dist/lib/front_end/models/text_utils/WasmDisassembly.d.ts +29 -0
- package/dist/lib/front_end/models/text_utils/text_utils.d.ts +11 -0
- package/dist/lib/front_end/models/trace/EntityMapper.d.ts +33 -0
- package/dist/lib/front_end/models/trace/EventsSerializer.d.ts +11 -0
- package/dist/lib/front_end/models/trace/LanternComputationData.d.ts +8 -0
- package/dist/lib/front_end/models/trace/ModelImpl.d.ts +103 -0
- package/dist/lib/front_end/models/trace/Name.d.ts +12 -0
- package/dist/lib/front_end/models/trace/Processor.d.ts +39 -0
- package/dist/lib/front_end/models/trace/Styles.d.ts +50 -0
- package/dist/lib/front_end/models/trace/extras/FilmStrip.d.ts +19 -0
- package/dist/lib/front_end/models/trace/extras/Initiators.d.ts +12 -0
- package/dist/lib/front_end/models/trace/extras/MainThreadActivity.d.ts +2 -0
- package/dist/lib/front_end/models/trace/extras/ScriptDuplication.d.ts +52 -0
- package/dist/lib/front_end/models/trace/extras/StackTraceForEvent.d.ts +12 -0
- package/dist/lib/front_end/models/trace/extras/ThirdParties.d.ts +22 -0
- package/dist/lib/front_end/models/trace/extras/TraceFilter.d.ts +21 -0
- package/dist/lib/front_end/models/trace/extras/TraceTree.d.ts +125 -0
- package/dist/lib/front_end/models/trace/extras/extras.d.ts +8 -0
- package/dist/lib/front_end/models/trace/handlers/AnimationFramesHandler.d.ts +12 -0
- package/dist/lib/front_end/models/trace/handlers/AnimationHandler.d.ts +8 -0
- package/dist/lib/front_end/models/trace/handlers/AsyncJSCallsHandler.d.ts +20 -0
- package/dist/lib/front_end/models/trace/handlers/AuctionWorkletsHandler.d.ts +8 -0
- package/dist/lib/front_end/models/trace/handlers/DOMStatsHandler.d.ts +8 -0
- package/dist/lib/front_end/models/trace/handlers/ExtensionTraceDataHandler.d.ts +106 -0
- package/dist/lib/front_end/models/trace/handlers/FlowsHandler.d.ts +7 -0
- package/dist/lib/front_end/models/trace/handlers/FramesHandler.d.ts +94 -0
- package/dist/lib/front_end/models/trace/handlers/GPUHandler.d.ts +10 -0
- package/dist/lib/front_end/models/trace/handlers/ImagePaintingHandler.d.ts +17 -0
- package/dist/lib/front_end/models/trace/handlers/InitiatorsHandler.d.ts +20 -0
- package/dist/lib/front_end/models/trace/handlers/InvalidationsHandler.d.ts +11 -0
- package/dist/lib/front_end/models/trace/handlers/LargestImagePaintHandler.d.ts +10 -0
- package/dist/lib/front_end/models/trace/handlers/LargestTextPaintHandler.d.ts +6 -0
- package/dist/lib/front_end/models/trace/handlers/LayerTreeHandler.d.ts +12 -0
- package/dist/lib/front_end/models/trace/handlers/LayoutShiftsHandler.d.ts +58 -0
- package/dist/lib/front_end/models/trace/handlers/MemoryHandler.d.ts +8 -0
- package/dist/lib/front_end/models/trace/handlers/MetaHandler.d.ts +82 -0
- package/dist/lib/front_end/models/trace/handlers/ModelHandlers.d.ts +30 -0
- package/dist/lib/front_end/models/trace/handlers/NetworkRequestsHandler.d.ts +56 -0
- package/dist/lib/front_end/models/trace/handlers/PageFramesHandler.d.ts +8 -0
- package/dist/lib/front_end/models/trace/handlers/PageLoadMetricsHandler.d.ts +86 -0
- package/dist/lib/front_end/models/trace/handlers/RendererHandler.d.ts +100 -0
- package/dist/lib/front_end/models/trace/handlers/SamplesHandler.d.ts +46 -0
- package/dist/lib/front_end/models/trace/handlers/ScreenshotsHandler.d.ts +12 -0
- package/dist/lib/front_end/models/trace/handlers/ScriptsHandler.d.ts +43 -0
- package/dist/lib/front_end/models/trace/handlers/SelectorStatsHandler.d.ts +27 -0
- package/dist/lib/front_end/models/trace/handlers/Threads.d.ts +34 -0
- package/dist/lib/front_end/models/trace/handlers/UserInteractionsHandler.d.ts +78 -0
- package/dist/lib/front_end/models/trace/handlers/UserTimingsHandler.d.ts +54 -0
- package/dist/lib/front_end/models/trace/handlers/WarningsHandler.d.ts +14 -0
- package/dist/lib/front_end/models/trace/handlers/WorkersHandler.d.ts +10 -0
- package/dist/lib/front_end/models/trace/handlers/handlers.d.ts +4 -0
- package/dist/lib/front_end/models/trace/handlers/helpers.d.ts +21 -0
- package/dist/lib/front_end/models/trace/handlers/types.d.ts +54 -0
- package/dist/lib/front_end/models/trace/helpers/Extensions.d.ts +6 -0
- package/dist/lib/front_end/models/trace/helpers/Network.d.ts +26 -0
- package/dist/lib/front_end/models/trace/helpers/SamplesIntegrator.d.ts +62 -0
- package/dist/lib/front_end/models/trace/helpers/SyntheticEvents.d.ts +13 -0
- package/dist/lib/front_end/models/trace/helpers/Timing.d.ts +59 -0
- package/dist/lib/front_end/models/trace/helpers/Trace.d.ts +148 -0
- package/dist/lib/front_end/models/trace/helpers/TreeHelpers.d.ts +109 -0
- package/dist/lib/front_end/models/trace/helpers/helpers.d.ts +7 -0
- package/dist/lib/front_end/models/trace/insights/CLSCulprits.d.ts +137 -0
- package/dist/lib/front_end/models/trace/insights/Cache.d.ts +71 -0
- package/dist/lib/front_end/models/trace/insights/CharacterSet.d.ts +49 -0
- package/dist/lib/front_end/models/trace/insights/Common.d.ts +77 -0
- package/dist/lib/front_end/models/trace/insights/DOMSize.d.ts +71 -0
- package/dist/lib/front_end/models/trace/insights/DocumentLatency.d.ts +66 -0
- package/dist/lib/front_end/models/trace/insights/DuplicatedJavaScript.d.ts +29 -0
- package/dist/lib/front_end/models/trace/insights/FontDisplay.d.ts +28 -0
- package/dist/lib/front_end/models/trace/insights/ForcedReflow.d.ts +56 -0
- package/dist/lib/front_end/models/trace/insights/INPBreakdown.d.ts +50 -0
- package/dist/lib/front_end/models/trace/insights/ImageDelivery.d.ts +95 -0
- package/dist/lib/front_end/models/trace/insights/LCPBreakdown.d.ts +85 -0
- package/dist/lib/front_end/models/trace/insights/LCPDiscovery.d.ts +64 -0
- package/dist/lib/front_end/models/trace/insights/LegacyJavaScript.d.ts +35 -0
- package/dist/lib/front_end/models/trace/insights/Models.d.ts +19 -0
- package/dist/lib/front_end/models/trace/insights/ModernHTTP.d.ts +53 -0
- package/dist/lib/front_end/models/trace/insights/NetworkDependencyTree.d.ts +135 -0
- package/dist/lib/front_end/models/trace/insights/RenderBlocking.d.ts +34 -0
- package/dist/lib/front_end/models/trace/insights/SlowCSSSelector.d.ts +56 -0
- package/dist/lib/front_end/models/trace/insights/Statistics.d.ts +18 -0
- package/dist/lib/front_end/models/trace/insights/ThirdParties.d.ts +33 -0
- package/dist/lib/front_end/models/trace/insights/Viewport.d.ts +24 -0
- package/dist/lib/front_end/models/trace/insights/insights.d.ts +6 -0
- package/dist/lib/front_end/models/trace/insights/types.d.ts +143 -0
- package/dist/lib/front_end/models/trace/lantern/core/LanternError.d.ts +3 -0
- package/dist/lib/front_end/models/trace/lantern/core/NetworkAnalyzer.d.ts +112 -0
- package/dist/lib/front_end/models/trace/lantern/core/core.d.ts +2 -0
- package/dist/lib/front_end/models/trace/lantern/graph/BaseNode.d.ts +98 -0
- package/dist/lib/front_end/models/trace/lantern/graph/CPUNode.d.ts +24 -0
- package/dist/lib/front_end/models/trace/lantern/graph/NetworkNode.d.ts +22 -0
- package/dist/lib/front_end/models/trace/lantern/graph/PageDependencyGraph.d.ts +43 -0
- package/dist/lib/front_end/models/trace/lantern/graph/graph.d.ts +4 -0
- package/dist/lib/front_end/models/trace/lantern/lantern.d.ts +6 -0
- package/dist/lib/front_end/models/trace/lantern/metrics/FirstContentfulPaint.d.ts +40 -0
- package/dist/lib/front_end/models/trace/lantern/metrics/Interactive.d.ts +12 -0
- package/dist/lib/front_end/models/trace/lantern/metrics/LargestContentfulPaint.d.ts +17 -0
- package/dist/lib/front_end/models/trace/lantern/metrics/MaxPotentialFID.d.ts +14 -0
- package/dist/lib/front_end/models/trace/lantern/metrics/Metric.d.ts +44 -0
- package/dist/lib/front_end/models/trace/lantern/metrics/SpeedIndex.d.ts +25 -0
- package/dist/lib/front_end/models/trace/lantern/metrics/TBTUtils.d.ts +31 -0
- package/dist/lib/front_end/models/trace/lantern/metrics/TotalBlockingTime.d.ts +16 -0
- package/dist/lib/front_end/models/trace/lantern/metrics/metrics.d.ts +8 -0
- package/dist/lib/front_end/models/trace/lantern/simulation/ConnectionPool.d.ts +26 -0
- package/dist/lib/front_end/models/trace/lantern/simulation/Constants.d.ts +31 -0
- package/dist/lib/front_end/models/trace/lantern/simulation/DNSCache.d.ts +22 -0
- package/dist/lib/front_end/models/trace/lantern/simulation/SimulationTimingMap.d.ts +62 -0
- package/dist/lib/front_end/models/trace/lantern/simulation/Simulator.d.ts +84 -0
- package/dist/lib/front_end/models/trace/lantern/simulation/TCPConnection.d.ts +47 -0
- package/dist/lib/front_end/models/trace/lantern/simulation/simulation.d.ts +6 -0
- package/dist/lib/front_end/models/trace/lantern/types/Lantern.d.ts +196 -0
- package/dist/lib/front_end/models/trace/lantern/types/types.d.ts +1 -0
- package/dist/lib/front_end/models/trace/trace.d.ts +14 -0
- package/dist/lib/front_end/models/trace/types/Configuration.d.ts +87 -0
- package/dist/lib/front_end/models/trace/types/Extensions.d.ts +77 -0
- package/dist/lib/front_end/models/trace/types/File.d.ts +197 -0
- package/dist/lib/front_end/models/trace/types/Overlays.d.ts +116 -0
- package/dist/lib/front_end/models/trace/types/Timing.d.ts +20 -0
- package/dist/lib/front_end/models/trace/types/TraceEvents.d.ts +2452 -0
- package/dist/lib/front_end/models/trace/types/types.d.ts +6 -0
- package/dist/lib/front_end/third_party/i18n/i18n-impl.d.ts +25 -0
- package/dist/lib/front_end/third_party/i18n/i18n.d.ts +3 -0
- package/dist/lib/front_end/third_party/i18n/localized-string-set.d.ts +49 -0
- package/dist/lib/front_end/third_party/intl-messageformat/intl-messageformat.d.ts +2 -0
- package/dist/lib/front_end/third_party/legacy-javascript/legacy-javascript.d.ts +2 -0
- package/dist/lib/front_end/third_party/source-map-scopes-codec/package/src/builder/builder.d.ts +67 -0
- package/dist/lib/front_end/third_party/source-map-scopes-codec/package/src/builder/safe_builder.d.ts +38 -0
- package/dist/lib/front_end/third_party/source-map-scopes-codec/package/src/codec.d.ts +48 -0
- package/dist/lib/front_end/third_party/source-map-scopes-codec/package/src/decode/decode.d.ts +31 -0
- package/dist/lib/front_end/third_party/source-map-scopes-codec/package/src/encode/encode.d.ts +8 -0
- package/dist/lib/front_end/third_party/source-map-scopes-codec/package/src/encode/encoder.d.ts +6 -0
- package/dist/lib/front_end/third_party/source-map-scopes-codec/package/src/mod.d.ts +5 -0
- package/dist/lib/front_end/third_party/source-map-scopes-codec/package/src/scopes.d.ts +168 -0
- package/dist/lib/front_end/third_party/source-map-scopes-codec/package/src/util.d.ts +5 -0
- package/dist/lib/front_end/third_party/source-map-scopes-codec/package/src/vlq.d.ts +14 -0
- package/dist/lib/front_end/third_party/source-map-scopes-codec/source-map-scopes-codec.d.ts +1 -0
- package/dist/lib/front_end/third_party/third-party-web/third-party-web.d.ts +2 -0
- package/dist/src/init.d.ts +1 -0
- package/dist/src/timeline.d.ts +5 -0
- package/examples/inp.ts +34 -0
- package/examples/stats.ts +66 -0
- package/package.json +1 -1
- package/.claude/settings.local.json +0 -14
|
@@ -0,0 +1,2452 @@
|
|
|
1
|
+
import type * as Platform from '../../../core/platform/platform.js';
|
|
2
|
+
import type * as SDK from '../../../core/sdk/sdk.js';
|
|
3
|
+
import type * as Protocol from '../../../generated/protocol.js';
|
|
4
|
+
import type { Micro, Milli, Seconds, TraceWindowMicro } from './Timing.js';
|
|
5
|
+
/** Trace Events. **/
|
|
6
|
+
export declare const enum Phase {
|
|
7
|
+
BEGIN = "B",
|
|
8
|
+
END = "E",
|
|
9
|
+
COMPLETE = "X",
|
|
10
|
+
INSTANT = "I",
|
|
11
|
+
COUNTER = "C",
|
|
12
|
+
ASYNC_NESTABLE_START = "b",
|
|
13
|
+
ASYNC_NESTABLE_INSTANT = "n",
|
|
14
|
+
ASYNC_NESTABLE_END = "e",
|
|
15
|
+
ASYNC_STEP_INTO = "T",
|
|
16
|
+
ASYNC_BEGIN = "S",
|
|
17
|
+
ASYNC_END = "F",
|
|
18
|
+
ASYNC_STEP_PAST = "p",
|
|
19
|
+
FLOW_START = "s",
|
|
20
|
+
FLOW_STEP = "t",
|
|
21
|
+
FLOW_END = "f",
|
|
22
|
+
SAMPLE = "P",
|
|
23
|
+
OBJECT_CREATED = "N",
|
|
24
|
+
OBJECT_SNAPSHOT = "O",
|
|
25
|
+
OBJECT_DESTROYED = "D",
|
|
26
|
+
METADATA = "M",
|
|
27
|
+
MEMORY_DUMP_GLOBAL = "V",
|
|
28
|
+
MEMORY_DUMP_PROCESS = "v",
|
|
29
|
+
MARK = "R",
|
|
30
|
+
CLOCK_SYNC = "c"
|
|
31
|
+
}
|
|
32
|
+
export declare function isNestableAsyncPhase(phase: Phase): boolean;
|
|
33
|
+
export declare function isPhaseAsync(phase: Phase): boolean;
|
|
34
|
+
export declare function isFlowPhase(phase: Phase): boolean;
|
|
35
|
+
export declare const enum Scope {
|
|
36
|
+
THREAD = "t",
|
|
37
|
+
PROCESS = "p",
|
|
38
|
+
GLOBAL = "g"
|
|
39
|
+
}
|
|
40
|
+
export interface Event {
|
|
41
|
+
args?: Args;
|
|
42
|
+
cat: string;
|
|
43
|
+
name: string;
|
|
44
|
+
ph: Phase;
|
|
45
|
+
pid: ProcessID;
|
|
46
|
+
tid: ThreadID;
|
|
47
|
+
tts?: Micro;
|
|
48
|
+
ts: Micro;
|
|
49
|
+
tdur?: Micro;
|
|
50
|
+
dur?: Micro;
|
|
51
|
+
}
|
|
52
|
+
export declare function objectIsEvent(obj: object): obj is Event;
|
|
53
|
+
export interface Args {
|
|
54
|
+
data?: ArgsData;
|
|
55
|
+
sampleTraceId?: number;
|
|
56
|
+
stackTrace?: CallFrame[];
|
|
57
|
+
}
|
|
58
|
+
export interface ArgsData {
|
|
59
|
+
stackTrace?: CallFrame[];
|
|
60
|
+
sampleTraceId?: number;
|
|
61
|
+
url?: string;
|
|
62
|
+
navigationId?: string;
|
|
63
|
+
/** For soft navs. */
|
|
64
|
+
performanceTimelineNavigationId?: number;
|
|
65
|
+
frame?: string;
|
|
66
|
+
}
|
|
67
|
+
export interface CallFrame {
|
|
68
|
+
codeType?: string;
|
|
69
|
+
functionName: string;
|
|
70
|
+
scriptId: number | string;
|
|
71
|
+
columnNumber: number;
|
|
72
|
+
lineNumber: number;
|
|
73
|
+
url: string;
|
|
74
|
+
}
|
|
75
|
+
export declare function objectIsCallFrame(object: object): object is CallFrame;
|
|
76
|
+
export interface TraceFrame {
|
|
77
|
+
frame: string;
|
|
78
|
+
name: string;
|
|
79
|
+
processId: ProcessID;
|
|
80
|
+
url: string;
|
|
81
|
+
parent?: string;
|
|
82
|
+
isOutermostMainFrame?: boolean;
|
|
83
|
+
isInPrimaryMainFrame?: boolean;
|
|
84
|
+
}
|
|
85
|
+
export interface Sample extends Event {
|
|
86
|
+
ph: Phase.SAMPLE;
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* A fake trace event created to support CDP.Profiler.Profiles in the
|
|
90
|
+
* trace engine.
|
|
91
|
+
*
|
|
92
|
+
* Do not extend the SyntheticBased interface because this one doesn't have a raw trace event but a raw cpu profile.
|
|
93
|
+
* Also we won't manage this event through SyntheticEventsManager.
|
|
94
|
+
*/
|
|
95
|
+
export interface SyntheticCpuProfile extends Complete {
|
|
96
|
+
name: Name.CPU_PROFILE;
|
|
97
|
+
id: ProfileID;
|
|
98
|
+
args: Args & {
|
|
99
|
+
data: ArgsData & {
|
|
100
|
+
cpuProfile: Protocol.Profiler.Profile;
|
|
101
|
+
};
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
export interface Profile extends Sample {
|
|
105
|
+
name: Name.PROFILE;
|
|
106
|
+
id: ProfileID;
|
|
107
|
+
args: Args & {
|
|
108
|
+
data: ArgsData & {
|
|
109
|
+
startTime: Micro;
|
|
110
|
+
source?: ProfileSource;
|
|
111
|
+
};
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
export interface ProfileChunk extends Sample {
|
|
115
|
+
name: Name.PROFILE_CHUNK;
|
|
116
|
+
id: ProfileID;
|
|
117
|
+
args: Args & {
|
|
118
|
+
data?: ArgsData & {
|
|
119
|
+
cpuProfile?: PartialProfile;
|
|
120
|
+
timeDeltas?: Micro[];
|
|
121
|
+
lines?: number[];
|
|
122
|
+
source?: ProfileSource;
|
|
123
|
+
columns?: number[];
|
|
124
|
+
};
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
export interface PartialProfile {
|
|
128
|
+
nodes?: PartialNode[];
|
|
129
|
+
samples: CallFrameID[];
|
|
130
|
+
/**
|
|
131
|
+
* Contains trace ids assigned to samples, if any. Trace ids are
|
|
132
|
+
* keyed by the sample index in the profile (the keys of the object
|
|
133
|
+
* are strings containing the numeric index).
|
|
134
|
+
*/
|
|
135
|
+
trace_ids?: Record<string, number>;
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Source of profile data, used to select the most relevant profile when
|
|
139
|
+
* multiple profiles exist for the same thread.
|
|
140
|
+
*
|
|
141
|
+
* - 'Inspector': User-initiated via console.profile()/profileEnd().
|
|
142
|
+
* - 'Internal': Browser-initiated during performance traces.
|
|
143
|
+
* - 'SelfProfiling': Page-initiated via JS Self-Profiling API.
|
|
144
|
+
*
|
|
145
|
+
* Selection priority (see PROFILE_SOURCES_BY_PRIORITY in SamplesHandler.ts).
|
|
146
|
+
*/
|
|
147
|
+
export type ProfileSource = 'Inspector' | 'SelfProfiling' | 'Internal';
|
|
148
|
+
export declare const VALID_PROFILE_SOURCES: readonly ProfileSource[];
|
|
149
|
+
export interface PartialNode {
|
|
150
|
+
callFrame: CallFrame;
|
|
151
|
+
id: CallFrameID;
|
|
152
|
+
parent?: CallFrameID;
|
|
153
|
+
}
|
|
154
|
+
export interface Complete extends Event {
|
|
155
|
+
ph: Phase.COMPLETE;
|
|
156
|
+
dur: Micro;
|
|
157
|
+
}
|
|
158
|
+
export interface RunTask extends Complete {
|
|
159
|
+
name: Name.RUN_TASK;
|
|
160
|
+
}
|
|
161
|
+
export declare function isRunTask(event: Event): event is RunTask;
|
|
162
|
+
export interface FireIdleCallback extends Complete {
|
|
163
|
+
name: Name.FIRE_IDLE_CALLBACK;
|
|
164
|
+
args: Args & {
|
|
165
|
+
data: ArgsData & {
|
|
166
|
+
allottedMilliseconds: Milli;
|
|
167
|
+
frame: string;
|
|
168
|
+
id: number;
|
|
169
|
+
timedOut: boolean;
|
|
170
|
+
};
|
|
171
|
+
};
|
|
172
|
+
}
|
|
173
|
+
export interface SchedulePostMessage extends Instant {
|
|
174
|
+
name: Name.SCHEDULE_POST_MESSAGE;
|
|
175
|
+
args: Args & {
|
|
176
|
+
data: ArgsData & {
|
|
177
|
+
traceId: string;
|
|
178
|
+
};
|
|
179
|
+
};
|
|
180
|
+
}
|
|
181
|
+
export interface HandlePostMessage extends Complete {
|
|
182
|
+
name: Name.HANDLE_POST_MESSAGE;
|
|
183
|
+
args: Args & {
|
|
184
|
+
data: ArgsData & {
|
|
185
|
+
traceId: string;
|
|
186
|
+
};
|
|
187
|
+
};
|
|
188
|
+
}
|
|
189
|
+
export interface Dispatch extends Complete {
|
|
190
|
+
name: 'EventDispatch';
|
|
191
|
+
args: Args & {
|
|
192
|
+
data: ArgsData & {
|
|
193
|
+
type: string;
|
|
194
|
+
};
|
|
195
|
+
};
|
|
196
|
+
}
|
|
197
|
+
export interface ParseHTML extends Complete {
|
|
198
|
+
name: 'ParseHTML';
|
|
199
|
+
args: Args & {
|
|
200
|
+
beginData: {
|
|
201
|
+
frame: string;
|
|
202
|
+
startLine: number;
|
|
203
|
+
url: string;
|
|
204
|
+
sampleTraceId?: number;
|
|
205
|
+
};
|
|
206
|
+
endData?: {
|
|
207
|
+
endLine: number;
|
|
208
|
+
};
|
|
209
|
+
};
|
|
210
|
+
}
|
|
211
|
+
export interface Begin extends Event {
|
|
212
|
+
ph: Phase.BEGIN;
|
|
213
|
+
}
|
|
214
|
+
export interface End extends Event {
|
|
215
|
+
ph: Phase.END;
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* This denotes a complete event created from a pair of begin and end
|
|
219
|
+
* events. For practicality, instead of always having to look for the
|
|
220
|
+
* end event corresponding to a begin event, we create a synthetic
|
|
221
|
+
* complete event that comprises the data of both from the beginning in
|
|
222
|
+
* the RendererHandler.
|
|
223
|
+
*/
|
|
224
|
+
export type SyntheticComplete = Complete;
|
|
225
|
+
/**
|
|
226
|
+
* TODO(paulirish): Migrate to the new (Sept 2024) EventTiming trace events.
|
|
227
|
+
* See https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/timing/window_performance.cc;l=900-901;drc=b503c262e425eae59ced4a80d59d176ed07152c7
|
|
228
|
+
**/
|
|
229
|
+
export type EventTimingBeginOrEnd = EventTimingBegin | EventTimingEnd;
|
|
230
|
+
export interface EventTimingBegin extends Event {
|
|
231
|
+
ph: Phase.ASYNC_NESTABLE_START;
|
|
232
|
+
name: Name.EVENT_TIMING;
|
|
233
|
+
id: string;
|
|
234
|
+
args: Args & {
|
|
235
|
+
data: ArgsData & {
|
|
236
|
+
cancelable: boolean;
|
|
237
|
+
duration: Milli;
|
|
238
|
+
type: string;
|
|
239
|
+
interactionId: number;
|
|
240
|
+
interactionOffset: number;
|
|
241
|
+
nodeId: Protocol.DOM.BackendNodeId;
|
|
242
|
+
frame?: string;
|
|
243
|
+
processingEnd?: Milli;
|
|
244
|
+
processingStart?: Milli;
|
|
245
|
+
timeStamp?: Milli;
|
|
246
|
+
enqueuedToMainThreadTime?: Milli;
|
|
247
|
+
commitFinishTime?: Milli;
|
|
248
|
+
};
|
|
249
|
+
frame?: string;
|
|
250
|
+
};
|
|
251
|
+
}
|
|
252
|
+
export interface EventTimingEnd extends Event {
|
|
253
|
+
ph: Phase.ASYNC_NESTABLE_END;
|
|
254
|
+
name: Name.EVENT_TIMING;
|
|
255
|
+
id: string;
|
|
256
|
+
args: Args;
|
|
257
|
+
}
|
|
258
|
+
export interface GPUTask extends Complete {
|
|
259
|
+
name: 'GPUTask';
|
|
260
|
+
args: Args & {
|
|
261
|
+
data?: ArgsData & {
|
|
262
|
+
renderer_pid: ProcessID;
|
|
263
|
+
used_bytes: number;
|
|
264
|
+
};
|
|
265
|
+
};
|
|
266
|
+
}
|
|
267
|
+
export interface SyntheticNetworkRedirect {
|
|
268
|
+
url: string;
|
|
269
|
+
priority: string;
|
|
270
|
+
requestMethod?: string;
|
|
271
|
+
ts: Micro;
|
|
272
|
+
dur: Micro;
|
|
273
|
+
}
|
|
274
|
+
/**
|
|
275
|
+
* ProcessedArgsData is used to store the processed data of a network
|
|
276
|
+
* request. Which is used to distinguish from the date we extract from the
|
|
277
|
+
* trace event directly.
|
|
278
|
+
**/
|
|
279
|
+
interface SyntheticArgsData {
|
|
280
|
+
dnsLookup: Micro;
|
|
281
|
+
download: Micro;
|
|
282
|
+
downloadStart: Micro;
|
|
283
|
+
finishTime: Micro;
|
|
284
|
+
initialConnection: Micro;
|
|
285
|
+
isDiskCached: boolean;
|
|
286
|
+
isHttps: boolean;
|
|
287
|
+
isMemoryCached: boolean;
|
|
288
|
+
isPushedResource: boolean;
|
|
289
|
+
networkDuration: Micro;
|
|
290
|
+
processingDuration: Micro;
|
|
291
|
+
proxyNegotiation: Micro;
|
|
292
|
+
queueing: Micro;
|
|
293
|
+
redirectionDuration: Micro;
|
|
294
|
+
requestSent: Micro;
|
|
295
|
+
sendStartTime: Micro;
|
|
296
|
+
ssl: Micro;
|
|
297
|
+
stalled: Micro;
|
|
298
|
+
totalTime: Micro;
|
|
299
|
+
/** receiveHeadersEnd - sendEnd */
|
|
300
|
+
waiting: Micro;
|
|
301
|
+
/** receiveHeadersStart - sendEnd */
|
|
302
|
+
serverResponseTime: Micro;
|
|
303
|
+
}
|
|
304
|
+
export interface SyntheticNetworkRequest extends Complete, SyntheticBased<Phase.COMPLETE> {
|
|
305
|
+
rawSourceEvent: ResourceSendRequest;
|
|
306
|
+
args: Args & {
|
|
307
|
+
data: ArgsData & {
|
|
308
|
+
syntheticData: SyntheticArgsData;
|
|
309
|
+
/** Size of the resource after decompression (if applicable). */
|
|
310
|
+
decodedBodyLength: number;
|
|
311
|
+
/**
|
|
312
|
+
* Size of the resource over the network. Includes size of headers and
|
|
313
|
+
* anything else in the HTTP response packet.
|
|
314
|
+
*/
|
|
315
|
+
encodedDataLength: number;
|
|
316
|
+
frame: string;
|
|
317
|
+
fromServiceWorker: boolean | undefined;
|
|
318
|
+
isLinkPreload: boolean;
|
|
319
|
+
/** Empty string if no response. */
|
|
320
|
+
mimeType: string;
|
|
321
|
+
priority: Protocol.Network.ResourcePriority;
|
|
322
|
+
initialPriority: Protocol.Network.ResourcePriority;
|
|
323
|
+
/**
|
|
324
|
+
* This is the protocol used to resolve the request.
|
|
325
|
+
*
|
|
326
|
+
* Note, this is not the same as URL.protocol.
|
|
327
|
+
*
|
|
328
|
+
* Example values (not exhaustive): http/0.9, http/1.0, http/1.1, http, h2, h3-Q050, data, blob, file
|
|
329
|
+
*/
|
|
330
|
+
protocol: string;
|
|
331
|
+
redirects: SyntheticNetworkRedirect[];
|
|
332
|
+
renderBlocking: RenderBlocking;
|
|
333
|
+
requestId: string;
|
|
334
|
+
requestingFrameUrl: string;
|
|
335
|
+
/** 0 if no response. */
|
|
336
|
+
statusCode: number;
|
|
337
|
+
resourceType: Protocol.Network.ResourceType;
|
|
338
|
+
responseHeaders: Array<{
|
|
339
|
+
name: string;
|
|
340
|
+
value: string;
|
|
341
|
+
}> | null;
|
|
342
|
+
fetchPriorityHint: FetchPriorityHint;
|
|
343
|
+
url: string;
|
|
344
|
+
/** True only if got a 'resourceFinish' event indicating a failure. */
|
|
345
|
+
failed: boolean;
|
|
346
|
+
/** True only if got a 'resourceFinish' event. Note even failed requests with no response may be "finished". */
|
|
347
|
+
finished: boolean;
|
|
348
|
+
hasResponse: boolean;
|
|
349
|
+
/** If undefined, trace was either too old or had no response. */
|
|
350
|
+
connectionId: number | undefined;
|
|
351
|
+
/** If undefined, trace was either too old or had no response. */
|
|
352
|
+
connectionReused: boolean | undefined;
|
|
353
|
+
initiator?: Initiator;
|
|
354
|
+
requestMethod?: string;
|
|
355
|
+
timing?: ResourceReceiveResponseTimingData;
|
|
356
|
+
/** Server response time according to Lightrider. */
|
|
357
|
+
lrServerResponseTime?: Milli;
|
|
358
|
+
};
|
|
359
|
+
};
|
|
360
|
+
cat: 'loading';
|
|
361
|
+
name: Name.SYNTHETIC_NETWORK_REQUEST;
|
|
362
|
+
ph: Phase.COMPLETE;
|
|
363
|
+
dur: Micro;
|
|
364
|
+
tdur: Micro;
|
|
365
|
+
ts: Micro;
|
|
366
|
+
tts: Micro;
|
|
367
|
+
pid: ProcessID;
|
|
368
|
+
tid: ThreadID;
|
|
369
|
+
}
|
|
370
|
+
export interface SyntheticWebSocketConnection extends Complete, SyntheticBased<Phase.COMPLETE> {
|
|
371
|
+
rawSourceEvent: Event;
|
|
372
|
+
args: Args & {
|
|
373
|
+
data: ArgsData & {
|
|
374
|
+
identifier: number;
|
|
375
|
+
priority: Protocol.Network.ResourcePriority;
|
|
376
|
+
url: string;
|
|
377
|
+
};
|
|
378
|
+
};
|
|
379
|
+
cat: string;
|
|
380
|
+
name: 'SyntheticWebSocketConnection';
|
|
381
|
+
ph: Phase.COMPLETE;
|
|
382
|
+
dur: Micro;
|
|
383
|
+
ts: Micro;
|
|
384
|
+
pid: ProcessID;
|
|
385
|
+
tid: ThreadID;
|
|
386
|
+
s: Scope;
|
|
387
|
+
}
|
|
388
|
+
export declare const enum AuctionWorkletType {
|
|
389
|
+
BIDDER = "bidder",
|
|
390
|
+
SELLER = "seller",
|
|
391
|
+
UNKNOWN = "unknown"
|
|
392
|
+
}
|
|
393
|
+
export interface SyntheticAuctionWorklet extends Instant, SyntheticBased<Phase.INSTANT> {
|
|
394
|
+
rawSourceEvent: Event;
|
|
395
|
+
name: 'SyntheticAuctionWorklet';
|
|
396
|
+
pid: ProcessID;
|
|
397
|
+
host: string;
|
|
398
|
+
target: string;
|
|
399
|
+
type: AuctionWorkletType;
|
|
400
|
+
args: Args & {
|
|
401
|
+
data: ArgsData & {
|
|
402
|
+
utilityThread: ThreadName;
|
|
403
|
+
v8HelperThread: ThreadName;
|
|
404
|
+
} & ({
|
|
405
|
+
runningInProcessEvent: AuctionWorkletRunningInProcess;
|
|
406
|
+
doneWithProcessEvent: AuctionWorkletDoneWithProcess;
|
|
407
|
+
} | {
|
|
408
|
+
doneWithProcessEvent: AuctionWorkletDoneWithProcess;
|
|
409
|
+
runningInProcessEvent?: AuctionWorkletRunningInProcess;
|
|
410
|
+
} | {
|
|
411
|
+
runningInProcessEvent: AuctionWorkletRunningInProcess;
|
|
412
|
+
doneWithProcessEvent?: AuctionWorkletDoneWithProcess;
|
|
413
|
+
});
|
|
414
|
+
};
|
|
415
|
+
}
|
|
416
|
+
export interface AuctionWorkletRunningInProcess extends Event {
|
|
417
|
+
name: 'AuctionWorkletRunningInProcess';
|
|
418
|
+
ph: Phase.INSTANT;
|
|
419
|
+
args: Args & {
|
|
420
|
+
data: ArgsData & {
|
|
421
|
+
host: string;
|
|
422
|
+
pid: ProcessID;
|
|
423
|
+
target: string;
|
|
424
|
+
type: AuctionWorkletType;
|
|
425
|
+
};
|
|
426
|
+
};
|
|
427
|
+
}
|
|
428
|
+
export interface AuctionWorkletDoneWithProcess extends Event {
|
|
429
|
+
name: 'AuctionWorkletDoneWithProcess';
|
|
430
|
+
ph: Phase.INSTANT;
|
|
431
|
+
args: Args & {
|
|
432
|
+
data: ArgsData & {
|
|
433
|
+
host: string;
|
|
434
|
+
pid: ProcessID;
|
|
435
|
+
target: string;
|
|
436
|
+
type: AuctionWorkletType;
|
|
437
|
+
};
|
|
438
|
+
};
|
|
439
|
+
}
|
|
440
|
+
export declare function isAuctionWorkletRunningInProcess(event: Event): event is AuctionWorkletRunningInProcess;
|
|
441
|
+
export declare function isAuctionWorkletDoneWithProcess(event: Event): event is AuctionWorkletDoneWithProcess;
|
|
442
|
+
/**
|
|
443
|
+
* In January 2025 when crrev.com/c/6197645 landed, it changed the format of screenshot events.
|
|
444
|
+
* That is why we two screenshot types:
|
|
445
|
+
* `LegacyScreenshot` and `LegacySyntheticScreenshot`: BEFORE the above CL.
|
|
446
|
+
* `Screenshot`: AFTER the above CL.
|
|
447
|
+
* Important things to note:
|
|
448
|
+
* 1. Both the "old" and "new" events share the name "Screenshot" but their format is very different.
|
|
449
|
+
* 2. The old events had both a raw event (LegacyScreenshot) and a synthetic
|
|
450
|
+
* event (LegacySyntheticScreenshot). The new events only have a raw event, as
|
|
451
|
+
* we do not need the additional complexity of a synthetic event.
|
|
452
|
+
* 3. Because we like to support "old" traces, DevTools will maintain its
|
|
453
|
+
* support for both screenshot events for the foreseeable future. If you are
|
|
454
|
+
* consuming screenshot events from the ScreenshotHandler, you must make sure
|
|
455
|
+
* to have your code deal with the two different formats.
|
|
456
|
+
*/
|
|
457
|
+
export interface LegacyScreenshot extends Event {
|
|
458
|
+
/**
|
|
459
|
+
* @deprecated This value is incorrect. Use ScreenshotHandler.getPresentationTimestamp()
|
|
460
|
+
*/
|
|
461
|
+
ts: Micro;
|
|
462
|
+
/** The id is the frame sequence number in hex */
|
|
463
|
+
id: string;
|
|
464
|
+
args: Args & {
|
|
465
|
+
snapshot: string;
|
|
466
|
+
};
|
|
467
|
+
name: Name.SCREENSHOT;
|
|
468
|
+
cat: 'disabled-by-default-devtools.screenshot';
|
|
469
|
+
ph: Phase.OBJECT_SNAPSHOT;
|
|
470
|
+
}
|
|
471
|
+
export declare function isLegacyScreenshot(event: Event): event is LegacyScreenshot;
|
|
472
|
+
export declare function isLegacySyntheticScreenshot(event: Event): event is LegacySyntheticScreenshot;
|
|
473
|
+
export declare function isScreenshot(event: Event): event is Screenshot;
|
|
474
|
+
export interface LegacySyntheticScreenshot extends Event, SyntheticBased {
|
|
475
|
+
rawSourceEvent: LegacyScreenshot;
|
|
476
|
+
/** This is the correct presentation timestamp. */
|
|
477
|
+
ts: Micro;
|
|
478
|
+
args: Args & {
|
|
479
|
+
dataUri: string;
|
|
480
|
+
};
|
|
481
|
+
name: Name.SCREENSHOT;
|
|
482
|
+
cat: 'disabled-by-default-devtools.screenshot';
|
|
483
|
+
ph: Phase.OBJECT_SNAPSHOT;
|
|
484
|
+
}
|
|
485
|
+
export interface Screenshot extends Instant {
|
|
486
|
+
args: Args & {
|
|
487
|
+
snapshot: string;
|
|
488
|
+
source_id: number;
|
|
489
|
+
frame_sequence: number;
|
|
490
|
+
expected_display_time: number;
|
|
491
|
+
};
|
|
492
|
+
}
|
|
493
|
+
export interface Animation extends Event {
|
|
494
|
+
args: Args & {
|
|
495
|
+
data: ArgsData & {
|
|
496
|
+
nodeName?: string;
|
|
497
|
+
nodeId?: Protocol.DOM.BackendNodeId;
|
|
498
|
+
displayName?: string;
|
|
499
|
+
id?: string;
|
|
500
|
+
name?: string;
|
|
501
|
+
state?: string;
|
|
502
|
+
compositeFailed?: number;
|
|
503
|
+
unsupportedProperties?: string[];
|
|
504
|
+
};
|
|
505
|
+
};
|
|
506
|
+
name: 'Animation';
|
|
507
|
+
id2?: {
|
|
508
|
+
local?: string;
|
|
509
|
+
};
|
|
510
|
+
ph: Phase.ASYNC_NESTABLE_START | Phase.ASYNC_NESTABLE_END | Phase.ASYNC_NESTABLE_INSTANT;
|
|
511
|
+
}
|
|
512
|
+
export interface Metadata extends Event {
|
|
513
|
+
ph: Phase.METADATA;
|
|
514
|
+
args: Args & {
|
|
515
|
+
name?: string;
|
|
516
|
+
uptime?: string;
|
|
517
|
+
};
|
|
518
|
+
}
|
|
519
|
+
export interface ThreadName extends Metadata {
|
|
520
|
+
name: Name.THREAD_NAME;
|
|
521
|
+
args: Args & {
|
|
522
|
+
name?: string;
|
|
523
|
+
};
|
|
524
|
+
}
|
|
525
|
+
export interface ProcessName extends Metadata {
|
|
526
|
+
name: 'process_name';
|
|
527
|
+
}
|
|
528
|
+
export interface Mark extends Event {
|
|
529
|
+
ph: Phase.MARK;
|
|
530
|
+
}
|
|
531
|
+
export interface NavigationStart extends Mark {
|
|
532
|
+
name: Name.NAVIGATION_START;
|
|
533
|
+
args: Args & {
|
|
534
|
+
frame: string;
|
|
535
|
+
data?: ArgsData & {
|
|
536
|
+
/** Must be non-empty to be valid. An empty documentLoaderURL means the event can be ignored. */
|
|
537
|
+
documentLoaderURL: string;
|
|
538
|
+
isLoadingMainFrame: boolean;
|
|
539
|
+
navigationId: string;
|
|
540
|
+
/**
|
|
541
|
+
* `isOutermostMainFrame` was introduced in crrev.com/c/3625434 and exists because of Fenced Frames
|
|
542
|
+
* [github.com/WICG/fenced-frame/tree/master/explainer]. Fenced frames introduce a situation where
|
|
543
|
+
* `isLoadingMainFrame` could be true for a navigation, but that navigation be within an embedded "main frame", and
|
|
544
|
+
* therefore it wouldn't be on the top level main frame. In situations where we need to distinguish that, we can
|
|
545
|
+
* rely on `isOutermostMainFrame`, which will only be true for navigations on the top level main frame.
|
|
546
|
+
* This flag is optional as it was introduced in May 2022; so users reasonably may import traces from before that
|
|
547
|
+
* date that do not have this field present.
|
|
548
|
+
*/
|
|
549
|
+
isOutermostMainFrame?: boolean;
|
|
550
|
+
/**
|
|
551
|
+
* @deprecated use documentLoaderURL for navigation events URLs
|
|
552
|
+
*/
|
|
553
|
+
url?: string;
|
|
554
|
+
};
|
|
555
|
+
};
|
|
556
|
+
}
|
|
557
|
+
export interface SoftNavigationStart extends Event {
|
|
558
|
+
name: Name.SOFT_NAVIGATION_START;
|
|
559
|
+
ph: Phase.ASYNC_NESTABLE_INSTANT;
|
|
560
|
+
args: Args & {
|
|
561
|
+
frame: string;
|
|
562
|
+
context: {
|
|
563
|
+
softNavContextId: number;
|
|
564
|
+
URL: string;
|
|
565
|
+
timeOrigin: number;
|
|
566
|
+
domModifications: number;
|
|
567
|
+
firstContentfulPaint: number;
|
|
568
|
+
paintedArea: number;
|
|
569
|
+
performanceTimelineNavigationId: number;
|
|
570
|
+
repaintedArea: number;
|
|
571
|
+
};
|
|
572
|
+
};
|
|
573
|
+
}
|
|
574
|
+
export declare function isSoftNavigationStart(event: Event): event is SoftNavigationStart;
|
|
575
|
+
export interface FirstContentfulPaint extends Mark {
|
|
576
|
+
name: Name.MARK_FCP;
|
|
577
|
+
args: Args & {
|
|
578
|
+
frame: string;
|
|
579
|
+
data?: ArgsData & {
|
|
580
|
+
navigationId: string;
|
|
581
|
+
};
|
|
582
|
+
};
|
|
583
|
+
}
|
|
584
|
+
export interface FirstPaint extends Mark {
|
|
585
|
+
name: Name.MARK_FIRST_PAINT;
|
|
586
|
+
args: Args & {
|
|
587
|
+
frame: string;
|
|
588
|
+
data?: ArgsData & {
|
|
589
|
+
navigationId: string;
|
|
590
|
+
};
|
|
591
|
+
};
|
|
592
|
+
}
|
|
593
|
+
export type PageLoadEvent = FirstContentfulPaint | MarkDOMContent | InteractiveTime | AnyLargestContentfulPaintCandidate | LayoutShift | FirstPaint | MarkLoad | NavigationStart | SoftNavigationStart;
|
|
594
|
+
export declare const MarkerName: readonly [Name.MARK_DOM_CONTENT, Name.MARK_LOAD, Name.MARK_FIRST_PAINT, Name.MARK_FCP, Name.MARK_LCP_CANDIDATE, Name.MARK_LCP_CANDIDATE_FOR_SOFT_NAVIGATION, Name.NAVIGATION_START, Name.SOFT_NAVIGATION_START];
|
|
595
|
+
export interface MarkerEvent extends Event {
|
|
596
|
+
name: typeof MarkerName[number];
|
|
597
|
+
}
|
|
598
|
+
export declare function isMarkerEvent(event: Event): event is MarkerEvent;
|
|
599
|
+
export declare function eventIsPageLoadEvent(event: Event): event is PageLoadEvent;
|
|
600
|
+
export interface LargestContentfulPaintCandidate extends Mark {
|
|
601
|
+
name: Name.MARK_LCP_CANDIDATE;
|
|
602
|
+
args: Args & {
|
|
603
|
+
frame: string;
|
|
604
|
+
data?: ArgsData & {
|
|
605
|
+
candidateIndex: number;
|
|
606
|
+
isOutermostMainFrame: boolean;
|
|
607
|
+
isMainFrame: boolean;
|
|
608
|
+
navigationId: string;
|
|
609
|
+
nodeId: Protocol.DOM.BackendNodeId;
|
|
610
|
+
loadingAttr: string;
|
|
611
|
+
type?: string;
|
|
612
|
+
nodeName?: string;
|
|
613
|
+
};
|
|
614
|
+
};
|
|
615
|
+
}
|
|
616
|
+
export interface LargestContentfulPaintCandidateForSoftNavigation extends Mark {
|
|
617
|
+
name: Name.MARK_LCP_CANDIDATE_FOR_SOFT_NAVIGATION;
|
|
618
|
+
args: Args & {
|
|
619
|
+
frame: string;
|
|
620
|
+
data?: ArgsData & {
|
|
621
|
+
candidateIndex: number;
|
|
622
|
+
isOutermostMainFrame: boolean;
|
|
623
|
+
isMainFrame: boolean;
|
|
624
|
+
nodeId: Protocol.DOM.BackendNodeId;
|
|
625
|
+
loadingAttr: string;
|
|
626
|
+
performanceTimelineNavigationId: number;
|
|
627
|
+
type?: string;
|
|
628
|
+
nodeName?: string;
|
|
629
|
+
};
|
|
630
|
+
};
|
|
631
|
+
}
|
|
632
|
+
export type AnyLargestContentfulPaintCandidate = LargestContentfulPaintCandidate | LargestContentfulPaintCandidateForSoftNavigation;
|
|
633
|
+
export interface LargestImagePaintCandidate extends Mark {
|
|
634
|
+
name: 'LargestImagePaint::Candidate';
|
|
635
|
+
args: Args & {
|
|
636
|
+
frame: string;
|
|
637
|
+
data?: ArgsData & {
|
|
638
|
+
candidateIndex: number;
|
|
639
|
+
imageUrl: string;
|
|
640
|
+
DOMNodeId: Protocol.DOM.BackendNodeId;
|
|
641
|
+
};
|
|
642
|
+
};
|
|
643
|
+
}
|
|
644
|
+
export interface LargestTextPaintCandidate extends Mark {
|
|
645
|
+
name: 'LargestTextPaint::Candidate';
|
|
646
|
+
args: Args & {
|
|
647
|
+
frame: string;
|
|
648
|
+
data?: ArgsData & {
|
|
649
|
+
candidateIndex: number;
|
|
650
|
+
DOMNodeId: Protocol.DOM.BackendNodeId;
|
|
651
|
+
nodeName?: string;
|
|
652
|
+
};
|
|
653
|
+
};
|
|
654
|
+
}
|
|
655
|
+
export interface InteractiveTime extends Mark {
|
|
656
|
+
name: 'InteractiveTime';
|
|
657
|
+
args: Args & {
|
|
658
|
+
args: {
|
|
659
|
+
total_blocking_time_ms: number;
|
|
660
|
+
};
|
|
661
|
+
frame: string;
|
|
662
|
+
};
|
|
663
|
+
}
|
|
664
|
+
export interface Instant extends Event {
|
|
665
|
+
ph: Phase.INSTANT;
|
|
666
|
+
s: Scope;
|
|
667
|
+
}
|
|
668
|
+
export interface DOMStats extends Instant {
|
|
669
|
+
name: 'DOMStats';
|
|
670
|
+
args: Args & {
|
|
671
|
+
data: ArgsData & {
|
|
672
|
+
frame: string;
|
|
673
|
+
totalElements: number;
|
|
674
|
+
maxChildren?: {
|
|
675
|
+
nodeId: Protocol.DOM.BackendNodeId;
|
|
676
|
+
nodeName: string;
|
|
677
|
+
numChildren: number;
|
|
678
|
+
};
|
|
679
|
+
maxDepth?: {
|
|
680
|
+
nodeId: Protocol.DOM.BackendNodeId;
|
|
681
|
+
nodeName: string;
|
|
682
|
+
depth: number;
|
|
683
|
+
};
|
|
684
|
+
};
|
|
685
|
+
};
|
|
686
|
+
}
|
|
687
|
+
export interface UpdateCounters extends Instant {
|
|
688
|
+
name: 'UpdateCounters';
|
|
689
|
+
args: Args & {
|
|
690
|
+
data: ArgsData & {
|
|
691
|
+
documents: number;
|
|
692
|
+
jsEventListeners: number;
|
|
693
|
+
jsHeapSizeUsed: number;
|
|
694
|
+
nodes: number;
|
|
695
|
+
gpuMemoryLimitKB?: number;
|
|
696
|
+
};
|
|
697
|
+
};
|
|
698
|
+
}
|
|
699
|
+
export type RendererEvent = Instant | Complete;
|
|
700
|
+
export interface TracingStartedInBrowser extends Instant {
|
|
701
|
+
name: Name.TRACING_STARTED_IN_BROWSER;
|
|
702
|
+
args: Args & {
|
|
703
|
+
data?: ArgsData & {
|
|
704
|
+
frameTreeNodeId: number;
|
|
705
|
+
persistentIds: boolean;
|
|
706
|
+
frames?: TraceFrame[];
|
|
707
|
+
};
|
|
708
|
+
};
|
|
709
|
+
}
|
|
710
|
+
export interface TracingSessionIdForWorker extends Instant {
|
|
711
|
+
name: 'TracingSessionIdForWorker';
|
|
712
|
+
args: Args & {
|
|
713
|
+
data?: ArgsData & {
|
|
714
|
+
url: string;
|
|
715
|
+
workerId: WorkerId;
|
|
716
|
+
workerThreadId: ThreadID;
|
|
717
|
+
frame: string;
|
|
718
|
+
};
|
|
719
|
+
};
|
|
720
|
+
}
|
|
721
|
+
export declare function isTracingSessionIdForWorker(event: Event): event is TracingSessionIdForWorker;
|
|
722
|
+
export interface FrameCommittedInBrowser extends Instant {
|
|
723
|
+
name: 'FrameCommittedInBrowser';
|
|
724
|
+
args: Args & {
|
|
725
|
+
data?: ArgsData & TraceFrame;
|
|
726
|
+
};
|
|
727
|
+
}
|
|
728
|
+
export interface MainFrameViewport extends Instant {
|
|
729
|
+
name: 'PaintTimingVisualizer::Viewport';
|
|
730
|
+
args: {
|
|
731
|
+
data: ArgsData & {
|
|
732
|
+
viewport_rect: number[];
|
|
733
|
+
/** Device Pixel Ratio. Added in m128 */
|
|
734
|
+
dpr: number;
|
|
735
|
+
};
|
|
736
|
+
};
|
|
737
|
+
}
|
|
738
|
+
export interface CommitLoad extends Instant {
|
|
739
|
+
name: 'CommitLoad';
|
|
740
|
+
args: Args & {
|
|
741
|
+
data?: ArgsData & {
|
|
742
|
+
frame: string;
|
|
743
|
+
isMainFrame: boolean;
|
|
744
|
+
name: string;
|
|
745
|
+
nodeId: number;
|
|
746
|
+
page: string;
|
|
747
|
+
parent: string;
|
|
748
|
+
url: string;
|
|
749
|
+
};
|
|
750
|
+
};
|
|
751
|
+
}
|
|
752
|
+
export interface MarkDOMContent extends Instant {
|
|
753
|
+
name: Name.MARK_DOM_CONTENT;
|
|
754
|
+
args: Args & {
|
|
755
|
+
data?: ArgsData & {
|
|
756
|
+
frame: string;
|
|
757
|
+
isMainFrame: boolean;
|
|
758
|
+
page: string;
|
|
759
|
+
isOutermostMainFrame?: boolean;
|
|
760
|
+
};
|
|
761
|
+
};
|
|
762
|
+
}
|
|
763
|
+
export interface MarkLoad extends Instant {
|
|
764
|
+
name: Name.MARK_LOAD;
|
|
765
|
+
args: Args & {
|
|
766
|
+
data?: ArgsData & {
|
|
767
|
+
frame: string;
|
|
768
|
+
isMainFrame: boolean;
|
|
769
|
+
page: string;
|
|
770
|
+
isOutermostMainFrame?: boolean;
|
|
771
|
+
};
|
|
772
|
+
};
|
|
773
|
+
}
|
|
774
|
+
export interface Async extends Event {
|
|
775
|
+
ph: Phase.ASYNC_NESTABLE_START | Phase.ASYNC_NESTABLE_INSTANT | Phase.ASYNC_NESTABLE_END | Phase.ASYNC_STEP_INTO | Phase.ASYNC_BEGIN | Phase.ASYNC_END | Phase.ASYNC_STEP_PAST;
|
|
776
|
+
}
|
|
777
|
+
export type TraceRect = [number, number, number, number];
|
|
778
|
+
export interface TraceImpactedNode {
|
|
779
|
+
new_rect: TraceRect;
|
|
780
|
+
node_id: Protocol.DOM.BackendNodeId;
|
|
781
|
+
old_rect: TraceRect;
|
|
782
|
+
debug_name?: string;
|
|
783
|
+
}
|
|
784
|
+
export type LayoutShiftData = ArgsData & {
|
|
785
|
+
cumulative_score: number;
|
|
786
|
+
frame_max_distance: number;
|
|
787
|
+
had_recent_input: boolean;
|
|
788
|
+
impacted_nodes: TraceImpactedNode[] | undefined;
|
|
789
|
+
is_main_frame: boolean;
|
|
790
|
+
overall_max_distance: number;
|
|
791
|
+
region_rects: TraceRect[];
|
|
792
|
+
/** @deprecated This value will incorrectly overreport for shifts within an iframe. */
|
|
793
|
+
score: number;
|
|
794
|
+
/** This is the preferred "score", used for CLS. If `is_main_frame` is true, `score` and `weighted_score_delta` will be equal. But if the shift is from an iframe, `weighted_score_delta` will be appropriately reduced to account for the viewport size of that iframe. https://wicg.github.io/layout-instability/#subframe-weighting-factor and b/275509162 */
|
|
795
|
+
weighted_score_delta: number;
|
|
796
|
+
navigationId?: string;
|
|
797
|
+
};
|
|
798
|
+
export interface LayoutShift extends Instant {
|
|
799
|
+
name: Name.LAYOUT_SHIFT;
|
|
800
|
+
normalized?: boolean;
|
|
801
|
+
args: Args & {
|
|
802
|
+
frame: string;
|
|
803
|
+
data?: LayoutShiftData;
|
|
804
|
+
};
|
|
805
|
+
}
|
|
806
|
+
interface LayoutShiftSessionWindowData {
|
|
807
|
+
cumulativeWindowScore: number;
|
|
808
|
+
id: number;
|
|
809
|
+
}
|
|
810
|
+
export interface LayoutShiftParsedData {
|
|
811
|
+
/** screenshot taken before and after this shift. Before *should* always exist, but after might not at the end of a trace. */
|
|
812
|
+
screenshots: {
|
|
813
|
+
before: LegacySyntheticScreenshot | Screenshot | null;
|
|
814
|
+
after: LegacySyntheticScreenshot | Screenshot | null;
|
|
815
|
+
};
|
|
816
|
+
timeFromNavigation?: Micro;
|
|
817
|
+
cumulativeWeightedScoreInWindow: number;
|
|
818
|
+
sessionWindowData: LayoutShiftSessionWindowData;
|
|
819
|
+
}
|
|
820
|
+
export interface SyntheticLayoutShift extends Omit<LayoutShift, 'name'>, SyntheticBased<Phase.INSTANT> {
|
|
821
|
+
name: Name.SYNTHETIC_LAYOUT_SHIFT;
|
|
822
|
+
rawSourceEvent: LayoutShift;
|
|
823
|
+
args: Args & {
|
|
824
|
+
frame: string;
|
|
825
|
+
data?: LayoutShiftData & {
|
|
826
|
+
rawEvent: LayoutShift;
|
|
827
|
+
};
|
|
828
|
+
};
|
|
829
|
+
parsedData: LayoutShiftParsedData;
|
|
830
|
+
}
|
|
831
|
+
export declare const NO_NAVIGATION = "NO_NAVIGATION";
|
|
832
|
+
/**
|
|
833
|
+
* This maybe be a navigation id string from Chrome, or `NO_NAVIGATION`, which represents the
|
|
834
|
+
* portion of the trace for which we don't have any navigation event for (as it happeneded prior
|
|
835
|
+
* to the trace start).
|
|
836
|
+
*/
|
|
837
|
+
export type NavigationId = string;
|
|
838
|
+
/**
|
|
839
|
+
* This is a synthetic Layout shift cluster. The rawSourceEvent is the worst layout shift event
|
|
840
|
+
* in the cluster.
|
|
841
|
+
*/
|
|
842
|
+
export interface SyntheticLayoutShiftCluster extends SyntheticBased<Phase.COMPLETE> {
|
|
843
|
+
name: 'SyntheticLayoutShiftCluster';
|
|
844
|
+
clusterWindow: TraceWindowMicro;
|
|
845
|
+
clusterCumulativeScore: number;
|
|
846
|
+
events: SyntheticLayoutShift[];
|
|
847
|
+
scoreWindows: {
|
|
848
|
+
good: TraceWindowMicro;
|
|
849
|
+
needsImprovement?: TraceWindowMicro;
|
|
850
|
+
bad?: TraceWindowMicro;
|
|
851
|
+
};
|
|
852
|
+
navigationId?: NavigationId;
|
|
853
|
+
worstShiftEvent?: Event;
|
|
854
|
+
ts: Micro;
|
|
855
|
+
dur: Micro;
|
|
856
|
+
cat: '';
|
|
857
|
+
ph: Phase.COMPLETE;
|
|
858
|
+
pid: ProcessID;
|
|
859
|
+
tid: ThreadID;
|
|
860
|
+
}
|
|
861
|
+
export type FetchPriorityHint = 'low' | 'high' | 'auto';
|
|
862
|
+
export type RenderBlocking = 'blocking' | 'non_blocking' | 'in_body_parser_blocking' | 'potentially_blocking' | 'dynamically_injected_non_blocking';
|
|
863
|
+
export interface Initiator {
|
|
864
|
+
type: Protocol.Network.InitiatorType;
|
|
865
|
+
fetchType: string;
|
|
866
|
+
columnNumber?: number;
|
|
867
|
+
lineNumber?: number;
|
|
868
|
+
url?: string;
|
|
869
|
+
}
|
|
870
|
+
export interface ResourceSendRequest extends Instant {
|
|
871
|
+
name: 'ResourceSendRequest';
|
|
872
|
+
args: Args & {
|
|
873
|
+
data: ArgsData & {
|
|
874
|
+
frame: string;
|
|
875
|
+
requestId: string;
|
|
876
|
+
url: string;
|
|
877
|
+
priority: Protocol.Network.ResourcePriority;
|
|
878
|
+
/** Added Feb 2024. https://crrev.com/c/5277583 */
|
|
879
|
+
resourceType?: Protocol.Network.ResourceType;
|
|
880
|
+
/** Added Feb 2024. https://crrev.com/c/5297615 */
|
|
881
|
+
fetchPriorityHint?: FetchPriorityHint;
|
|
882
|
+
requestMethod?: string;
|
|
883
|
+
renderBlocking?: RenderBlocking;
|
|
884
|
+
initiator?: Initiator;
|
|
885
|
+
isLinkPreload?: boolean;
|
|
886
|
+
};
|
|
887
|
+
};
|
|
888
|
+
}
|
|
889
|
+
export interface ResourceChangePriority extends Instant {
|
|
890
|
+
name: 'ResourceChangePriority';
|
|
891
|
+
args: Args & {
|
|
892
|
+
data: ArgsData & {
|
|
893
|
+
requestId: string;
|
|
894
|
+
priority: Protocol.Network.ResourcePriority;
|
|
895
|
+
};
|
|
896
|
+
};
|
|
897
|
+
}
|
|
898
|
+
/** Only sent for navigations. https://source.chromium.org/chromium/chromium/src/+/main:content/browser/devtools/devtools_instrumentation.cc;l=1612-1647;drc=ec7daf93d0479b758610c75f4e146fd4d2d6ed2b */
|
|
899
|
+
export interface ResourceWillSendRequest extends Instant {
|
|
900
|
+
name: Name.RESOURCE_WILL_SEND_REQUEST;
|
|
901
|
+
args: Args & {
|
|
902
|
+
data: ArgsData & {
|
|
903
|
+
requestId: string;
|
|
904
|
+
};
|
|
905
|
+
};
|
|
906
|
+
}
|
|
907
|
+
export interface ResourceFinish extends Instant {
|
|
908
|
+
name: 'ResourceFinish';
|
|
909
|
+
args: Args & {
|
|
910
|
+
data: ArgsData & {
|
|
911
|
+
decodedBodyLength: number;
|
|
912
|
+
didFail: boolean;
|
|
913
|
+
encodedDataLength: number;
|
|
914
|
+
finishTime: Seconds;
|
|
915
|
+
requestId: string;
|
|
916
|
+
};
|
|
917
|
+
};
|
|
918
|
+
}
|
|
919
|
+
export interface ResourceReceivedData extends Instant {
|
|
920
|
+
name: 'ResourceReceivedData';
|
|
921
|
+
args: Args & {
|
|
922
|
+
data: ArgsData & {
|
|
923
|
+
encodedDataLength: number;
|
|
924
|
+
frame: string;
|
|
925
|
+
requestId: string;
|
|
926
|
+
};
|
|
927
|
+
};
|
|
928
|
+
}
|
|
929
|
+
/** See https://mdn.github.io/shared-assets/images/diagrams/api/performance/timestamp-diagram.svg */
|
|
930
|
+
interface ResourceReceiveResponseTimingData {
|
|
931
|
+
connectEnd: Milli;
|
|
932
|
+
connectStart: Milli;
|
|
933
|
+
dnsEnd: Milli;
|
|
934
|
+
dnsStart: Milli;
|
|
935
|
+
proxyEnd: Milli;
|
|
936
|
+
proxyStart: Milli;
|
|
937
|
+
pushEnd: Milli;
|
|
938
|
+
pushStart: Milli;
|
|
939
|
+
receiveHeadersEnd: Milli;
|
|
940
|
+
/** M116. */
|
|
941
|
+
receiveHeadersStart?: Milli;
|
|
942
|
+
/** When the network service is about to handle a request, ie. just before going to the HTTP cache or going to the network for DNS/connection setup. */
|
|
943
|
+
requestTime: Seconds;
|
|
944
|
+
sendEnd: Milli;
|
|
945
|
+
sendStart: Milli;
|
|
946
|
+
sslEnd: Milli;
|
|
947
|
+
sslStart: Milli;
|
|
948
|
+
workerReady: Milli;
|
|
949
|
+
workerStart: Milli;
|
|
950
|
+
}
|
|
951
|
+
export interface ResourceReceiveResponse extends Instant {
|
|
952
|
+
name: 'ResourceReceiveResponse';
|
|
953
|
+
args: Args & {
|
|
954
|
+
data: ArgsData & {
|
|
955
|
+
/**
|
|
956
|
+
* This is the protocol used to resolve the request.
|
|
957
|
+
*
|
|
958
|
+
* Note, this is not the same as URL.protocol.
|
|
959
|
+
*
|
|
960
|
+
* Example values (not exhaustive): http/0.9, http/1.0, http/1.1, http, h2, h3-Q050, data, blob
|
|
961
|
+
*/
|
|
962
|
+
protocol: string;
|
|
963
|
+
encodedDataLength: number;
|
|
964
|
+
frame: string;
|
|
965
|
+
fromCache: boolean;
|
|
966
|
+
fromServiceWorker: boolean;
|
|
967
|
+
mimeType: string;
|
|
968
|
+
requestId: string;
|
|
969
|
+
responseTime: Milli;
|
|
970
|
+
statusCode: number;
|
|
971
|
+
connectionId: number;
|
|
972
|
+
connectionReused: boolean;
|
|
973
|
+
timing?: ResourceReceiveResponseTimingData;
|
|
974
|
+
headers?: Array<{
|
|
975
|
+
name: string;
|
|
976
|
+
value: string;
|
|
977
|
+
}>;
|
|
978
|
+
};
|
|
979
|
+
};
|
|
980
|
+
}
|
|
981
|
+
export interface ResourceMarkAsCached extends Instant {
|
|
982
|
+
name: 'ResourceMarkAsCached';
|
|
983
|
+
args: Args & {
|
|
984
|
+
data: ArgsData & {
|
|
985
|
+
requestId: string;
|
|
986
|
+
};
|
|
987
|
+
};
|
|
988
|
+
}
|
|
989
|
+
export declare const enum LayoutInvalidationReason {
|
|
990
|
+
SIZE_CHANGED = "Size changed",
|
|
991
|
+
ATTRIBUTE = "Attribute",
|
|
992
|
+
ADDED_TO_LAYOUT = "Added to layout",
|
|
993
|
+
SCROLLBAR_CHANGED = "Scrollbar changed",
|
|
994
|
+
REMOVED_FROM_LAYOUT = "Removed from layout",
|
|
995
|
+
STYLE_CHANGED = "Style changed",
|
|
996
|
+
FONTS_CHANGED = "Fonts changed",
|
|
997
|
+
UNKNOWN = "Unknown"
|
|
998
|
+
}
|
|
999
|
+
export interface LayoutInvalidationTracking extends Instant {
|
|
1000
|
+
name: Name.LAYOUT_INVALIDATION_TRACKING;
|
|
1001
|
+
args: Args & {
|
|
1002
|
+
data: ArgsData & {
|
|
1003
|
+
frame: string;
|
|
1004
|
+
nodeId: Protocol.DOM.BackendNodeId;
|
|
1005
|
+
reason: LayoutInvalidationReason;
|
|
1006
|
+
nodeName?: string;
|
|
1007
|
+
};
|
|
1008
|
+
};
|
|
1009
|
+
}
|
|
1010
|
+
export interface ScheduleStyleInvalidationTracking extends Instant {
|
|
1011
|
+
name: Name.SCHEDULE_STYLE_INVALIDATION_TRACKING;
|
|
1012
|
+
args: Args & {
|
|
1013
|
+
data: ArgsData & {
|
|
1014
|
+
frame: string;
|
|
1015
|
+
nodeId: Protocol.DOM.BackendNodeId;
|
|
1016
|
+
invalidationSet?: string;
|
|
1017
|
+
invalidatedSelectorId?: string;
|
|
1018
|
+
reason?: LayoutInvalidationReason;
|
|
1019
|
+
changedClass?: string;
|
|
1020
|
+
changedAttribute?: string;
|
|
1021
|
+
changedId?: string;
|
|
1022
|
+
nodeName?: string;
|
|
1023
|
+
stackTrace?: CallFrame[];
|
|
1024
|
+
};
|
|
1025
|
+
};
|
|
1026
|
+
}
|
|
1027
|
+
export declare function isScheduleStyleInvalidationTracking(event: Event): event is ScheduleStyleInvalidationTracking;
|
|
1028
|
+
export declare const enum StyleRecalcInvalidationReason {
|
|
1029
|
+
ANIMATION = "Animation",
|
|
1030
|
+
RELATED_STYLE_RULE = "Related style rule"
|
|
1031
|
+
}
|
|
1032
|
+
export interface StyleRecalcInvalidationTracking extends Instant {
|
|
1033
|
+
name: Name.STYLE_RECALC_INVALIDATION_TRACKING;
|
|
1034
|
+
args: Args & {
|
|
1035
|
+
data: ArgsData & {
|
|
1036
|
+
frame: string;
|
|
1037
|
+
nodeId: Protocol.DOM.BackendNodeId;
|
|
1038
|
+
reason: StyleRecalcInvalidationReason;
|
|
1039
|
+
subtree: boolean;
|
|
1040
|
+
nodeName?: string;
|
|
1041
|
+
extraData?: string;
|
|
1042
|
+
};
|
|
1043
|
+
};
|
|
1044
|
+
}
|
|
1045
|
+
export declare function isStyleRecalcInvalidationTracking(event: Event): event is StyleRecalcInvalidationTracking;
|
|
1046
|
+
export interface StyleInvalidatorInvalidationTracking extends Instant {
|
|
1047
|
+
name: Name.STYLE_INVALIDATOR_INVALIDATION_TRACKING;
|
|
1048
|
+
args: Args & {
|
|
1049
|
+
data: ArgsData & {
|
|
1050
|
+
frame: string;
|
|
1051
|
+
nodeId: Protocol.DOM.BackendNodeId;
|
|
1052
|
+
reason: string;
|
|
1053
|
+
invalidationList: Array<{
|
|
1054
|
+
id: string;
|
|
1055
|
+
classes?: string[];
|
|
1056
|
+
}>;
|
|
1057
|
+
subtree: boolean;
|
|
1058
|
+
nodeName?: string;
|
|
1059
|
+
extraData?: string;
|
|
1060
|
+
selectors?: Array<{
|
|
1061
|
+
selector: string;
|
|
1062
|
+
style_sheet_id: string;
|
|
1063
|
+
}>;
|
|
1064
|
+
};
|
|
1065
|
+
};
|
|
1066
|
+
}
|
|
1067
|
+
export declare function isStyleInvalidatorInvalidationTracking(event: Event): event is StyleInvalidatorInvalidationTracking;
|
|
1068
|
+
export interface BeginCommitCompositorFrame extends Instant {
|
|
1069
|
+
name: Name.BEGIN_COMMIT_COMPOSITOR_FRAME;
|
|
1070
|
+
args: Args & {
|
|
1071
|
+
frame: string;
|
|
1072
|
+
is_mobile_optimized: boolean;
|
|
1073
|
+
};
|
|
1074
|
+
}
|
|
1075
|
+
export declare function isBeginCommitCompositorFrame(event: Event): event is BeginCommitCompositorFrame;
|
|
1076
|
+
export interface ParseMetaViewport extends Instant {
|
|
1077
|
+
name: Name.PARSE_META_VIEWPORT;
|
|
1078
|
+
args: Args & {
|
|
1079
|
+
data: {
|
|
1080
|
+
node_id: Protocol.DOM.BackendNodeId;
|
|
1081
|
+
content: string;
|
|
1082
|
+
frame?: string;
|
|
1083
|
+
};
|
|
1084
|
+
};
|
|
1085
|
+
}
|
|
1086
|
+
export declare function isParseMetaViewport(event: Event): event is ParseMetaViewport;
|
|
1087
|
+
export type MetaCharsetDisposition = 'found-in-first-1024-bytes' | 'found-after-first-1024-bytes' | 'not-found';
|
|
1088
|
+
export interface MetaCharsetCheck extends Instant {
|
|
1089
|
+
name: Name.META_CHARSET_CHECK;
|
|
1090
|
+
args: Args & {
|
|
1091
|
+
data: {
|
|
1092
|
+
frame: string;
|
|
1093
|
+
disposition: MetaCharsetDisposition;
|
|
1094
|
+
};
|
|
1095
|
+
};
|
|
1096
|
+
}
|
|
1097
|
+
export declare function isMetaCharsetCheck(event: Event): event is MetaCharsetCheck;
|
|
1098
|
+
export interface LinkPreconnect extends Instant {
|
|
1099
|
+
name: Name.LINK_PRECONNECT;
|
|
1100
|
+
args: Args & {
|
|
1101
|
+
data: {
|
|
1102
|
+
node_id: Protocol.DOM.BackendNodeId;
|
|
1103
|
+
url: string;
|
|
1104
|
+
frame?: string;
|
|
1105
|
+
};
|
|
1106
|
+
};
|
|
1107
|
+
}
|
|
1108
|
+
export declare function isLinkPreconnect(event: Event): event is LinkPreconnect;
|
|
1109
|
+
export interface ScheduleStyleRecalculation extends Instant {
|
|
1110
|
+
name: Name.SCHEDULE_STYLE_RECALCULATION;
|
|
1111
|
+
args: Args & {
|
|
1112
|
+
data: {
|
|
1113
|
+
frame: string;
|
|
1114
|
+
reason?: StyleRecalcInvalidationReason;
|
|
1115
|
+
subtree?: boolean;
|
|
1116
|
+
nodeId?: Protocol.DOM.BackendNodeId;
|
|
1117
|
+
};
|
|
1118
|
+
};
|
|
1119
|
+
}
|
|
1120
|
+
export declare function isScheduleStyleRecalculation(event: Event): event is ScheduleStyleRecalculation;
|
|
1121
|
+
export interface RenderFrameImplCreateChildFrame extends Event {
|
|
1122
|
+
name: Name.RENDER_FRAME_IMPL_CREATE_CHILD_FRAME;
|
|
1123
|
+
args: Args & {
|
|
1124
|
+
child_frame_token: string;
|
|
1125
|
+
frame_token: string;
|
|
1126
|
+
};
|
|
1127
|
+
}
|
|
1128
|
+
export declare function isRenderFrameImplCreateChildFrame(event: Event): event is RenderFrameImplCreateChildFrame;
|
|
1129
|
+
export interface LayoutImageUnsized extends Event {
|
|
1130
|
+
name: Name.LAYOUT_IMAGE_UNSIZED;
|
|
1131
|
+
args: Args & {
|
|
1132
|
+
data: {
|
|
1133
|
+
nodeId: Protocol.DOM.BackendNodeId;
|
|
1134
|
+
frameId: string;
|
|
1135
|
+
};
|
|
1136
|
+
};
|
|
1137
|
+
}
|
|
1138
|
+
export declare function isLayoutImageUnsized(event: Event): event is LayoutImageUnsized;
|
|
1139
|
+
export interface PrePaint extends Complete {
|
|
1140
|
+
name: 'PrePaint';
|
|
1141
|
+
}
|
|
1142
|
+
export interface PairableAsync extends Event {
|
|
1143
|
+
ph: Phase.ASYNC_NESTABLE_START | Phase.ASYNC_NESTABLE_END | Phase.ASYNC_NESTABLE_INSTANT;
|
|
1144
|
+
id2?: {
|
|
1145
|
+
local?: string;
|
|
1146
|
+
global?: string;
|
|
1147
|
+
};
|
|
1148
|
+
id?: string;
|
|
1149
|
+
}
|
|
1150
|
+
export interface PairableAsyncBegin extends PairableAsync {
|
|
1151
|
+
ph: Phase.ASYNC_NESTABLE_START;
|
|
1152
|
+
}
|
|
1153
|
+
export interface PairableAsyncInstant extends PairableAsync {
|
|
1154
|
+
ph: Phase.ASYNC_NESTABLE_INSTANT;
|
|
1155
|
+
}
|
|
1156
|
+
export interface PairableAsyncEnd extends PairableAsync {
|
|
1157
|
+
ph: Phase.ASYNC_NESTABLE_END;
|
|
1158
|
+
}
|
|
1159
|
+
export declare function isPairableAsyncBegin(e: Event): e is PairableAsyncBegin;
|
|
1160
|
+
export declare function isPairableAsyncEnd(e: Event): e is PairableAsyncEnd;
|
|
1161
|
+
export declare function isPairableAsyncInstant(e: Event): e is PairableAsyncInstant;
|
|
1162
|
+
export interface AnimationFrame extends PairableAsync {
|
|
1163
|
+
name: Name.ANIMATION_FRAME;
|
|
1164
|
+
args?: AnimationFrameArgs;
|
|
1165
|
+
}
|
|
1166
|
+
export type AnimationFrameArgs = Args & {
|
|
1167
|
+
animation_frame_timing_info: {
|
|
1168
|
+
blocking_duration_ms: number;
|
|
1169
|
+
duration_ms: number;
|
|
1170
|
+
num_scripts: number;
|
|
1171
|
+
};
|
|
1172
|
+
id: string;
|
|
1173
|
+
};
|
|
1174
|
+
export interface AnimationFrameAsyncStart extends AnimationFrame {
|
|
1175
|
+
ph: Phase.ASYNC_NESTABLE_START;
|
|
1176
|
+
}
|
|
1177
|
+
export interface AnimationFrameAsyncEnd extends AnimationFrame {
|
|
1178
|
+
ph: Phase.ASYNC_NESTABLE_END;
|
|
1179
|
+
}
|
|
1180
|
+
export declare function isAnimationFrameAsyncStart(data: Event): data is AnimationFrameAsyncStart;
|
|
1181
|
+
export declare function isAnimationFrameAsyncEnd(data: Event): data is AnimationFrameAsyncEnd;
|
|
1182
|
+
export interface AnimationFramePresentation extends Event {
|
|
1183
|
+
name: Name.ANIMATION_FRAME_PRESENTATION;
|
|
1184
|
+
ph: Phase.ASYNC_NESTABLE_INSTANT;
|
|
1185
|
+
args?: Args & {
|
|
1186
|
+
id: string;
|
|
1187
|
+
};
|
|
1188
|
+
}
|
|
1189
|
+
export declare function isAnimationFramePresentation(data: Event): data is AnimationFramePresentation;
|
|
1190
|
+
export interface UserTiming extends Event {
|
|
1191
|
+
id2?: {
|
|
1192
|
+
local?: string;
|
|
1193
|
+
global?: string;
|
|
1194
|
+
};
|
|
1195
|
+
id?: string;
|
|
1196
|
+
cat: 'blink.user_timing';
|
|
1197
|
+
}
|
|
1198
|
+
export interface DomLoading extends UserTiming {
|
|
1199
|
+
name: Name.DOM_LOADING;
|
|
1200
|
+
args: Args & {
|
|
1201
|
+
frame?: string;
|
|
1202
|
+
};
|
|
1203
|
+
}
|
|
1204
|
+
export interface BeginRemoteFontLoad extends UserTiming {
|
|
1205
|
+
name: Name.BEGIN_REMOTE_FONT_LOAD;
|
|
1206
|
+
args: Args & {
|
|
1207
|
+
display: string;
|
|
1208
|
+
id: number;
|
|
1209
|
+
url?: string;
|
|
1210
|
+
};
|
|
1211
|
+
}
|
|
1212
|
+
export interface RemoteFontLoaded extends UserTiming {
|
|
1213
|
+
name: Name.REMOTE_FONT_LOADED;
|
|
1214
|
+
args: Args & {
|
|
1215
|
+
url: string;
|
|
1216
|
+
name: string;
|
|
1217
|
+
};
|
|
1218
|
+
}
|
|
1219
|
+
export type PairableUserTiming = UserTiming & PairableAsync;
|
|
1220
|
+
export interface PerformanceMeasureBegin extends PairableUserTiming {
|
|
1221
|
+
args: Args & {
|
|
1222
|
+
detail?: string;
|
|
1223
|
+
callTime?: Micro;
|
|
1224
|
+
traceId?: number;
|
|
1225
|
+
};
|
|
1226
|
+
ph: Phase.ASYNC_NESTABLE_START;
|
|
1227
|
+
}
|
|
1228
|
+
export type PerformanceMeasureEnd = PairableUserTiming & PairableAsyncEnd;
|
|
1229
|
+
export type PerformanceMeasure = PerformanceMeasureBegin | PerformanceMeasureEnd;
|
|
1230
|
+
export interface PerformanceMark extends UserTiming {
|
|
1231
|
+
args: Args & {
|
|
1232
|
+
data?: ArgsData & {
|
|
1233
|
+
detail?: string;
|
|
1234
|
+
callTime?: Micro;
|
|
1235
|
+
};
|
|
1236
|
+
};
|
|
1237
|
+
ph: Phase.INSTANT | Phase.MARK | Phase.ASYNC_NESTABLE_INSTANT;
|
|
1238
|
+
}
|
|
1239
|
+
export interface ConsoleTimeBegin extends PairableAsyncBegin {
|
|
1240
|
+
cat: 'blink.console';
|
|
1241
|
+
}
|
|
1242
|
+
export interface ConsoleTimeEnd extends PairableAsyncEnd {
|
|
1243
|
+
cat: 'blink.console';
|
|
1244
|
+
}
|
|
1245
|
+
export type ConsoleTime = ConsoleTimeBegin | ConsoleTimeEnd;
|
|
1246
|
+
export interface ConsoleTimeStamp extends Event {
|
|
1247
|
+
cat: 'devtools.timeline';
|
|
1248
|
+
name: Name.TIME_STAMP;
|
|
1249
|
+
ph: Phase.INSTANT;
|
|
1250
|
+
args: Args & {
|
|
1251
|
+
data?: ArgsData & {
|
|
1252
|
+
message: string;
|
|
1253
|
+
name?: string | number;
|
|
1254
|
+
start?: string | number;
|
|
1255
|
+
end?: string | number;
|
|
1256
|
+
track?: string | number;
|
|
1257
|
+
trackGroup?: string | number;
|
|
1258
|
+
color?: string | number;
|
|
1259
|
+
devtools?: string;
|
|
1260
|
+
sampleTraceId?: number;
|
|
1261
|
+
};
|
|
1262
|
+
};
|
|
1263
|
+
}
|
|
1264
|
+
export interface SyntheticConsoleTimeStamp extends Event, SyntheticBased {
|
|
1265
|
+
cat: 'disabled-by-default-v8.inspector';
|
|
1266
|
+
ph: Phase.COMPLETE;
|
|
1267
|
+
}
|
|
1268
|
+
export interface UserTimingMeasure extends Event {
|
|
1269
|
+
cat: 'devtools.timeline';
|
|
1270
|
+
ph: Phase.COMPLETE;
|
|
1271
|
+
name: Name.USER_TIMING_MEASURE;
|
|
1272
|
+
args: Args & {
|
|
1273
|
+
sampleTraceId: number;
|
|
1274
|
+
traceId: number;
|
|
1275
|
+
};
|
|
1276
|
+
}
|
|
1277
|
+
/**
|
|
1278
|
+
* ChromeFrameReporter args for PipelineReporter event.
|
|
1279
|
+
* Matching proto: https://source.chromium.org/chromium/chromium/src/+/main:third_party/perfetto/protos/perfetto/trace/track_event/chrome_frame_reporter.proto
|
|
1280
|
+
*/
|
|
1281
|
+
interface ChromeFrameReporter {
|
|
1282
|
+
state: State;
|
|
1283
|
+
enum: FrameDropReason;
|
|
1284
|
+
/** The reason is set only if |state| is not |STATE_UPDATED_ALL|. */
|
|
1285
|
+
reason: FrameDropReason;
|
|
1286
|
+
frame_source: number;
|
|
1287
|
+
/**
|
|
1288
|
+
* Identifies a BeginFrameArgs (along with the source_id).
|
|
1289
|
+
* See comments in components/viz/common/frame_sinks/begin_frame_args.h.
|
|
1290
|
+
*/
|
|
1291
|
+
frame_sequence: number;
|
|
1292
|
+
/**
|
|
1293
|
+
* If this is a dropped frame (i.e. if |state| is set to |STATE_DROPPED| or
|
|
1294
|
+
* |STATE_PRESENTED_PARTIAL|), then indicates whether this frame impacts smoothness.
|
|
1295
|
+
*/
|
|
1296
|
+
affects_smoothness: boolean;
|
|
1297
|
+
/** The type of active scroll. */
|
|
1298
|
+
scroll_state: ScrollState;
|
|
1299
|
+
/** If any main thread animation is active during this frame. */
|
|
1300
|
+
has_main_animation: boolean;
|
|
1301
|
+
/** If any compositor thread animation is active during this frame. */
|
|
1302
|
+
has_compositor_animation: boolean;
|
|
1303
|
+
/** If any touch-driven UX (not scroll) is active during this frame. */
|
|
1304
|
+
has_smooth_input_main: boolean;
|
|
1305
|
+
/**
|
|
1306
|
+
* Whether the frame contained any missing content (i.e. whether there was
|
|
1307
|
+
* checkerboarding in the frame).
|
|
1308
|
+
*/
|
|
1309
|
+
has_missing_content: boolean;
|
|
1310
|
+
/** The id of layer_tree_host that the frame has been produced for. */
|
|
1311
|
+
layer_tree_host_id: number;
|
|
1312
|
+
/** If total latency of PipelineReporter exceeds a certain limit. */
|
|
1313
|
+
has_high_latency: boolean;
|
|
1314
|
+
/**
|
|
1315
|
+
* Indicate if the frame is "FORKED" (i.e. a PipelineReporter event starts at
|
|
1316
|
+
* the same frame sequence as another PipelineReporter) or "BACKFILL"
|
|
1317
|
+
* (i.e. dropped frames when there are no partial compositor updates).
|
|
1318
|
+
*/
|
|
1319
|
+
frame_type: FrameType;
|
|
1320
|
+
/**
|
|
1321
|
+
* The breakdown stage of PipelineReporter that is most likely accountable for
|
|
1322
|
+
* high latency.
|
|
1323
|
+
*/
|
|
1324
|
+
high_latency_contribution_stage: string[];
|
|
1325
|
+
}
|
|
1326
|
+
declare const enum State {
|
|
1327
|
+
/** The frame did not have any updates to present. **/
|
|
1328
|
+
STATE_NO_UPDATE_DESIRED = "STATE_NO_UPDATE_DESIRED",
|
|
1329
|
+
/**
|
|
1330
|
+
* The frame presented all the desired updates (i.e. any updates requested
|
|
1331
|
+
* from both the compositor thread and main-threads were handled). *
|
|
1332
|
+
*/
|
|
1333
|
+
STATE_PRESENTED_ALL = "STATE_PRESENTED_ALL",
|
|
1334
|
+
/**
|
|
1335
|
+
* The frame was presented with some updates, but also missed some updates
|
|
1336
|
+
* (e.g. missed updates from the main-thread, but included updates from the
|
|
1337
|
+
* compositor thread). *
|
|
1338
|
+
*/
|
|
1339
|
+
STATE_PRESENTED_PARTIAL = "STATE_PRESENTED_PARTIAL",
|
|
1340
|
+
/**
|
|
1341
|
+
* The frame was dropped, i.e. some updates were desired for the frame, but
|
|
1342
|
+
* was not presented. *
|
|
1343
|
+
*/
|
|
1344
|
+
STATE_DROPPED = "STATE_DROPPED"
|
|
1345
|
+
}
|
|
1346
|
+
declare const enum FrameDropReason {
|
|
1347
|
+
REASON_UNSPECIFIED = "REASON_UNSPECIFIED",
|
|
1348
|
+
/**
|
|
1349
|
+
* Frame was dropped by the display-compositor.
|
|
1350
|
+
* The display-compositor may drop a frame some times (e.g. the frame missed
|
|
1351
|
+
* the deadline, or was blocked on surface-sync, etc.) *
|
|
1352
|
+
*/
|
|
1353
|
+
REASON_DISPLAY_COMPOSITOR = "REASON_DISPLAY_COMPOSITOR",
|
|
1354
|
+
/**
|
|
1355
|
+
* Frame was dropped because of the main-thread.
|
|
1356
|
+
* The main-thread may cause a frame to be dropped, e.g. if the main-thread
|
|
1357
|
+
* is running expensive javascript, or doing a lot of layout updates, etc. *
|
|
1358
|
+
*/
|
|
1359
|
+
REASON_MAIN_THREAD = "REASON_MAIN_THREAD",
|
|
1360
|
+
/**
|
|
1361
|
+
* Frame was dropped by the client compositor.
|
|
1362
|
+
* The client compositor can drop some frames too (e.g. attempting to
|
|
1363
|
+
* recover latency, missing the deadline, etc.). *
|
|
1364
|
+
*/
|
|
1365
|
+
REASON_CLIENT_COMPOSITOR = "REASON_CLIENT_COMPOSITOR"
|
|
1366
|
+
}
|
|
1367
|
+
declare const enum ScrollState {
|
|
1368
|
+
SCROLL_NONE = "SCROLL_NONE",
|
|
1369
|
+
SCROLL_MAIN_THREAD = "SCROLL_MAIN_THREAD",
|
|
1370
|
+
SCROLL_COMPOSITOR_THREAD = "SCROLL_COMPOSITOR_THREAD",
|
|
1371
|
+
/** Used when it can't be determined whether a scroll is in progress or not. */
|
|
1372
|
+
SCROLL_UNKNOWN = "SCROLL_UNKNOWN"
|
|
1373
|
+
}
|
|
1374
|
+
declare const enum FrameType {
|
|
1375
|
+
FORKED = "FORKED",
|
|
1376
|
+
BACKFILL = "BACKFILL"
|
|
1377
|
+
}
|
|
1378
|
+
/**
|
|
1379
|
+
* TODO(crbug.com/409484302): Remove once Chrome migrates from
|
|
1380
|
+
* ChromeTrackEvent.chrome_frame_reporter to ChromeTrackEvent.frame_reporter.
|
|
1381
|
+
**/
|
|
1382
|
+
export interface OldChromeFrameReporterArgs {
|
|
1383
|
+
chrome_frame_reporter: ChromeFrameReporter;
|
|
1384
|
+
}
|
|
1385
|
+
export interface NewChromeFrameReporterArgs {
|
|
1386
|
+
frame_reporter: ChromeFrameReporter;
|
|
1387
|
+
}
|
|
1388
|
+
export interface PipelineReporter extends Event {
|
|
1389
|
+
id2?: {
|
|
1390
|
+
local?: string;
|
|
1391
|
+
};
|
|
1392
|
+
ph: Phase.ASYNC_NESTABLE_START | Phase.ASYNC_NESTABLE_END;
|
|
1393
|
+
args: Args & (OldChromeFrameReporterArgs | NewChromeFrameReporterArgs);
|
|
1394
|
+
}
|
|
1395
|
+
export declare function isPipelineReporter(event: Event): event is PipelineReporter;
|
|
1396
|
+
/**
|
|
1397
|
+
* A type used for synthetic events created based on a raw trace event.
|
|
1398
|
+
* A branded type is used to ensure not all events can be typed as
|
|
1399
|
+
* SyntheticBased and prevent places different to the
|
|
1400
|
+
* SyntheticEventsManager from creating synthetic events. This is
|
|
1401
|
+
* because synthetic events need to be registered in order to resolve
|
|
1402
|
+
* serialized event keys into event objects, so we ensure events are
|
|
1403
|
+
* registered at the time they are created by the SyntheticEventsManager.
|
|
1404
|
+
**/
|
|
1405
|
+
export interface SyntheticBased<Ph extends Phase = Phase, T extends Event = Event> extends Event {
|
|
1406
|
+
ph: Ph;
|
|
1407
|
+
rawSourceEvent: T;
|
|
1408
|
+
_tag: 'SyntheticEntryTag';
|
|
1409
|
+
}
|
|
1410
|
+
export declare function isSyntheticBased(event: Event): event is SyntheticBased;
|
|
1411
|
+
/**
|
|
1412
|
+
* Nestable async events with a duration are made up of two distinct
|
|
1413
|
+
* events: the begin, and the end. We need both of them to be able to
|
|
1414
|
+
* display the right information, so we create these synthetic events.
|
|
1415
|
+
**/
|
|
1416
|
+
export interface SyntheticEventPair<T extends PairableAsync = PairableAsync> extends SyntheticBased<Phase, T> {
|
|
1417
|
+
rawSourceEvent: T;
|
|
1418
|
+
name: T['name'];
|
|
1419
|
+
cat: T['cat'];
|
|
1420
|
+
id?: string;
|
|
1421
|
+
id2?: {
|
|
1422
|
+
local?: string;
|
|
1423
|
+
global?: string;
|
|
1424
|
+
};
|
|
1425
|
+
dur: Micro;
|
|
1426
|
+
args: Args & {
|
|
1427
|
+
data: {
|
|
1428
|
+
beginEvent: T & PairableAsyncBegin;
|
|
1429
|
+
endEvent: T & PairableAsyncEnd;
|
|
1430
|
+
instantEvents?: Array<T & PairableAsyncInstant>;
|
|
1431
|
+
};
|
|
1432
|
+
};
|
|
1433
|
+
}
|
|
1434
|
+
export type SyntheticPipelineReporterPair = SyntheticEventPair<PipelineReporter>;
|
|
1435
|
+
export type SyntheticAnimationFramePair = SyntheticEventPair<AnimationFrame>;
|
|
1436
|
+
export type SyntheticUserTimingPair = SyntheticEventPair<PerformanceMeasure>;
|
|
1437
|
+
export type SyntheticConsoleTimingPair = SyntheticEventPair<ConsoleTime>;
|
|
1438
|
+
export type SyntheticAnimationPair = SyntheticEventPair<Animation>;
|
|
1439
|
+
export interface SyntheticInteractionPair extends SyntheticEventPair<EventTimingBeginOrEnd> {
|
|
1440
|
+
interactionId: number;
|
|
1441
|
+
type: string;
|
|
1442
|
+
ts: Micro;
|
|
1443
|
+
dur: Micro;
|
|
1444
|
+
processingStart: Micro;
|
|
1445
|
+
processingEnd: Micro;
|
|
1446
|
+
inputDelay: Micro;
|
|
1447
|
+
mainThreadHandling: Micro;
|
|
1448
|
+
presentationDelay: Micro;
|
|
1449
|
+
}
|
|
1450
|
+
/**
|
|
1451
|
+
* A profile call created in the frontend from samples disguised as a
|
|
1452
|
+
* trace event.
|
|
1453
|
+
*
|
|
1454
|
+
* We store the sampleIndex, profileId and nodeId so that we can easily link
|
|
1455
|
+
* back a Synthetic Trace Entry to an individual Sample trace event within a
|
|
1456
|
+
* Profile.
|
|
1457
|
+
*
|
|
1458
|
+
* Because a sample contains a set of call frames representing the stack at the
|
|
1459
|
+
* point in time that the sample was created, we also have to store the ID of
|
|
1460
|
+
* the Node that points to the function call that this profile call represents.
|
|
1461
|
+
*/
|
|
1462
|
+
export interface SyntheticProfileCall extends Event {
|
|
1463
|
+
callFrame: Protocol.Runtime.CallFrame;
|
|
1464
|
+
nodeId: Protocol.integer;
|
|
1465
|
+
sampleIndex: number;
|
|
1466
|
+
profileId: ProfileID;
|
|
1467
|
+
}
|
|
1468
|
+
/**
|
|
1469
|
+
* A JS Sample reflects a single sample from the V8 CPU Profile
|
|
1470
|
+
*/
|
|
1471
|
+
export interface SyntheticJSSample extends Event {
|
|
1472
|
+
name: Name.JS_SAMPLE;
|
|
1473
|
+
args: Args & {
|
|
1474
|
+
data: ArgsData & {
|
|
1475
|
+
stackTrace: Protocol.Runtime.CallFrame[];
|
|
1476
|
+
traceId?: number;
|
|
1477
|
+
};
|
|
1478
|
+
};
|
|
1479
|
+
ph: Phase.INSTANT;
|
|
1480
|
+
}
|
|
1481
|
+
export declare function isJSSample(event: Event): event is SyntheticJSSample;
|
|
1482
|
+
export declare function isSyntheticInteraction(event: Event): event is SyntheticInteractionPair;
|
|
1483
|
+
export interface DrawFrame extends Instant {
|
|
1484
|
+
name: Name.DRAW_FRAME;
|
|
1485
|
+
args: Args & {
|
|
1486
|
+
layerTreeId: number;
|
|
1487
|
+
frameSeqId: number;
|
|
1488
|
+
};
|
|
1489
|
+
}
|
|
1490
|
+
export declare function isDrawFrame(event: Event): event is DrawFrame;
|
|
1491
|
+
export interface BeginFrame extends Instant {
|
|
1492
|
+
name: Name.BEGIN_FRAME;
|
|
1493
|
+
args: Args & {
|
|
1494
|
+
layerTreeId: number;
|
|
1495
|
+
frameSeqId: number;
|
|
1496
|
+
};
|
|
1497
|
+
}
|
|
1498
|
+
export declare function isBeginFrame(event: Event): event is BeginFrame;
|
|
1499
|
+
export interface DroppedFrame extends Instant {
|
|
1500
|
+
name: Name.DROPPED_FRAME;
|
|
1501
|
+
args: Args & {
|
|
1502
|
+
layerTreeId: number;
|
|
1503
|
+
frameSeqId: number;
|
|
1504
|
+
hasPartialUpdate?: boolean;
|
|
1505
|
+
};
|
|
1506
|
+
}
|
|
1507
|
+
export declare function isDroppedFrame(event: Event): event is DroppedFrame;
|
|
1508
|
+
export interface RequestMainThreadFrame extends Instant {
|
|
1509
|
+
name: Name.REQUEST_MAIN_THREAD_FRAME;
|
|
1510
|
+
args: Args & {
|
|
1511
|
+
layerTreeId: number;
|
|
1512
|
+
};
|
|
1513
|
+
}
|
|
1514
|
+
export declare function isRequestMainThreadFrame(event: Event): event is RequestMainThreadFrame;
|
|
1515
|
+
export interface BeginMainThreadFrame extends Instant {
|
|
1516
|
+
name: Name.BEGIN_MAIN_THREAD_FRAME;
|
|
1517
|
+
args: Args & {
|
|
1518
|
+
layerTreeId: number;
|
|
1519
|
+
data: ArgsData & {
|
|
1520
|
+
frameId?: number;
|
|
1521
|
+
};
|
|
1522
|
+
};
|
|
1523
|
+
}
|
|
1524
|
+
export declare function isBeginMainThreadFrame(event: Event): event is BeginMainThreadFrame;
|
|
1525
|
+
export interface NeedsBeginFrameChanged extends Instant {
|
|
1526
|
+
name: Name.NEEDS_BEGIN_FRAME_CHANGED;
|
|
1527
|
+
args: Args & {
|
|
1528
|
+
layerTreeId: number;
|
|
1529
|
+
data: ArgsData & {
|
|
1530
|
+
needsBeginFrame: number;
|
|
1531
|
+
};
|
|
1532
|
+
};
|
|
1533
|
+
}
|
|
1534
|
+
export declare function isNeedsBeginFrameChanged(event: Event): event is NeedsBeginFrameChanged;
|
|
1535
|
+
export interface Commit extends Instant {
|
|
1536
|
+
name: Name.COMMIT;
|
|
1537
|
+
args: Args & {
|
|
1538
|
+
layerTreeId: number;
|
|
1539
|
+
frameSeqId: number;
|
|
1540
|
+
};
|
|
1541
|
+
}
|
|
1542
|
+
export declare function isCommit(event: Event): event is Commit;
|
|
1543
|
+
export interface RasterTask extends Complete {
|
|
1544
|
+
name: Name.RASTER_TASK;
|
|
1545
|
+
args: Args & {
|
|
1546
|
+
tileData?: {
|
|
1547
|
+
layerId: number;
|
|
1548
|
+
sourceFrameNumber: number;
|
|
1549
|
+
tileId: {
|
|
1550
|
+
id_ref: string;
|
|
1551
|
+
};
|
|
1552
|
+
tileResolution: string;
|
|
1553
|
+
};
|
|
1554
|
+
};
|
|
1555
|
+
}
|
|
1556
|
+
export declare function isRasterTask(event: Event): event is RasterTask;
|
|
1557
|
+
/** CompositeLayers has been replaced by "Commit", but we support both to not break old traces being imported. **/
|
|
1558
|
+
export interface CompositeLayers extends Instant {
|
|
1559
|
+
name: Name.COMPOSITE_LAYERS;
|
|
1560
|
+
args: Args & {
|
|
1561
|
+
layerTreeId: number;
|
|
1562
|
+
};
|
|
1563
|
+
}
|
|
1564
|
+
export declare function isCompositeLayers(event: Event): event is CompositeLayers;
|
|
1565
|
+
export interface ActivateLayerTree extends Instant {
|
|
1566
|
+
name: Name.ACTIVATE_LAYER_TREE;
|
|
1567
|
+
args: Args & {
|
|
1568
|
+
layerTreeId: number;
|
|
1569
|
+
frameId: number;
|
|
1570
|
+
};
|
|
1571
|
+
}
|
|
1572
|
+
export declare function isActivateLayerTree(event: Event): event is ActivateLayerTree;
|
|
1573
|
+
export type InvalidationTrackingEvent = ScheduleStyleInvalidationTracking | StyleRecalcInvalidationTracking | StyleInvalidatorInvalidationTracking | LayoutInvalidationTracking;
|
|
1574
|
+
export declare function isInvalidationTracking(event: Event): event is InvalidationTrackingEvent;
|
|
1575
|
+
export interface DrawLazyPixelRef extends Instant {
|
|
1576
|
+
name: Name.DRAW_LAZY_PIXEL_REF;
|
|
1577
|
+
args?: Args & {
|
|
1578
|
+
LazyPixelRef: number;
|
|
1579
|
+
};
|
|
1580
|
+
}
|
|
1581
|
+
export declare function isDrawLazyPixelRef(event: Event): event is DrawLazyPixelRef;
|
|
1582
|
+
export interface DecodeLazyPixelRef extends Instant {
|
|
1583
|
+
name: Name.DECODE_LAZY_PIXEL_REF;
|
|
1584
|
+
args?: Args & {
|
|
1585
|
+
LazyPixelRef: number;
|
|
1586
|
+
};
|
|
1587
|
+
}
|
|
1588
|
+
export declare function isDecodeLazyPixelRef(event: Event): event is DecodeLazyPixelRef;
|
|
1589
|
+
export interface DecodeImage extends Complete {
|
|
1590
|
+
name: Name.DECODE_IMAGE;
|
|
1591
|
+
args: Args & {
|
|
1592
|
+
imageType: string;
|
|
1593
|
+
};
|
|
1594
|
+
}
|
|
1595
|
+
export declare function isDecodeImage(event: Event): event is DecodeImage;
|
|
1596
|
+
export declare const enum InvalidationEventType {
|
|
1597
|
+
StyleInvalidatorInvalidationTracking = "StyleInvalidatorInvalidationTracking",
|
|
1598
|
+
StyleRecalcInvalidationTracking = "StyleRecalcInvalidationTracking"
|
|
1599
|
+
}
|
|
1600
|
+
export interface SelectorTiming {
|
|
1601
|
+
'elapsed (us)': number;
|
|
1602
|
+
fast_reject_count: number;
|
|
1603
|
+
match_attempts: number;
|
|
1604
|
+
selector: string;
|
|
1605
|
+
style_sheet_id: string;
|
|
1606
|
+
match_count: number;
|
|
1607
|
+
invalidation_count: number;
|
|
1608
|
+
}
|
|
1609
|
+
export declare enum SelectorTimingsKey {
|
|
1610
|
+
Elapsed = "elapsed (us)",
|
|
1611
|
+
RejectPercentage = "reject_percentage",
|
|
1612
|
+
FastRejectCount = "fast_reject_count",
|
|
1613
|
+
MatchAttempts = "match_attempts",
|
|
1614
|
+
MatchCount = "match_count",
|
|
1615
|
+
Selector = "selector",
|
|
1616
|
+
StyleSheetId = "style_sheet_id",
|
|
1617
|
+
InvalidationCount = "invalidation_count"
|
|
1618
|
+
}
|
|
1619
|
+
export interface SelectorStats {
|
|
1620
|
+
selector_timings: SelectorTiming[];
|
|
1621
|
+
}
|
|
1622
|
+
export interface SelectorStats extends Complete {
|
|
1623
|
+
name: Name.SELECTOR_STATS;
|
|
1624
|
+
args: Args & {
|
|
1625
|
+
selector_stats?: SelectorStats;
|
|
1626
|
+
};
|
|
1627
|
+
}
|
|
1628
|
+
export declare function isSelectorStats(event: Event): event is SelectorStats;
|
|
1629
|
+
export interface RecalcStyle extends Complete {
|
|
1630
|
+
name: Name.RECALC_STYLE;
|
|
1631
|
+
args: Args & {
|
|
1632
|
+
elementCount: number;
|
|
1633
|
+
beginData?: {
|
|
1634
|
+
frame: string;
|
|
1635
|
+
sampleTraceId?: number;
|
|
1636
|
+
stackTrace?: CallFrame[];
|
|
1637
|
+
};
|
|
1638
|
+
};
|
|
1639
|
+
}
|
|
1640
|
+
/** The real trace event is called 'UpdateLayoutTree' but we've aliased it for convenience. */
|
|
1641
|
+
export declare function isRecalcStyle(event: Event): event is RecalcStyle;
|
|
1642
|
+
export interface Layout extends Complete {
|
|
1643
|
+
name: Name.LAYOUT;
|
|
1644
|
+
args: Args & {
|
|
1645
|
+
beginData: {
|
|
1646
|
+
frame: string;
|
|
1647
|
+
dirtyObjects: number;
|
|
1648
|
+
partialLayout: boolean;
|
|
1649
|
+
totalObjects: number;
|
|
1650
|
+
sampleTraceId?: number;
|
|
1651
|
+
stackTrace?: CallFrame[];
|
|
1652
|
+
};
|
|
1653
|
+
endData?: {
|
|
1654
|
+
layoutRoots: Array<{
|
|
1655
|
+
depth: number;
|
|
1656
|
+
nodeId: Protocol.DOM.BackendNodeId;
|
|
1657
|
+
quads: number[][];
|
|
1658
|
+
}>;
|
|
1659
|
+
};
|
|
1660
|
+
};
|
|
1661
|
+
}
|
|
1662
|
+
export declare function isLayout(event: Event): event is Layout;
|
|
1663
|
+
export interface InvalidateLayout extends Instant {
|
|
1664
|
+
name: Name.INVALIDATE_LAYOUT;
|
|
1665
|
+
args: Args & {
|
|
1666
|
+
data: {
|
|
1667
|
+
frame: string;
|
|
1668
|
+
nodeId: Protocol.DOM.BackendNodeId;
|
|
1669
|
+
};
|
|
1670
|
+
};
|
|
1671
|
+
}
|
|
1672
|
+
export declare function isInvalidateLayout(event: Event): event is InvalidateLayout;
|
|
1673
|
+
export interface DebuggerAsyncTaskScheduled extends Event {
|
|
1674
|
+
name: Name.DEBUGGER_ASYNC_TASK_SCHEDULED;
|
|
1675
|
+
args: Args & {
|
|
1676
|
+
taskName: string;
|
|
1677
|
+
};
|
|
1678
|
+
}
|
|
1679
|
+
export declare function isDebuggerAsyncTaskScheduled(event: Event): event is DebuggerAsyncTaskScheduled;
|
|
1680
|
+
export interface DebuggerAsyncTaskRun extends Event {
|
|
1681
|
+
name: Name.DEBUGGER_ASYNC_TASK_RUN;
|
|
1682
|
+
}
|
|
1683
|
+
export declare function isDebuggerAsyncTaskRun(event: Event): event is DebuggerAsyncTaskRun;
|
|
1684
|
+
export type ProfileID = Platform.Brand.Brand<string, 'profileIdTag'>;
|
|
1685
|
+
export declare function ProfileID(value: string): ProfileID;
|
|
1686
|
+
export type CallFrameID = Platform.Brand.Brand<number, 'callFrameIdTag'>;
|
|
1687
|
+
export declare function CallFrameID(value: number): CallFrameID;
|
|
1688
|
+
export type SampleIndex = Platform.Brand.Brand<number, 'sampleIndexTag'>;
|
|
1689
|
+
export declare function SampleIndex(value: number): SampleIndex;
|
|
1690
|
+
export type ProcessID = Platform.Brand.Brand<number, 'processIdTag'>;
|
|
1691
|
+
export declare function ProcessID(value: number): ProcessID;
|
|
1692
|
+
export type ThreadID = Platform.Brand.Brand<number, 'threadIdTag'>;
|
|
1693
|
+
export declare function ThreadID(value: number): ThreadID;
|
|
1694
|
+
export type WorkerId = Platform.Brand.Brand<string, 'workerIdTag'>;
|
|
1695
|
+
export declare function WorkerId(value: string): WorkerId;
|
|
1696
|
+
export declare function isComplete(event: Event): event is Complete;
|
|
1697
|
+
export declare function isBegin(event: Event): event is Begin;
|
|
1698
|
+
export declare function isEnd(event: Event): event is End;
|
|
1699
|
+
export declare function isDispatch(event: Event): event is Dispatch;
|
|
1700
|
+
export declare function isInstant(event: Event): event is Instant;
|
|
1701
|
+
export declare function isRendererEvent(event: Event): event is RendererEvent;
|
|
1702
|
+
export declare function isFireIdleCallback(event: Event): event is FireIdleCallback;
|
|
1703
|
+
export declare function isSchedulePostMessage(event: Event): event is SchedulePostMessage;
|
|
1704
|
+
export declare function isHandlePostMessage(event: Event): event is HandlePostMessage;
|
|
1705
|
+
export declare function isUpdateCounters(event: Event): event is UpdateCounters;
|
|
1706
|
+
export declare function isDOMStats(event: Event): event is DOMStats;
|
|
1707
|
+
export declare function isThreadName(event: Event): event is ThreadName;
|
|
1708
|
+
export declare function isProcessName(event: Event): event is ProcessName;
|
|
1709
|
+
export declare function isTracingStartedInBrowser(event: Event): event is TracingStartedInBrowser;
|
|
1710
|
+
export declare function isFrameCommittedInBrowser(event: Event): event is FrameCommittedInBrowser;
|
|
1711
|
+
export declare function isCommitLoad(event: Event): event is CommitLoad;
|
|
1712
|
+
export declare function isAnimation(event: Event): event is Animation;
|
|
1713
|
+
export declare function isSyntheticAnimation(event: Event): event is SyntheticAnimationPair;
|
|
1714
|
+
export declare function isLayoutShift(event: Event): event is LayoutShift;
|
|
1715
|
+
export declare function isLayoutInvalidationTracking(event: Event): event is LayoutInvalidationTracking;
|
|
1716
|
+
export declare function isFirstContentfulPaint(event: Event): event is FirstContentfulPaint;
|
|
1717
|
+
export declare function isAnyLargestContentfulPaintCandidate(event: Event): event is AnyLargestContentfulPaintCandidate;
|
|
1718
|
+
export declare function isSoftLargestContentfulPaintCandidate(event: Event): event is AnyLargestContentfulPaintCandidate;
|
|
1719
|
+
export declare function isLargestImagePaintCandidate(event: Event): event is LargestImagePaintCandidate;
|
|
1720
|
+
export declare function isLargestTextPaintCandidate(event: Event): event is LargestTextPaintCandidate;
|
|
1721
|
+
export declare function isMarkLoad(event: Event): event is MarkLoad;
|
|
1722
|
+
export declare function isFirstPaint(event: Event): event is FirstPaint;
|
|
1723
|
+
export declare function isMarkDOMContent(event: Event): event is MarkDOMContent;
|
|
1724
|
+
export declare function isInteractiveTime(event: Event): event is InteractiveTime;
|
|
1725
|
+
export declare function isEventTiming(event: Event): event is EventTimingBeginOrEnd;
|
|
1726
|
+
export declare function isEventTimingEnd(event: Event): event is EventTimingEnd;
|
|
1727
|
+
export declare function isEventTimingStart(event: Event): event is EventTimingBegin;
|
|
1728
|
+
export declare function isGPUTask(event: Event): event is GPUTask;
|
|
1729
|
+
export declare function isProfile(event: Event): event is Profile;
|
|
1730
|
+
export declare function isSyntheticCpuProfile(event: Event): event is SyntheticCpuProfile;
|
|
1731
|
+
export declare function isProfileChunk(event: Event): event is ProfileChunk;
|
|
1732
|
+
export declare function isResourceChangePriority(event: Event): event is ResourceChangePriority;
|
|
1733
|
+
export declare function isResourceSendRequest(event: Event): event is ResourceSendRequest;
|
|
1734
|
+
export declare function isResourceReceiveResponse(event: Event): event is ResourceReceiveResponse;
|
|
1735
|
+
export declare function isResourceMarkAsCached(event: Event): event is ResourceMarkAsCached;
|
|
1736
|
+
export declare function isResourceFinish(event: Event): event is ResourceFinish;
|
|
1737
|
+
export declare function isResourceWillSendRequest(event: Event): event is ResourceWillSendRequest;
|
|
1738
|
+
export declare function isResourceReceivedData(event: Event): event is ResourceReceivedData;
|
|
1739
|
+
/** Any event where we receive data (and get an encodedDataLength) **/
|
|
1740
|
+
export declare function isReceivedDataEvent(event: Event): event is ResourceReceivedData | ResourceFinish | ResourceReceiveResponse;
|
|
1741
|
+
export declare function isSyntheticNetworkRequest(event: Event): event is SyntheticNetworkRequest;
|
|
1742
|
+
export declare function isSyntheticWebSocketConnection(event: Event): event is SyntheticWebSocketConnection;
|
|
1743
|
+
export declare function isNetworkTrackEntry(event: Event): event is SyntheticWebSocketConnection | SyntheticNetworkRequest;
|
|
1744
|
+
export declare function isPrePaint(event: Event): event is PrePaint;
|
|
1745
|
+
/** A VALID navigation start (as it has a populated documentLoaderURL) */
|
|
1746
|
+
export declare function isNavigationStart(event: Event): event is NavigationStart;
|
|
1747
|
+
export interface DidCommitSameDocumentNavigation extends Complete {
|
|
1748
|
+
name: 'RenderFrameHostImpl::DidCommitSameDocumentNavigation';
|
|
1749
|
+
args: Args & {
|
|
1750
|
+
url: string;
|
|
1751
|
+
render_frame_host: {
|
|
1752
|
+
frame_type: string;
|
|
1753
|
+
};
|
|
1754
|
+
};
|
|
1755
|
+
}
|
|
1756
|
+
export declare function isDidCommitSameDocumentNavigation(event: Event): event is DidCommitSameDocumentNavigation;
|
|
1757
|
+
export declare function isMainFrameViewport(event: Event): event is MainFrameViewport;
|
|
1758
|
+
export declare function isSyntheticUserTiming(event: Event): event is SyntheticUserTimingPair;
|
|
1759
|
+
export declare function isSyntheticConsoleTiming(event: Event): event is SyntheticConsoleTimingPair;
|
|
1760
|
+
export declare function isUserTiming(event: Event): event is UserTiming;
|
|
1761
|
+
export declare function isDomLoading(event: Event): event is DomLoading;
|
|
1762
|
+
export declare function isBeginRemoteFontLoad(event: Event): event is BeginRemoteFontLoad;
|
|
1763
|
+
export declare function isRemoteFontLoaded(event: Event): event is RemoteFontLoaded;
|
|
1764
|
+
export declare function isPerformanceMeasure(event: Event): event is PerformanceMeasure;
|
|
1765
|
+
export declare function isPerformanceMeasureBegin(event: Event): event is PerformanceMeasureBegin;
|
|
1766
|
+
export declare function isPerformanceMark(event: Event): event is PerformanceMark;
|
|
1767
|
+
export declare function isConsoleTime(event: Event): event is ConsoleTime;
|
|
1768
|
+
export declare function isConsoleTimeStamp(event: Event): event is ConsoleTimeStamp;
|
|
1769
|
+
export declare function isUserTimingMeasure(event: Event): event is UserTimingMeasure;
|
|
1770
|
+
export declare function isParseHTML(event: Event): event is ParseHTML;
|
|
1771
|
+
export interface Async extends Event {
|
|
1772
|
+
ph: Phase.ASYNC_NESTABLE_START | Phase.ASYNC_NESTABLE_INSTANT | Phase.ASYNC_NESTABLE_END | Phase.ASYNC_STEP_INTO | Phase.ASYNC_BEGIN | Phase.ASYNC_END | Phase.ASYNC_STEP_PAST;
|
|
1773
|
+
}
|
|
1774
|
+
export declare function isSyntheticLayoutShift(event: Event): event is SyntheticLayoutShift;
|
|
1775
|
+
export declare function isSyntheticLayoutShiftCluster(event: Event): event is SyntheticLayoutShiftCluster;
|
|
1776
|
+
export declare function isProfileCall(event: Event): event is SyntheticProfileCall;
|
|
1777
|
+
export interface Paint extends Event {
|
|
1778
|
+
name: Name.PAINT;
|
|
1779
|
+
args: Args & {
|
|
1780
|
+
data: ArgsData & {
|
|
1781
|
+
frame: string;
|
|
1782
|
+
layerId: number;
|
|
1783
|
+
nodeId?: Protocol.DOM.BackendNodeId;
|
|
1784
|
+
nodeName?: string;
|
|
1785
|
+
/** This rect is unreliable and often wrong. We'll remove it. crbug.com/41402938#comment10 */
|
|
1786
|
+
clip?: number[];
|
|
1787
|
+
};
|
|
1788
|
+
};
|
|
1789
|
+
}
|
|
1790
|
+
export declare function isPaint(event: Event): event is Paint;
|
|
1791
|
+
export interface PaintImage extends Complete {
|
|
1792
|
+
name: Name.PAINT_IMAGE;
|
|
1793
|
+
args: Args & {
|
|
1794
|
+
data: Event & {
|
|
1795
|
+
height: number;
|
|
1796
|
+
width: number;
|
|
1797
|
+
x: number;
|
|
1798
|
+
y: number;
|
|
1799
|
+
isCSS: boolean;
|
|
1800
|
+
srcHeight: number;
|
|
1801
|
+
srcWidth: number;
|
|
1802
|
+
isPicture?: boolean;
|
|
1803
|
+
loadingAttribute?: string;
|
|
1804
|
+
srcsetAttribute?: string;
|
|
1805
|
+
url?: string;
|
|
1806
|
+
nodeId?: Protocol.DOM.BackendNodeId;
|
|
1807
|
+
nodeName?: string;
|
|
1808
|
+
frame?: string;
|
|
1809
|
+
};
|
|
1810
|
+
};
|
|
1811
|
+
}
|
|
1812
|
+
export declare function isPaintImage(event: Event): event is PaintImage;
|
|
1813
|
+
export interface ScrollLayer extends Complete {
|
|
1814
|
+
name: Name.SCROLL_LAYER;
|
|
1815
|
+
args: Args & {
|
|
1816
|
+
data: Event & {
|
|
1817
|
+
frame: string;
|
|
1818
|
+
nodeId?: Protocol.DOM.BackendNodeId;
|
|
1819
|
+
};
|
|
1820
|
+
};
|
|
1821
|
+
}
|
|
1822
|
+
export declare function isScrollLayer(event: Event): event is ScrollLayer;
|
|
1823
|
+
export interface SetLayerTreeId extends Instant {
|
|
1824
|
+
name: Name.SET_LAYER_TREE_ID;
|
|
1825
|
+
args: Args & {
|
|
1826
|
+
data: ArgsData & {
|
|
1827
|
+
frame: string;
|
|
1828
|
+
layerTreeId: number;
|
|
1829
|
+
};
|
|
1830
|
+
};
|
|
1831
|
+
}
|
|
1832
|
+
export declare function isSetLayerId(event: Event): event is SetLayerTreeId;
|
|
1833
|
+
export interface UpdateLayer extends Event {
|
|
1834
|
+
name: Name.UPDATE_LAYER;
|
|
1835
|
+
args: Args & {
|
|
1836
|
+
layerId: number;
|
|
1837
|
+
layerTreeId: number;
|
|
1838
|
+
};
|
|
1839
|
+
}
|
|
1840
|
+
export declare function isUpdateLayer(event: Event): event is UpdateLayer;
|
|
1841
|
+
export interface DisplayItemListSnapshot extends Event {
|
|
1842
|
+
name: Name.DISPLAY_ITEM_LIST_SNAPSHOT;
|
|
1843
|
+
ph: Phase.OBJECT_SNAPSHOT;
|
|
1844
|
+
id2: {
|
|
1845
|
+
local?: string;
|
|
1846
|
+
};
|
|
1847
|
+
args: Args & {
|
|
1848
|
+
snapshot: {
|
|
1849
|
+
skp64: string;
|
|
1850
|
+
params?: {
|
|
1851
|
+
layer_rect: [number, number, number, number];
|
|
1852
|
+
};
|
|
1853
|
+
};
|
|
1854
|
+
};
|
|
1855
|
+
}
|
|
1856
|
+
export declare function isDisplayListItemListSnapshot(event: Event): event is DisplayItemListSnapshot;
|
|
1857
|
+
export interface LayerTreeHostImplSnapshot extends Event {
|
|
1858
|
+
name: Name.LAYER_TREE_HOST_IMPL_SNAPSHOT;
|
|
1859
|
+
ph: Phase.OBJECT_SNAPSHOT;
|
|
1860
|
+
id: string;
|
|
1861
|
+
args: Args & {
|
|
1862
|
+
snapshot: {
|
|
1863
|
+
active_tiles: Array<{
|
|
1864
|
+
id: string;
|
|
1865
|
+
layer_id: string;
|
|
1866
|
+
gpu_memory_usage: number;
|
|
1867
|
+
content_rect: number[];
|
|
1868
|
+
}>;
|
|
1869
|
+
device_viewport_size: {
|
|
1870
|
+
width: number;
|
|
1871
|
+
height: number;
|
|
1872
|
+
};
|
|
1873
|
+
active_tree: {
|
|
1874
|
+
root_layer: TraceLayer;
|
|
1875
|
+
layers: TraceLayer[];
|
|
1876
|
+
};
|
|
1877
|
+
};
|
|
1878
|
+
};
|
|
1879
|
+
}
|
|
1880
|
+
export declare function isLayerTreeHostImplSnapshot(event: Event): event is LayerTreeHostImplSnapshot;
|
|
1881
|
+
export interface TraceLayer {
|
|
1882
|
+
bounds: {
|
|
1883
|
+
height: number;
|
|
1884
|
+
width: number;
|
|
1885
|
+
};
|
|
1886
|
+
children: TraceLayer[];
|
|
1887
|
+
layer_id: number;
|
|
1888
|
+
position: number[];
|
|
1889
|
+
scroll_offset: number[];
|
|
1890
|
+
layer_quad: number[];
|
|
1891
|
+
draws_content: number;
|
|
1892
|
+
gpu_memory_usage: number;
|
|
1893
|
+
transform: number[];
|
|
1894
|
+
owner_node: Protocol.DOM.BackendNodeId;
|
|
1895
|
+
compositing_reasons: string[];
|
|
1896
|
+
compositing_reason_ids: string[];
|
|
1897
|
+
non_fast_scrollable_region: number[];
|
|
1898
|
+
touch_event_handler_region: number[];
|
|
1899
|
+
wheel_event_handler_region: number[];
|
|
1900
|
+
scroll_event_handler_region: number[];
|
|
1901
|
+
}
|
|
1902
|
+
export interface TracingLayerTile {
|
|
1903
|
+
id: string;
|
|
1904
|
+
layer_id: string;
|
|
1905
|
+
gpu_memory_usage: number;
|
|
1906
|
+
content_rect: number[];
|
|
1907
|
+
}
|
|
1908
|
+
export interface FireAnimationFrame extends Complete {
|
|
1909
|
+
name: Name.FIRE_ANIMATION_FRAME;
|
|
1910
|
+
args: Args & {
|
|
1911
|
+
data: {
|
|
1912
|
+
frame: string;
|
|
1913
|
+
id: number;
|
|
1914
|
+
};
|
|
1915
|
+
};
|
|
1916
|
+
}
|
|
1917
|
+
export declare function isFireAnimationFrame(event: Event): event is FireAnimationFrame;
|
|
1918
|
+
export interface RequestAnimationFrame extends Instant {
|
|
1919
|
+
name: Name.REQUEST_ANIMATION_FRAME;
|
|
1920
|
+
args: Args & {
|
|
1921
|
+
data: {
|
|
1922
|
+
frame: string;
|
|
1923
|
+
id: number;
|
|
1924
|
+
stackTrace?: CallFrame;
|
|
1925
|
+
};
|
|
1926
|
+
};
|
|
1927
|
+
}
|
|
1928
|
+
export interface TimerInstall extends Instant {
|
|
1929
|
+
name: Name.TIMER_INSTALL;
|
|
1930
|
+
args: Args & {
|
|
1931
|
+
data: {
|
|
1932
|
+
frame: string;
|
|
1933
|
+
singleShot: boolean;
|
|
1934
|
+
timeout: number;
|
|
1935
|
+
timerId: number;
|
|
1936
|
+
stackTrace?: CallFrame;
|
|
1937
|
+
};
|
|
1938
|
+
};
|
|
1939
|
+
}
|
|
1940
|
+
export declare function isTimerInstall(event: Event): event is TimerInstall;
|
|
1941
|
+
export interface TimerFire extends Complete {
|
|
1942
|
+
name: Name.TIMER_FIRE;
|
|
1943
|
+
args: Args & {
|
|
1944
|
+
data: {
|
|
1945
|
+
frame: string;
|
|
1946
|
+
timerId: number;
|
|
1947
|
+
};
|
|
1948
|
+
};
|
|
1949
|
+
}
|
|
1950
|
+
export declare function isTimerFire(event: Event): event is TimerFire;
|
|
1951
|
+
export interface RequestIdleCallback extends Instant {
|
|
1952
|
+
name: Name.REQUEST_IDLE_CALLBACK;
|
|
1953
|
+
args: Args & {
|
|
1954
|
+
data: {
|
|
1955
|
+
frame: string;
|
|
1956
|
+
id: number;
|
|
1957
|
+
timeout: Milli;
|
|
1958
|
+
stackTrace?: CallFrame;
|
|
1959
|
+
};
|
|
1960
|
+
};
|
|
1961
|
+
}
|
|
1962
|
+
export declare function isRequestIdleCallback(event: Event): event is RequestIdleCallback;
|
|
1963
|
+
export interface WebSocketCreate extends Instant {
|
|
1964
|
+
name: Name.WEB_SOCKET_CREATE;
|
|
1965
|
+
args: Args & {
|
|
1966
|
+
data: {
|
|
1967
|
+
identifier: number;
|
|
1968
|
+
url: string;
|
|
1969
|
+
frame?: string;
|
|
1970
|
+
workerId?: string;
|
|
1971
|
+
websocketProtocol?: string;
|
|
1972
|
+
stackTrace?: CallFrame;
|
|
1973
|
+
};
|
|
1974
|
+
};
|
|
1975
|
+
}
|
|
1976
|
+
export declare function isWebSocketCreate(event: Event): event is WebSocketCreate;
|
|
1977
|
+
export interface WebSocketInfo extends Instant {
|
|
1978
|
+
name: Name.WEB_SOCKET_DESTROY | Name.WEB_SOCKET_RECEIVE_HANDSHAKE | Name.WEB_SOCKET_RECEIVE_HANDSHAKE_REQUEST;
|
|
1979
|
+
args: Args & {
|
|
1980
|
+
data: ArgsData & {
|
|
1981
|
+
identifier: number;
|
|
1982
|
+
url: string;
|
|
1983
|
+
frame?: string;
|
|
1984
|
+
workerId?: string;
|
|
1985
|
+
};
|
|
1986
|
+
};
|
|
1987
|
+
}
|
|
1988
|
+
export interface WebSocketTransfer extends Instant {
|
|
1989
|
+
name: Name.WEB_SOCKET_SEND | Name.WEB_SOCKET_RECEIVE;
|
|
1990
|
+
args: Args & {
|
|
1991
|
+
data: ArgsData & {
|
|
1992
|
+
identifier: number;
|
|
1993
|
+
url: string;
|
|
1994
|
+
dataLength: number;
|
|
1995
|
+
frame?: string;
|
|
1996
|
+
workerId?: string;
|
|
1997
|
+
};
|
|
1998
|
+
};
|
|
1999
|
+
}
|
|
2000
|
+
export declare function isWebSocketInfo(event: Event): event is WebSocketInfo;
|
|
2001
|
+
export declare function isWebSocketTransfer(event: Event): event is WebSocketTransfer;
|
|
2002
|
+
export interface WebSocketSend extends Instant {
|
|
2003
|
+
name: Name.WEB_SOCKET_SEND;
|
|
2004
|
+
args: Args & {
|
|
2005
|
+
data: ArgsData & {
|
|
2006
|
+
identifier: number;
|
|
2007
|
+
url: string;
|
|
2008
|
+
dataLength: number;
|
|
2009
|
+
frame?: string;
|
|
2010
|
+
workerId?: string;
|
|
2011
|
+
};
|
|
2012
|
+
};
|
|
2013
|
+
}
|
|
2014
|
+
export interface WebSocketReceive extends Instant {
|
|
2015
|
+
name: Name.WEB_SOCKET_RECEIVE;
|
|
2016
|
+
args: Args & {
|
|
2017
|
+
data: ArgsData & {
|
|
2018
|
+
identifier: number;
|
|
2019
|
+
url: string;
|
|
2020
|
+
dataLength: number;
|
|
2021
|
+
frame?: string;
|
|
2022
|
+
workerId?: string;
|
|
2023
|
+
};
|
|
2024
|
+
};
|
|
2025
|
+
}
|
|
2026
|
+
export interface WebSocketSendHandshakeRequest extends Instant {
|
|
2027
|
+
name: Name.WEB_SOCKET_SEND_HANDSHAKE_REQUEST;
|
|
2028
|
+
args: Args & {
|
|
2029
|
+
data: {
|
|
2030
|
+
frame: string;
|
|
2031
|
+
identifier: number;
|
|
2032
|
+
};
|
|
2033
|
+
};
|
|
2034
|
+
}
|
|
2035
|
+
export declare function isWebSocketSendHandshakeRequest(event: Event): event is WebSocketSendHandshakeRequest;
|
|
2036
|
+
export interface WebSocketReceiveHandshakeResponse extends Instant {
|
|
2037
|
+
name: Name.WEB_SOCKET_RECEIVE_HANDSHAKE_REQUEST;
|
|
2038
|
+
args: Args & {
|
|
2039
|
+
data: {
|
|
2040
|
+
frame: string;
|
|
2041
|
+
identifier: number;
|
|
2042
|
+
};
|
|
2043
|
+
};
|
|
2044
|
+
}
|
|
2045
|
+
export declare function isWebSocketReceiveHandshakeResponse(event: Event): event is WebSocketReceiveHandshakeResponse;
|
|
2046
|
+
export interface WebSocketDestroy extends Instant {
|
|
2047
|
+
name: Name.WEB_SOCKET_DESTROY;
|
|
2048
|
+
args: Args & {
|
|
2049
|
+
data: {
|
|
2050
|
+
frame: string;
|
|
2051
|
+
identifier: number;
|
|
2052
|
+
};
|
|
2053
|
+
};
|
|
2054
|
+
}
|
|
2055
|
+
export declare function isWebSocketDestroy(event: Event): event is WebSocketDestroy;
|
|
2056
|
+
export type WebSocketTraceEvent = WebSocketCreate | WebSocketInfo | WebSocketTransfer;
|
|
2057
|
+
export declare function isWebSocketTraceEvent(event: Event): event is WebSocketTraceEvent;
|
|
2058
|
+
export type WebSocketEvent = WebSocketTraceEvent | SyntheticWebSocketConnection;
|
|
2059
|
+
export declare function isWebSocketEvent(event: Event): event is WebSocketTraceEvent | SyntheticWebSocketConnection;
|
|
2060
|
+
export interface V8Compile extends Complete {
|
|
2061
|
+
name: Name.COMPILE;
|
|
2062
|
+
args: Args & {
|
|
2063
|
+
data?: {
|
|
2064
|
+
url?: string;
|
|
2065
|
+
columnNumber?: number;
|
|
2066
|
+
consumedCacheSize?: number;
|
|
2067
|
+
cacheRejected?: boolean;
|
|
2068
|
+
cacheKind?: 'full' | 'normal';
|
|
2069
|
+
lineNumber?: number;
|
|
2070
|
+
notStreamedReason?: string;
|
|
2071
|
+
streamed?: boolean;
|
|
2072
|
+
eager?: boolean;
|
|
2073
|
+
};
|
|
2074
|
+
fileName?: string;
|
|
2075
|
+
};
|
|
2076
|
+
}
|
|
2077
|
+
export declare function isV8Compile(event: Event): event is V8Compile;
|
|
2078
|
+
export interface FunctionCall extends Complete {
|
|
2079
|
+
name: Name.FUNCTION_CALL;
|
|
2080
|
+
args: Args & {
|
|
2081
|
+
data?: Partial<CallFrame> & {
|
|
2082
|
+
frame?: string;
|
|
2083
|
+
isolate?: string;
|
|
2084
|
+
};
|
|
2085
|
+
};
|
|
2086
|
+
}
|
|
2087
|
+
export declare function isFunctionCall(event: Event): event is FunctionCall;
|
|
2088
|
+
export interface SchedulePostTaskCallback extends Instant {
|
|
2089
|
+
name: Name.SCHEDULE_POST_TASK_CALLBACK;
|
|
2090
|
+
args: Args & {
|
|
2091
|
+
data: {
|
|
2092
|
+
taskId: number;
|
|
2093
|
+
priority: 'user-blocking' | 'user-visible' | 'background';
|
|
2094
|
+
delay: Milli;
|
|
2095
|
+
frame?: string;
|
|
2096
|
+
stackTrace?: CallFrame;
|
|
2097
|
+
};
|
|
2098
|
+
};
|
|
2099
|
+
}
|
|
2100
|
+
export declare function isSchedulePostTaskCallback(event: Event): event is SchedulePostTaskCallback;
|
|
2101
|
+
export interface RunPostTaskCallback extends Complete {
|
|
2102
|
+
name: Name.RUN_POST_TASK_CALLBACK;
|
|
2103
|
+
args: Args & {
|
|
2104
|
+
data: {
|
|
2105
|
+
taskId: number;
|
|
2106
|
+
priority: 'user-blocking' | 'user-visible' | 'background';
|
|
2107
|
+
delay: Milli;
|
|
2108
|
+
frame?: string;
|
|
2109
|
+
};
|
|
2110
|
+
};
|
|
2111
|
+
}
|
|
2112
|
+
export declare function isRunPostTaskCallback(event: Event): event is RunPostTaskCallback;
|
|
2113
|
+
export interface AbortPostTaskCallback extends Complete {
|
|
2114
|
+
name: Name.ABORT_POST_TASK_CALLBACK;
|
|
2115
|
+
args: Args & {
|
|
2116
|
+
data: {
|
|
2117
|
+
taskId: number;
|
|
2118
|
+
frame?: string;
|
|
2119
|
+
stackTrace?: CallFrame;
|
|
2120
|
+
};
|
|
2121
|
+
};
|
|
2122
|
+
}
|
|
2123
|
+
export declare function isAbortPostTaskCallback(event: Event): event is RunPostTaskCallback;
|
|
2124
|
+
/**
|
|
2125
|
+
* Generally, before JS is executed, a trace event is dispatched that
|
|
2126
|
+
* parents the JS calls. These we call "invocation" events. This
|
|
2127
|
+
* function determines if an event is one of such. Note: these are also
|
|
2128
|
+
* commonly referred to as "JS entry points".
|
|
2129
|
+
*/
|
|
2130
|
+
export declare function isJSInvocationEvent(event: Event): boolean;
|
|
2131
|
+
export interface ConsoleRunTask extends Event {
|
|
2132
|
+
args: Args & {
|
|
2133
|
+
data: ArgsData & {
|
|
2134
|
+
sampleTraceId?: number;
|
|
2135
|
+
};
|
|
2136
|
+
};
|
|
2137
|
+
name: Name.V8_CONSOLE_RUN_TASK;
|
|
2138
|
+
}
|
|
2139
|
+
export declare function isConsoleRunTask(event: Event): event is ConsoleRunTask;
|
|
2140
|
+
export interface FlowEvent extends Event {
|
|
2141
|
+
id: number;
|
|
2142
|
+
ph: Phase.FLOW_START | Phase.FLOW_END | Phase.FLOW_STEP;
|
|
2143
|
+
}
|
|
2144
|
+
export declare function isFlowPhaseEvent(event: Event): event is FlowEvent;
|
|
2145
|
+
export interface ParseAuthorStyleSheet extends Complete {
|
|
2146
|
+
name: Name.PARSE_AUTHOR_STYLE_SHEET;
|
|
2147
|
+
args?: Args & {
|
|
2148
|
+
data: {
|
|
2149
|
+
stylesheetUrl: string;
|
|
2150
|
+
};
|
|
2151
|
+
};
|
|
2152
|
+
}
|
|
2153
|
+
export declare function isParseAuthorStyleSheetEvent(event: Event): event is ParseAuthorStyleSheet;
|
|
2154
|
+
/**
|
|
2155
|
+
* This is an exhaustive list of events we track in the Performance
|
|
2156
|
+
* panel. Note not all of them are necessarliry shown in the flame
|
|
2157
|
+
* chart, some of them we only use for parsing.
|
|
2158
|
+
* TODO(crbug.com/1428024): Complete this enum.
|
|
2159
|
+
*/
|
|
2160
|
+
export declare const enum Name {
|
|
2161
|
+
THREAD_NAME = "thread_name",
|
|
2162
|
+
PROGRAM = "Program",
|
|
2163
|
+
RUN_TASK = "RunTask",
|
|
2164
|
+
ASYNC_TASK = "AsyncTask",
|
|
2165
|
+
RUN_MICROTASKS = "RunMicrotasks",
|
|
2166
|
+
XHR_LOAD = "XHRLoad",
|
|
2167
|
+
XHR_READY_STATE_CHANGED = "XHRReadyStateChange",
|
|
2168
|
+
PARSE_HTML = "ParseHTML",
|
|
2169
|
+
PARSE_CSS = "ParseAuthorStyleSheet",
|
|
2170
|
+
COMPILE_CODE = "V8.CompileCode",
|
|
2171
|
+
COMPILE_MODULE = "V8.CompileModule",
|
|
2172
|
+
COMPILE = "v8.compile",
|
|
2173
|
+
COMPILE_SCRIPT = "V8.CompileScript",
|
|
2174
|
+
OPTIMIZE = "V8.OptimizeCode",
|
|
2175
|
+
WASM_STREAM_FROM_RESPONSE_CALLBACK = "v8.wasm.streamFromResponseCallback",
|
|
2176
|
+
WASM_COMPILED_MODULE = "v8.wasm.compiledModule",
|
|
2177
|
+
WASM_CACHED_MODULE = "v8.wasm.cachedModule",
|
|
2178
|
+
WASM_MODULE_CACHE_HIT = "v8.wasm.moduleCacheHit",
|
|
2179
|
+
WASM_MODULE_CACHE_INVALID = "v8.wasm.moduleCacheInvalid",
|
|
2180
|
+
PROFILE_CALL = "ProfileCall",
|
|
2181
|
+
EVALUATE_SCRIPT = "EvaluateScript",
|
|
2182
|
+
FUNCTION_CALL = "FunctionCall",
|
|
2183
|
+
EVENT_DISPATCH = "EventDispatch",
|
|
2184
|
+
EVALUATE_MODULE = "v8.evaluateModule",
|
|
2185
|
+
REQUEST_MAIN_THREAD_FRAME = "RequestMainThreadFrame",
|
|
2186
|
+
REQUEST_ANIMATION_FRAME = "RequestAnimationFrame",
|
|
2187
|
+
CANCEL_ANIMATION_FRAME = "CancelAnimationFrame",
|
|
2188
|
+
FIRE_ANIMATION_FRAME = "FireAnimationFrame",
|
|
2189
|
+
REQUEST_IDLE_CALLBACK = "RequestIdleCallback",
|
|
2190
|
+
CANCEL_IDLE_CALLBACK = "CancelIdleCallback",
|
|
2191
|
+
FIRE_IDLE_CALLBACK = "FireIdleCallback",
|
|
2192
|
+
TIMER_INSTALL = "TimerInstall",
|
|
2193
|
+
TIMER_REMOVE = "TimerRemove",
|
|
2194
|
+
TIMER_FIRE = "TimerFire",
|
|
2195
|
+
WEB_SOCKET_CREATE = "WebSocketCreate",
|
|
2196
|
+
WEB_SOCKET_SEND_HANDSHAKE = "WebSocketSendHandshakeRequest",
|
|
2197
|
+
WEB_SOCKET_RECEIVE_HANDSHAKE = "WebSocketReceiveHandshakeResponse",
|
|
2198
|
+
WEB_SOCKET_DESTROY = "WebSocketDestroy",
|
|
2199
|
+
WEB_SOCKET_SEND = "WebSocketSend",
|
|
2200
|
+
WEB_SOCKET_RECEIVE = "WebSocketReceive",
|
|
2201
|
+
CRYPTO_DO_ENCRYPT = "DoEncrypt",
|
|
2202
|
+
CRYPTO_DO_ENCRYPT_REPLY = "DoEncryptReply",
|
|
2203
|
+
CRYPTO_DO_DECRYPT = "DoDecrypt",
|
|
2204
|
+
CRYPTO_DO_DECRYPT_REPLY = "DoDecryptReply",
|
|
2205
|
+
CRYPTO_DO_DIGEST = "DoDigest",
|
|
2206
|
+
CRYPTO_DO_DIGEST_REPLY = "DoDigestReply",
|
|
2207
|
+
CRYPTO_DO_SIGN = "DoSign",
|
|
2208
|
+
CRYPTO_DO_SIGN_REPLY = "DoSignReply",
|
|
2209
|
+
CRYPTO_DO_VERIFY = "DoVerify",
|
|
2210
|
+
CRYPTO_DO_VERIFY_REPLY = "DoVerifyReply",
|
|
2211
|
+
V8_EXECUTE = "V8.Execute",
|
|
2212
|
+
V8_CONSOLE_RUN_TASK = "V8Console::runTask",
|
|
2213
|
+
SCHEDULE_POST_TASK_CALLBACK = "SchedulePostTaskCallback",
|
|
2214
|
+
RUN_POST_TASK_CALLBACK = "RunPostTaskCallback",
|
|
2215
|
+
ABORT_POST_TASK_CALLBACK = "AbortPostTaskCallback",
|
|
2216
|
+
DEBUGGER_ASYNC_TASK_RUN = "v8::Debugger::AsyncTaskRun",
|
|
2217
|
+
DEBUGGER_ASYNC_TASK_SCHEDULED = "v8::Debugger::AsyncTaskScheduled",
|
|
2218
|
+
GC = "GCEvent",
|
|
2219
|
+
DOMGC = "BlinkGC.AtomicPhase",
|
|
2220
|
+
MAJOR_GC = "MajorGC",
|
|
2221
|
+
MINOR_GC = "MinorGC",
|
|
2222
|
+
GC_COLLECT_GARBARGE = "BlinkGC.AtomicPhase",
|
|
2223
|
+
CPPGC_SWEEP = "CppGC.IncrementalSweep",
|
|
2224
|
+
SCHEDULE_STYLE_RECALCULATION = "ScheduleStyleRecalculation",
|
|
2225
|
+
LAYOUT = "Layout",
|
|
2226
|
+
/** The real trace event is called 'UpdateLayoutTree' but we've aliased it for convenience. */
|
|
2227
|
+
RECALC_STYLE = "UpdateLayoutTree",
|
|
2228
|
+
INVALIDATE_LAYOUT = "InvalidateLayout",
|
|
2229
|
+
LAYOUT_INVALIDATION_TRACKING = "LayoutInvalidationTracking",
|
|
2230
|
+
COMPUTE_INTERSECTION = "ComputeIntersections",
|
|
2231
|
+
HIT_TEST = "HitTest",
|
|
2232
|
+
PRE_PAINT = "PrePaint",
|
|
2233
|
+
LAYERIZE = "Layerize",
|
|
2234
|
+
LAYOUT_SHIFT = "LayoutShift",
|
|
2235
|
+
SYNTHETIC_LAYOUT_SHIFT = "SyntheticLayoutShift",
|
|
2236
|
+
SYNTHETIC_LAYOUT_SHIFT_CLUSTER = "SyntheticLayoutShiftCluster",
|
|
2237
|
+
UPDATE_LAYER_TREE = "UpdateLayerTree",
|
|
2238
|
+
SCHEDULE_STYLE_INVALIDATION_TRACKING = "ScheduleStyleInvalidationTracking",
|
|
2239
|
+
STYLE_RECALC_INVALIDATION_TRACKING = "StyleRecalcInvalidationTracking",
|
|
2240
|
+
STYLE_INVALIDATOR_INVALIDATION_TRACKING = "StyleInvalidatorInvalidationTracking",
|
|
2241
|
+
SELECTOR_STATS = "SelectorStats",
|
|
2242
|
+
BEGIN_COMMIT_COMPOSITOR_FRAME = "BeginCommitCompositorFrame",
|
|
2243
|
+
PARSE_META_VIEWPORT = "ParseMetaViewport",
|
|
2244
|
+
META_CHARSET_CHECK = "MetaCharsetCheck",
|
|
2245
|
+
SCROLL_LAYER = "ScrollLayer",
|
|
2246
|
+
UPDATE_LAYER = "UpdateLayer",
|
|
2247
|
+
PAINT_SETUP = "PaintSetup",
|
|
2248
|
+
PAINT = "Paint",
|
|
2249
|
+
PAINT_IMAGE = "PaintImage",
|
|
2250
|
+
COMMIT = "Commit",
|
|
2251
|
+
COMPOSITE_LAYERS = "CompositeLayers",
|
|
2252
|
+
RASTER_TASK = "RasterTask",
|
|
2253
|
+
IMAGE_DECODE_TASK = "ImageDecodeTask",
|
|
2254
|
+
IMAGE_UPLOAD_TASK = "ImageUploadTask",
|
|
2255
|
+
DECODE_IMAGE = "Decode Image",
|
|
2256
|
+
DRAW_LAZY_PIXEL_REF = "Draw LazyPixelRef",
|
|
2257
|
+
DECODE_LAZY_PIXEL_REF = "Decode LazyPixelRef",
|
|
2258
|
+
GPU_TASK = "GPUTask",
|
|
2259
|
+
RASTERIZE = "Rasterize",
|
|
2260
|
+
EVENT_TIMING = "EventTiming",
|
|
2261
|
+
OPTIMIZE_CODE = "V8.OptimizeCode",
|
|
2262
|
+
CACHE_SCRIPT = "v8.produceCache",
|
|
2263
|
+
CACHE_MODULE = "v8.produceModuleCache",
|
|
2264
|
+
V8_SAMPLE = "V8Sample",
|
|
2265
|
+
JIT_CODE_ADDED = "JitCodeAdded",
|
|
2266
|
+
JIT_CODE_MOVED = "JitCodeMoved",
|
|
2267
|
+
STREAMING_COMPILE_SCRIPT = "v8.parseOnBackground",
|
|
2268
|
+
STREAMING_COMPILE_SCRIPT_WAITING = "v8.parseOnBackgroundWaiting",
|
|
2269
|
+
STREAMING_COMPILE_SCRIPT_PARSING = "v8.parseOnBackgroundParsing",
|
|
2270
|
+
BACKGROUND_DESERIALIZE = "v8.deserializeOnBackground",
|
|
2271
|
+
FINALIZE_DESERIALIZATION = "V8.FinalizeDeserialization",
|
|
2272
|
+
COMMIT_LOAD = "CommitLoad",
|
|
2273
|
+
MARK_LOAD = "MarkLoad",
|
|
2274
|
+
MARK_DOM_CONTENT = "MarkDOMContent",
|
|
2275
|
+
MARK_FIRST_PAINT = "firstPaint",
|
|
2276
|
+
MARK_FCP = "firstContentfulPaint",
|
|
2277
|
+
MARK_LCP_CANDIDATE = "largestContentfulPaint::Candidate",
|
|
2278
|
+
MARK_LCP_CANDIDATE_FOR_SOFT_NAVIGATION = "largestContentfulPaint::CandidateForSoftNavigation",
|
|
2279
|
+
MARK_LCP_INVALIDATE = "largestContentfulPaint::Invalidate",
|
|
2280
|
+
NAVIGATION_START = "navigationStart",
|
|
2281
|
+
SOFT_NAVIGATION_START = "SoftNavigationStart",
|
|
2282
|
+
CONSOLE_TIME = "ConsoleTime",
|
|
2283
|
+
USER_TIMING = "UserTiming",
|
|
2284
|
+
INTERACTIVE_TIME = "InteractiveTime",
|
|
2285
|
+
TIME_STAMP = "TimeStamp",
|
|
2286
|
+
BEGIN_FRAME = "BeginFrame",
|
|
2287
|
+
NEEDS_BEGIN_FRAME_CHANGED = "NeedsBeginFrameChanged",
|
|
2288
|
+
BEGIN_MAIN_THREAD_FRAME = "BeginMainThreadFrame",
|
|
2289
|
+
ACTIVATE_LAYER_TREE = "ActivateLayerTree",
|
|
2290
|
+
DRAW_FRAME = "DrawFrame",
|
|
2291
|
+
DROPPED_FRAME = "DroppedFrame",
|
|
2292
|
+
FRAME_STARTED_LOADING = "FrameStartedLoading",
|
|
2293
|
+
PIPELINE_REPORTER = "PipelineReporter",
|
|
2294
|
+
SCREENSHOT = "Screenshot",
|
|
2295
|
+
RESOURCE_WILL_SEND_REQUEST = "ResourceWillSendRequest",
|
|
2296
|
+
RESOURCE_SEND_REQUEST = "ResourceSendRequest",
|
|
2297
|
+
RESOURCE_RECEIVE_RESPONSE = "ResourceReceiveResponse",
|
|
2298
|
+
RESOURCE_RECEIVE_DATA = "ResourceReceivedData",
|
|
2299
|
+
RESOURCE_FINISH = "ResourceFinish",
|
|
2300
|
+
RESOURCE_MARK_AS_CACHED = "ResourceMarkAsCached",
|
|
2301
|
+
WEB_SOCKET_SEND_HANDSHAKE_REQUEST = "WebSocketSendHandshakeRequest",
|
|
2302
|
+
WEB_SOCKET_RECEIVE_HANDSHAKE_REQUEST = "WebSocketReceiveHandshakeResponse",
|
|
2303
|
+
CPU_PROFILE = "CpuProfile",
|
|
2304
|
+
PROFILE = "Profile",
|
|
2305
|
+
START_PROFILING = "CpuProfiler::StartProfiling",
|
|
2306
|
+
PROFILE_CHUNK = "ProfileChunk",
|
|
2307
|
+
UPDATE_COUNTERS = "UpdateCounters",
|
|
2308
|
+
JS_SAMPLE = "JSSample",
|
|
2309
|
+
ANIMATION = "Animation",
|
|
2310
|
+
PARSE_AUTHOR_STYLE_SHEET = "ParseAuthorStyleSheet",
|
|
2311
|
+
EMBEDDER_CALLBACK = "EmbedderCallback",
|
|
2312
|
+
SET_LAYER_TREE_ID = "SetLayerTreeId",
|
|
2313
|
+
TRACING_STARTED_IN_PAGE = "TracingStartedInPage",
|
|
2314
|
+
TRACING_STARTED_IN_BROWSER = "TracingStartedInBrowser",
|
|
2315
|
+
TRACING_SESSION_ID_FOR_WORKER = "TracingSessionIdForWorker",
|
|
2316
|
+
LAZY_PIXEL_REF = "LazyPixelRef",
|
|
2317
|
+
LAYER_TREE_HOST_IMPL_SNAPSHOT = "cc::LayerTreeHostImpl",
|
|
2318
|
+
PICTURE_SNAPSHOT = "cc::Picture",
|
|
2319
|
+
DISPLAY_ITEM_LIST_SNAPSHOT = "cc::DisplayItemList",
|
|
2320
|
+
INPUT_LATENCY_MOUSE_MOVE = "InputLatency::MouseMove",
|
|
2321
|
+
INPUT_LATENCY_MOUSE_WHEEL = "InputLatency::MouseWheel",
|
|
2322
|
+
IMPL_SIDE_FLING = "InputHandlerProxy::HandleGestureFling::started",
|
|
2323
|
+
SCHEDULE_POST_MESSAGE = "SchedulePostMessage",
|
|
2324
|
+
HANDLE_POST_MESSAGE = "HandlePostMessage",
|
|
2325
|
+
RENDER_FRAME_IMPL_CREATE_CHILD_FRAME = "RenderFrameImpl::createChildFrame",
|
|
2326
|
+
LAYOUT_IMAGE_UNSIZED = "LayoutImageUnsized",
|
|
2327
|
+
DOM_LOADING = "domLoading",
|
|
2328
|
+
BEGIN_REMOTE_FONT_LOAD = "BeginRemoteFontLoad",
|
|
2329
|
+
REMOTE_FONT_LOADED = "RemoteFontLoaded",
|
|
2330
|
+
ANIMATION_FRAME = "AnimationFrame",
|
|
2331
|
+
ANIMATION_FRAME_PRESENTATION = "AnimationFrame::Presentation",
|
|
2332
|
+
SYNTHETIC_NETWORK_REQUEST = "SyntheticNetworkRequest",
|
|
2333
|
+
USER_TIMING_MEASURE = "UserTiming::Measure",
|
|
2334
|
+
LINK_PRECONNECT = "LinkPreconnect",
|
|
2335
|
+
PRELOAD_RENDER_BLOCKING_STATUS_CHANGE = "PreloadRenderBlockingStatusChange"
|
|
2336
|
+
}
|
|
2337
|
+
/**
|
|
2338
|
+
* NOT AN EXHAUSTIVE LIST: just some categories we use and refer
|
|
2339
|
+
* to in multiple places.
|
|
2340
|
+
**/
|
|
2341
|
+
export declare const Categories: {
|
|
2342
|
+
readonly Console: "blink.console";
|
|
2343
|
+
readonly UserTiming: "blink.user_timing";
|
|
2344
|
+
readonly Loading: "loading";
|
|
2345
|
+
};
|
|
2346
|
+
/**
|
|
2347
|
+
* The frames implementation in handlers/FramesHandler is considered "legacy"
|
|
2348
|
+
* in that it is based on the old TimelineModel implementation rather than
|
|
2349
|
+
* following the pattern of the other handlers. This will change in time as we
|
|
2350
|
+
* migrate the frames track to use AnimationFrame events, but for now we
|
|
2351
|
+
* maintain it because the effort required to migrate was large.
|
|
2352
|
+
* Consequently, the types we use through the codebase to refer to these frames
|
|
2353
|
+
* usually use ModelHandlers.FramesHandler.TimelineFrame, but in
|
|
2354
|
+
* trace/types/*.ts we cannot refer to types defined in the Handlers. To avoid a
|
|
2355
|
+
* circular dependency, we define these interfaces here which are implemented by
|
|
2356
|
+
* the classes in FramesHandler.ts, but they can also be used to refer to
|
|
2357
|
+
* instances of frames in trace/types/*.ts which is unable to import from
|
|
2358
|
+
* handlers.
|
|
2359
|
+
*/
|
|
2360
|
+
export interface LegacyTimelineFrame extends Event {
|
|
2361
|
+
startTime: Micro;
|
|
2362
|
+
startTimeOffset: Micro;
|
|
2363
|
+
endTime: Micro;
|
|
2364
|
+
duration: Micro;
|
|
2365
|
+
idle: boolean;
|
|
2366
|
+
dropped: boolean;
|
|
2367
|
+
isPartial: boolean;
|
|
2368
|
+
layerTree: LegacyFrameLayerTreeData | null;
|
|
2369
|
+
paints: LegacyLayerPaintEvent[];
|
|
2370
|
+
mainFrameId?: number;
|
|
2371
|
+
readonly seqId: number;
|
|
2372
|
+
index: number;
|
|
2373
|
+
}
|
|
2374
|
+
export declare function isLegacyTimelineFrame(data: Event): data is LegacyTimelineFrame;
|
|
2375
|
+
export interface LegacyFrameLayerTreeData {
|
|
2376
|
+
entry: LayerTreeHostImplSnapshot;
|
|
2377
|
+
paints: LegacyLayerPaintEvent[];
|
|
2378
|
+
}
|
|
2379
|
+
export interface LegacyLayerPaintEvent {
|
|
2380
|
+
layerId(): number;
|
|
2381
|
+
event(): Paint;
|
|
2382
|
+
picture(): LegacyLayerPaintEventPicture | null;
|
|
2383
|
+
}
|
|
2384
|
+
export interface LegacyLayerPaintEventPicture {
|
|
2385
|
+
rect: number[];
|
|
2386
|
+
serializedPicture: string;
|
|
2387
|
+
}
|
|
2388
|
+
/** Same as `TraceEventTargetRundown` in `EnhancedTracesParser` */
|
|
2389
|
+
export interface RundownScriptCompiled extends Event {
|
|
2390
|
+
cat: 'disabled-by-default-devtools.target-rundown';
|
|
2391
|
+
name: SDK.EnhancedTracesParser.RundownScriptCompiled['name'];
|
|
2392
|
+
args: Args & {
|
|
2393
|
+
data?: SDK.EnhancedTracesParser.RundownScriptCompiled['args']['data'];
|
|
2394
|
+
};
|
|
2395
|
+
}
|
|
2396
|
+
export declare function isRundownScriptCompiled(event: Event): event is RundownScriptCompiled;
|
|
2397
|
+
/** Same as `TraceEventScriptRundown` in `EnhancedTracesParser` */
|
|
2398
|
+
export interface RundownScript extends Event {
|
|
2399
|
+
cat: 'disabled-by-default-devtools.v8-source-rundown';
|
|
2400
|
+
name: SDK.EnhancedTracesParser.RundownScript['name'];
|
|
2401
|
+
args: Args & {
|
|
2402
|
+
data: SDK.EnhancedTracesParser.RundownScript['args']['data'];
|
|
2403
|
+
};
|
|
2404
|
+
}
|
|
2405
|
+
export declare function isRundownScript(event: Event): event is RundownScript;
|
|
2406
|
+
/** Same as `TraceEventScriptRundownSource` in `EnhancedTracesParser` */
|
|
2407
|
+
export interface RundownScriptSource extends Event {
|
|
2408
|
+
cat: 'disabled-by-default-devtools.v8-source-rundown-sources';
|
|
2409
|
+
name: 'ScriptCatchup';
|
|
2410
|
+
args: Args & {
|
|
2411
|
+
data: SDK.EnhancedTracesParser.RundownScriptSource['args']['data'];
|
|
2412
|
+
};
|
|
2413
|
+
}
|
|
2414
|
+
export declare function isRundownScriptSource(event: Event): event is RundownScriptSource;
|
|
2415
|
+
export interface RundownScriptSourceLarge extends Event {
|
|
2416
|
+
cat: 'disabled-by-default-devtools.v8-source-rundown-sources';
|
|
2417
|
+
name: 'LargeScriptCatchup';
|
|
2418
|
+
args: Args & {
|
|
2419
|
+
data: {
|
|
2420
|
+
isolate: number;
|
|
2421
|
+
scriptId: number;
|
|
2422
|
+
splitIndex: number;
|
|
2423
|
+
splitCount: number;
|
|
2424
|
+
sourceText: string;
|
|
2425
|
+
};
|
|
2426
|
+
};
|
|
2427
|
+
}
|
|
2428
|
+
export declare function isRundownScriptSourceLarge(event: Event): event is RundownScriptSourceLarge;
|
|
2429
|
+
export interface RundownScriptStub extends Event {
|
|
2430
|
+
cat: 'disabled-by-default-devtools.v8-source-rundown-sources';
|
|
2431
|
+
name: 'StubScriptCatchup';
|
|
2432
|
+
args: Args & {
|
|
2433
|
+
data: {
|
|
2434
|
+
isolate: number;
|
|
2435
|
+
scriptId: number;
|
|
2436
|
+
};
|
|
2437
|
+
};
|
|
2438
|
+
}
|
|
2439
|
+
export declare function isAnyScriptSourceEvent(event: Event): event is RundownScriptSource | RundownScriptSourceLarge | RundownScriptStub;
|
|
2440
|
+
export interface PreloadRenderBlockingStatusChangeEvent extends Instant {
|
|
2441
|
+
name: Name.PRELOAD_RENDER_BLOCKING_STATUS_CHANGE;
|
|
2442
|
+
cat: 'devtools.timeline';
|
|
2443
|
+
args: Args & {
|
|
2444
|
+
data: {
|
|
2445
|
+
requestId: string;
|
|
2446
|
+
url: string;
|
|
2447
|
+
renderBlocking?: RenderBlocking;
|
|
2448
|
+
};
|
|
2449
|
+
};
|
|
2450
|
+
}
|
|
2451
|
+
export declare function isPreloadRenderBlockingStatusChangeEvent(event: Event): event is PreloadRenderBlockingStatusChangeEvent;
|
|
2452
|
+
export {};
|