chromium/third_party/blink/renderer/core/navigation_api/navigate_event.idl

// Copyright 2021 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

// https://wicg.github.io/navigation-api/
[
  Exposed=Window
] interface NavigateEvent : Event {
  [CallWith=ExecutionContext] constructor(DOMString type, NavigateEventInit eventInit);

  readonly attribute NavigationType navigationType;
  readonly attribute NavigationDestination destination;
  [ImplementedAs=canIntercept] readonly attribute boolean canTransition;
  readonly attribute boolean canIntercept;
  readonly attribute boolean userInitiated;
  readonly attribute boolean hashChange;
  readonly attribute AbortSignal signal;
  readonly attribute FormData? formData;
  readonly attribute DOMString? downloadRequest;
  readonly attribute any info;
  [RuntimeEnabled=HasUAVisualTransition] readonly attribute boolean hasUAVisualTransition;
  [RuntimeEnabled=NavigateEventSourceElement] readonly attribute Element? sourceElement;

  [RaisesException] void intercept(optional NavigationInterceptOptions options = {});
  [RaisesException, RuntimeEnabled=NavigateEventCommitBehavior] void commit();
  [RaisesException] void scroll();
};