content: package com.google.javascript.clutz;
  
  import com.google.common.collect.ImmutableMap;
  import com.google.common.collect.ImmutableSet;
  
  /**
   * There are many "platform" symbols, where Closure defines them in an externs file and TypeScript
   * defines them in a lib.d.ts file. When a Closure file references a platform type like HTMLElement
   * or platform global like encodeURIComponent, rather than referring to a type that Clutz derives
   * from the externs we'd rather it refer directly to the TypeScript type.
   *
   * <p>Note that doing this is not strictly correct (the two may have slightly different definitions)
   * but this is likely what users expect and it reduces the output size.
   *
   * <p>This class maintains all the metadata about these types; for example, Closure and TypeScript
   * have different names for the interface that is the 'style' property on an element, so this class
   * has a map from Closure name to TypeScript name.
   */
  public class PlatformSymbols {
    /**
     * Symbols that are mapped to a different specific name. E.g. on the JS side when it says
     * "CSSProperties", it's referring to the TypeScript type "CSSStyleDeclaration".
     */
    public static final ImmutableMap<String, String> CLOSURE_TO_TYPESCRIPT =
        new ImmutableMap.Builder<String, String>()
            .put("CSSProperties", "CSSStyleDeclaration")
            .put("IteratorIterable", "IterableIterator")
            .put("AsyncIteratorIterable", "AsyncIterableIterator")
            .put("Generator", "IterableIterator")
            .put("IArrayLike", "ArrayLike")
            .put("Arguments", "IArguments")
            .put("IThenable", "PromiseLike")
            .put("IIterableResult", "IteratorResult")
            .build();
  
    /** Closure symbols that are templatized in Closure but not in TypeScript. */
    public static final ImmutableSet<String> NOT_TEMPLATIZED_IN_TYPESCRIPT =
        new ImmutableSet.Builder<String>()
            .add("Arguments")
            .add("NodeList")
            .add("MessageEvent")
            .add("NamedNodeMap")
            .build();
  
    /**
     * List of global platform symbols that are redirected through an alias in closure.lib.d.ts. This
     * allows the following pattern to work:
     *
     * <pre>
     * namespace foo {
     *   class Error extends Error {}
     * }
     * </pre>
     *
     * by replacing the second Error with GlobalError.
     *
     * <p>Closure has internal "externs" for some global symbols:
     * https://github.com/google/closure-compiler/blob/master/src/com/google/javascript/rhino/jstype/JSTypeRegistry.java
     * Which will be emitted in each file that references them in partial mode. For example, using
     * Date in a file results in:
     *
     * <pre>
     * declare namespace ಠ_ಠ.clutz {
     *   class Date extends Date_Instance {
     *   }
     *   class Date_Instance {
     *     private noStructuralTyping_: any;
     *     constructor (a ? : any , b ? : any , c ? : any , d ? : any , e ? : any , f ? : any , g ? : any ) ;
     *   }
     * }
     * </pre>
     *
     * Adding a symbol to this list also suppresses the duplicate externs.
     */
    public static final ImmutableSet<String> GLOBAL_SYMBOL_ALIASES =
        ImmutableSet.of(
            "Date",
            "Element",
            "Error",
            "Event",
            "EventTarget",
            "Float32Array",
            "Float64Array",
            "Object",
            "Storage");
  
    /**
     * Set of symbols that are defined in a platform externs.js that we don't need a matching
     * TypeScript type for. We could in theory just let Clutz generate types for these, but in
     * practice no users have needed them yet and it saves file space. It should be safe to remove
     * entries from this list.
     */
    public static final ImmutableSet<String> CLOSURE_EXTERNS_NOT_USED_IN_TYPESCRIPT =
        ImmutableSet.of(
            "RegExpResult", // Add this back would be nontrivial, because of [Symbol.iterator].
            "AlphaFilter",
            "AlphaImageLoaderFilter",
            "AppBannerPromptOutcome",
            "Arguments",
            "AudioChannelMerger",
            "AudioChannelSplitter",
            "AudioContextOptions",
            "AudioGain",
            "AudioPannerNode",
            "AudioProcessEvent",
            "AudioSourceNode",
            "AudioWorker",
            "AudioWorkerGlobalScope",
            "AudioWorkerNode",
            "AudioWorkerNodeCreationEvent",
            "AudioWorkerNodeProcessor",
            "AudioWorkerParamDescriptor",
            "BaseAudioContext",
            "BatteryManager",
            "BeforeInstallPromptEvent",
            "BlobBuilder",
            "BoxObject",
            "CSSCharsetRule",
            "CSSInterface",
            "CSSMatrix",
            "CSSPrimitiveValue",
            "CSSUnknownRule",
            "CSSValue",
            "CSSValueList",
            "CallSite",
            "CanvasImageSource",
            "CanvasPixelArray",
            "CaretPosition",
            "ClientInformation",
            "ClipboardData",
            "ConnectionType",
            "ControlRange",
            "Counter",
            "DOMApplicationCache",
            "DOMConfiguration",
            "DOMErrorHandler",
            "DOMImplementationCSS",
            "DOMImplementationList",
            "DOMImplementationSource",
            "DOMLocator",
            "Database",
            "DatabaseCallback",
            "DocumentCSS",
            "DocumentRange",
            "DocumentStyle",
            "DragEventInit",
            "EffectiveConnectionType",
            "ElementCSSInlineStyle",
            "Entity",
            "EntityReference",
            "EventSource",
            "EventSourceInit",
            "ExceptionCode",
            "FetchRequestType",
            "FullscreenOptions",
            "FontFace",
            "FontFaceDescriptors",
            "FontFaceLoadStatus",
            "FontFaceSet",
            "FontFaceSetLoadStatus",
            "GeolocationCoordinates",
            "GeolocationPosition",
            "GeolocationPositionError",
            "GeolocationPositionOptions",
            "GestureEvent",
            "GetRootNodeOptions",
            "HTMLContentElement",
            "HTMLFilter",
            "HTMLFiltersCollection",
            "HTMLIsIndexElement",
            "HTMLMenuItemElement",
            "HTMLShadowElement",
            "IArrayLike",
            "IDBKeyType",
            "IDBVersionChangeEventInit",
            "IIterableResult",
            "IObject",
            "ITemplateArray",
            "IThenable",
            "IceCandidate",
            "IdleCallbackOptions",
            "IdleDeadline",
            "ImageCapture",
            "InputDeviceCapabilities",
            "InputEvent",
            "InputEventInit",
            "InstallEvent",
            "InstallEventInit",
            "IteratorIterable",
            "JSONType",
            "JavaScriptAudioNode",
            "LocalFileSystem",
            "MIDIAccess",
            "MIDIConnectionEvent",
            "MIDIConnectionEventInit",
            "MIDIInput",
            "MIDIInputMap",
            "MIDIMessageEvent",
            "MIDIMessageEventInit",
            "MIDIOptions",
            "MIDIOutput",
            "MIDIOutputMap",
            "MIDIPort",
            "MSCSSMatrix",
            "MSPointerPoint",
            "MediaConstraintSet_",
            "MediaConstraintSetInterface_",
            "MediaConstraints",
            "MediaConstraintsInterface_",
            "MediaRecorder",
            "MediaRecorderOptions",
            "MediaSettingsRange",
            "MediaStreamAudioDestinationNode",
            "Megabit",
            "MemoryInfo",
            "MessageEventSource",
            "MidiPermissionDescriptor",
            "Millisecond",
            "NameList",
            "NavigationPreloadManager",
            "NavigationPreloadState",
            "NavigatorUserMediaError",
            "NetworkInformation",
            "NonDocumentTypeChildNode",
            "Notation",
            "NotificationAction",
            "NotificationCenter",
            "NotificationOptionsInterface_",
            "OES_depth_texture",
            "OES_vertex_array_object",
            "ObjectPropertyDescriptor",
            "PerformanceLongTaskTiming",
            "PerformanceObserver",
            "PerformanceObserverCallback",
            "PerformanceObserverEntryList",
            "PerformanceObserverInit",
            "PermissionDescriptor",
            "PermissionName",
            "PermissionState",
            "PermissionStatus",
            "Permissions",
            "PhotoCapabilities",
            "PhotoSettings",
            "PipeOptions",
            "PromptResponseObject",
            "PushPermissionDescriptor",
            "QueuingStrategy",
            "QueuingStrategy",
            "RGBColor",
            "RTCCertificate",
            "RTCConfigurationInterface_",
            "RTCConfigurationRecord_",
            "RTCDTMFSender",
            "RTCDataChannel",
            "RTCDataChannelEvent",
            "RTCDataChannelInit",
            "RTCDataChannelInitDictionary_",
            "RTCDataChannelInitInterface_",
            "RTCDataChannelInitRecord_",
            "RTCIceServerInterface_",
            "RTCIceServerRecord_",
            "RTCRtpTransceiver",
            "RTCStatsElement",
            "RTCStatsResponse",
            "RTCStreamStats",
            "RTCTrackEvent",
            "RTCVoidCallback",
            "RadioNodeList",
            "RangeException",
            "RealtimeAnalyserNode",
            "Rect",
            "RelatedEvent",
            "ResponseBodyInit",
            "RuntimeObject",
            "SQLError",
            "SQLResultSet",
            "SQLResultSetRowList",
            "SQLStatementCallback",
            "SQLTransaction",
            "ScreenOrientation",
            "ScriptEngine",
            "ScriptEngineBuildVersion",
            "ScriptEngineMajorVersion",
            "ScriptEngineMinorVersion",
            "ScriptProfile",
            "ScriptProfileNode",
            "ServiceWorkerClient",
            "ServiceWorkerClientQueryOptions",
            "ServiceWorkerClients",
            "SharedWorker",
            "SharedWorkerGlobalScope",
            "SourceInfo",
            "SpatialListener",
            "SpatialPannerNode",
            "StorageInfo",
            "StorageQuota",
            "TaskAttributionTiming",
            "TexImageSource",
            "TextDecoder",
            "TextEncoder",
            "TextRange",
            "Thenable",
            "TouchInitDict",
            "TransformStream",
            "TraversalDocument",
            "TypeInfo",
            "TypedArray",
            "UserDataHandler",
            "UserMessageHandler",
            "UserMessageHandlersNamespace",
            "VTTCue",
            "VTTRegion",
            "VibratePattern",
            "ViewCSS",
            "VisualViewport",
            "WEBGL_debug_shaders",
            "WEBGL_draw_buffers",
            "WEBGL_lose_context",
            "WaveTable",
            "WebGLVertexArrayObjectOES",
            "WebKitAnimationEvent",
            "WebKitBlobBuilder",
            "WebKitNamespace",
            "WebWorker",
            "WorkerOptions",
            "WorkerPerformance",
            "XDomainRequest",
            "XMLDOMDocument",
            "XPathException",
            "XPathNamespace",
            "args",
            "arguments",
            "arrayLike",
            "cancelIdleCallback",
            "cancelRequestAnimationFrame",
            "controlRange",
            "createObjectURL",
            "dump",
            "escape",
            "hasOwnProperty",
            "mozCancelAnimationFrame",
            "mozCancelRequestAnimationFrame",
            "mozRequestAnimationFrame",
            "msCancelAnimationFrame",
            "msCancelRequestAnimationFrame",
            "msRequestAnimationFrame",
            "nsIDOMPageTransitionEvent",
            "oCancelAnimationFrame",
            "oCancelRequestAnimationFrame",
            "oRequestAnimationFrame",
            "openDatabase",
            "opera",
            "requestFileSystem",
            "requestIdleCallback",
            "resolveLocalFileSystemURI",
            "revokeObjectURL",
            "symbol",
            "thenable",
            "undefined",
            "unescape",
            "visualViewport",
            "WebGL2RenderingContext",
            "WebGLQuery",
            "WebGLSampler",
            "WebGLSync",
            "WebGLTransformFeedback",
            "WebGLVertexArrayObject",
            "webCrypto",
            "webkit",
            "webkitAudioContext",
            "webkitAudioPannerNode",
            "webkitCancelRequestAnimationFrame",
            "webkitIDBCursor",
            "webkitIDBKeyRange",
            "webkitIDBRequest",
            "webkitIDBTransaction",
            "webkitIDBVersionChangeEvent",
            "webkitMediaStream",
            "webkitOfflineAudioContext",
            "webkitPannerNode",
            "webkitRequestFileSystem",
            "webkitResolveLocalFileSystemURI",
            "webkitURL");
  
    /**
     * Set of all symbols exposed by TypeScript's lib.*.d.ts. We can maintain this by hand but the
     * initial list was generated by https://gist.github.com/evmar/54461d7fb2a491955c1e82ae5b656c22
     */
    public static final ImmutableSet<String> TYPESCRIPT_LIB_D_TS =
        ImmutableSet.of(
            "AAGUID",
            "ANGLE_instanced_arrays",
            "AbstractWorker",
            "AbstractWorkerEventMap",
            "Account",
            "ActiveXObject",
            "AddEventListenerOptions",
            "AesCbcParams",
            "AesCfbParams",
            "AesCmacParams",
            "AesCtrParams",
            "AesDerivedKeyParams",
            "AesGcmParams",
            "AesKeyAlgorithm",
            "AesKeyGenParams",
            "Algorithm",
            "AlgorithmIdentifier",
            "AnalyserNode",
            "AnimationEvent",
            "AnimationEventInit",
            "AppendMode",
            "ApplicationCache",
            "ApplicationCacheEventMap",
            "Array",
            "ArrayBuffer",
            "ArrayBufferConstructor",
            "ArrayBufferLike",
            "ArrayBufferTypes",
            "ArrayBufferView",
            "ArrayConstructor",
            "ArrayLike",
            "AssertionOptions",
            "AssignedNodesOptions",
            "AsyncGenerator",
            "AsyncIterable",
            "AsyncIterableIterator",
            "AsyncIterator",
            "Atomics",
            "Attr",
            "Audio",
            "AudioBuffer",
            "AudioBufferSourceNode",
            "AudioBufferSourceNodeEventMap",
            "AudioContext",
            "AudioContextBase",
            "AudioContextEventMap",
            "AudioContextState",
            "AudioDestinationNode",
            "AudioListener",
            "AudioNode",
            "AudioParam",
            "AudioProcessingEvent",
            "AudioTrack",
            "AudioTrackList",
            "AudioTrackListEventMap",
            "BarProp",
            "BeforeUnloadEvent",
            "BiquadFilterNode",
            "BiquadFilterType",
            "Blob",
            "BlobPropertyBag",
            "Body",
            "BodyInit",
            "Boolean",
            "BooleanConstructor",
            "BroadcastChannel",
            "BroadcastChannelEventMap",
            "BufferSource",
            "ByteString",
            "CDATASection",
            "CSS",
            "CSSConditionRule",
            "CSSFontFaceRule",
            "CSSGroupingRule",
            "CSSImportRule",
            "CSSKeyframeRule",
            "CSSKeyframesRule",
            "CSSMediaRule",
            "CSSNamespaceRule",
            "CSSPageRule",
            "CSSRule",
            "CSSRuleList",
            "CSSStyleDeclaration",
            "CSSStyleRule",
            "CSSStyleSheet",
            "CSSSupportsRule",
            "Cache",
            "CacheQueryOptions",
            "CacheStorage",
            "Canvas2DContextAttributes",
            "CanvasFillRule",
            "CanvasGradient",
            "CanvasPattern",
            "CanvasRenderingContext2D",
            "ChannelCountMode",
            "ChannelInterpretation",
            "ChannelMergerNode",
            "ChannelSplitterNode",
            "CharacterData",
            "ChildNode",
            "ClassDecorator",
            "Client",
            "ClientData",
            "ClientQueryOptions",
            "ClientRect",
            "ClientRectList",
            "ClientType",
            "Clients",
            "ClipboardEvent",
            "ClipboardEventInit",
            "CloseEvent",
            "CloseEventInit",
            "Comment",
            "CompositionEvent",
            "CompositionEventInit",
            "ConcatParams",
            "ConfirmSiteSpecificExceptionsInformation",
            "Console",
            "ConstrainBoolean",
            "ConstrainBooleanParameters",
            "ConstrainDOMString",
            "ConstrainDOMStringParameters",
            "ConstrainDouble",
            "ConstrainDoubleRange",
            "ConstrainLong",
            "ConstrainLongRange",
            "ConstrainVideoFacingModeParameters",
            "ConvolverNode",
            "Coordinates",
            "Crypto",
            "CryptoKey",
            "CryptoKeyPair",
            "CryptoOperationData",
            "CustomElementRegistry",
            "CustomEvent",
            "CustomEventInit",
            "DOMError",
            "DOMException",
            "DOMImplementation",
            "DOML2DeprecatedColorProperty",
            "DOML2DeprecatedSizeProperty",
            "DOMParser",
            "DOMRect",
            "DOMRectInit",
            "DOMRectReadOnly",
            "DOMSettableTokenList",
            "DOMStringList",
            "DOMStringMap",
            "DOMTokenList",
            "DataCue",
            "DataTransfer",
            "DataTransferItem",
            "DataTransferItemList",
            "DataView",
            "DataViewConstructor",
            "Date",
            "DateConstructor",
            "DateTimeFormat",
            "DateTimeFormatPart",
            "DateTimeFormatPartTypes",
            "DecodeErrorCallback",
            "DecodeSuccessCallback",
            "DedicatedWorkerGlobalScope",
            "DedicatedWorkerGlobalScopeEventMap",
            "DeferredPermissionRequest",
            "DelayNode",
            "DeviceAcceleration",
            "DeviceAccelerationDict",
            "DeviceLightEvent",
            "DeviceLightEventInit",
            "DeviceMotionEvent",
            "DeviceMotionEventInit",
            "DeviceOrientationEvent",
            "DeviceOrientationEventInit",
            "DeviceRotationRate",
            "DeviceRotationRateDict",
            "DhImportKeyParams",
            "DhKeyAlgorithm",
            "DhKeyDeriveParams",
            "DhKeyGenParams",
            "DistanceModelType",
            "Document",
            "DocumentEvent",
            "DocumentEventMap",
            "DocumentFragment",
            "DocumentOrShadowRoot",
            "DocumentType",
            "DoubleRange",
            "DragEvent",
            "DynamicsCompressorNode",
            "EXT_frag_depth",
            "EXT_texture_filter_anisotropic",
            "EcKeyAlgorithm",
            "EcKeyGenParams",
            "EcKeyImportParams",
            "EcdhKeyDeriveParams",
            "EcdsaParams",
            "Element",
            "ElementDefinitionOptions",
            "ElementEventMap",
            "ElementListTagNameMap",
            "ElementTagNameMap",
            "ElementTraversal",
            "Enumerator",
            "EnumeratorConstructor",
            "Error",
            "ErrorConstructor",
            "ErrorEvent",
            "ErrorEventHandler",
            "ErrorEventInit",
            "EvalError",
            "EvalErrorConstructor",
            "Event",
            "EventInit",
            "EventListener",
            "EventListenerObject",
            "EventListenerOptions",
            "EventListenerOrEventListenerObject",
            "EventModifierInit",
            "EventTarget",
            "ExceptionInformation",
            "ExpandGranularity",
            "ExtendableEvent",
            "ExtendableEventInit",
            "ExtendableMessageEvent",
            "ExtendableMessageEventInit",
            "ExtensionScriptApis",
            "External",
            "FetchEvent",
            "FetchEventInit",
            "File",
            "FileList",
            "FilePropertyBag",
            "FileReader",
            "FileReaderSync",
            "Float32Array",
            "Float32ArrayConstructor",
            "Float64Array",
            "Float64ArrayConstructor",
            "FocusEvent",
            "FocusEventInit",
            "FocusNavigationEvent",
            "FocusNavigationEventInit",
            "FocusNavigationOrigin",
            "ForEachCallback",
            "FormData",
            "FormDataEntryValue",
            "FrameRequestCallback",
            "FrameType",
            "Function",
            "FunctionConstructor",
            "FunctionStringCallback",
            "GLbitfield",
            "GLboolean",
            "GLbyte",
            "GLclampf",
            "GLenum",
            "GLfloat",
            "GLint",
            "GLintptr",
            "GLshort",
            "GLsizei",
            "GLsizeiptr",
            "GLubyte",
            "GLuint",
            "GLushort",
            "GainNode",
            "Gamepad",
            "GamepadButton",
            "GamepadEvent",
            "GamepadEventInit",
            "GamepadInputEmulationType",
            "Generator",
            "GeneratorFunction",
            "GeneratorFunctionConstructor",
            "Geolocation",
            "GetNotificationOptions",
            "GetSVGDocument",
            "GlobalEventHandlers",
            "GlobalEventHandlersEventMap",
            "GlobalFetch",
            "HTMLAllCollection",
            "HTMLAnchorElement",
            "HTMLAppletElement",
            "HTMLAreaElement",
            "HTMLAreasCollection",
            "HTMLAudioElement",
            "HTMLBRElement",
            "HTMLBaseElement",
            "HTMLBaseFontElement",
            "HTMLBodyElement",
            "HTMLBodyElementEventMap",
            "HTMLButtonElement",
            "HTMLCanvasElement",
            "HTMLCollection",
            "HTMLCollectionBase",
            "HTMLCollectionOf",
            "HTMLDListElement",
            "HTMLDataElement",
            "HTMLDataListElement",
            "HTMLDetailsElement",
            "HTMLDialogElement",
            "HTMLDirectoryElement",
            "HTMLDivElement",
            "HTMLDocument",
            "HTMLElement",
            "HTMLElementEventMap",
            "HTMLElementTagNameMap",
            "HTMLEmbedElement",
            "HTMLFieldSetElement",
            "HTMLFontElement",
            "HTMLFormControlsCollection",
            "HTMLFormElement",
            "HTMLFrameElement",
            "HTMLFrameElementEventMap",
            "HTMLFrameSetElement",
            "HTMLFrameSetElementEventMap",
            "HTMLHRElement",
            "HTMLHeadElement",
            "HTMLHeadingElement",
            "HTMLHtmlElement",
            "HTMLIFrameElement",
            "HTMLIFrameElementEventMap",
            "HTMLImageElement",
            "HTMLInputElement",
            "HTMLLIElement",
            "HTMLLabelElement",
            "HTMLLegendElement",
            "HTMLLinkElement",
            "HTMLMainElement",
            "HTMLMapElement",
            "HTMLMarqueeElement",
            "HTMLMarqueeElementEventMap",
            "HTMLMediaElement",
            "HTMLMediaElementEventMap",
            "HTMLMenuElement",
            "HTMLMetaElement",
            "HTMLMeterElement",
            "HTMLModElement",
            "HTMLOListElement",
            "HTMLObjectElement",
            "HTMLOptGroupElement",
            "HTMLOptionElement",
            "HTMLOptionsCollection",
            "HTMLOutputElement",
            "HTMLParagraphElement",
            "HTMLParamElement",
            "HTMLPictureElement",
            "HTMLPreElement",
            "HTMLProgressElement",
            "HTMLQuoteElement",
            "HTMLScriptElement",
            "HTMLSelectElement",
            "HTMLSlotElement",
            "HTMLSourceElement",
            "HTMLSpanElement",
            "HTMLStyleElement",
            "HTMLSummaryElement",
            "HTMLTableAlignment",
            "HTMLTableCaptionElement",
            "HTMLTableCellElement",
            "HTMLTableColElement",
            "HTMLTableDataCellElement",
            "HTMLTableElement",
            "HTMLTableHeaderCellElement",
            "HTMLTableRowElement",
            "HTMLTableSectionElement",
            "HTMLTemplateElement",
            "HTMLTextAreaElement",
            "HTMLTimeElement",
            "HTMLTitleElement",
            "HTMLTrackElement",
            "HTMLUListElement",
            "HTMLUnknownElement",
            "HTMLVideoElement",
            "HTMLVideoElementEventMap",
            "HashChangeEvent",
            "HashChangeEventInit",
            "Headers",
            "HeadersInit",
            "History",
            "HkdfCtrParams",
            "HmacImportParams",
            "HmacKeyAlgorithm",
            "HmacKeyGenParams",
            "IArguments",
            "IDBArrayKey",
            "IDBCursor",
            "IDBCursorDirection",
            "IDBCursorWithValue",
            "IDBDatabase",
            "IDBDatabaseEventMap",
            "IDBEnvironment",
            "IDBFactory",
            "IDBIndex",
            "IDBIndexParameters",
            "IDBKeyPath",
            "IDBKeyRange",
            "IDBObjectStore",
            "IDBObjectStoreParameters",
            "IDBOpenDBRequest",
            "IDBOpenDBRequestEventMap",
            "IDBRequest",
            "IDBRequestEventMap",
            "IDBRequestReadyState",
            "IDBTransaction",
            "IDBTransactionEventMap",
            "IDBTransactionMode",
            "IDBValidKey",
            "IDBVersionChangeEvent",
            "IIRFilterNode",
            "ITextWriter",
            "Image",
            "ImageBitmap",
            "ImageBitmapOptions",
            "ImageData",
            "Infinity",
            "InsertPosition",
            "Int16Array",
            "Int16ArrayConstructor",
            "Int32Array",
            "Int32ArrayConstructor",
            "Int8Array",
            "Int8ArrayConstructor",
            "IntersectionObserver",
            "IntersectionObserverCallback",
            "IntersectionObserverEntry",
            "IntersectionObserverEntryInit",
            "IntersectionObserverInit",
            "Intl",
            "Iterable",
            "IterableIterator",
            "Iterator",
            "IteratorResult",
            "JSON",
            "JsonWebKey",
            "KeyAlgorithm",
            "KeyFormat",
            "KeyType",
            "KeyUsage",
            "KeyboardEvent",
            "KeyboardEventInit",
            "LinkStyle",
            "ListeningState",
            "ListeningStateChangedEvent",
            "Location",
            "LongRange",
            "LongRunningScriptDetectedEvent",
            "MSAccountInfo",
            "MSApp",
            "MSAppAsyncOperation",
            "MSAppAsyncOperationEventMap",
            "MSAssertion",
            "MSAudioLocalClientEvent",
            "MSAudioRecvPayload",
            "MSAudioRecvSignal",
            "MSAudioSendPayload",
            "MSAudioSendSignal",
            "MSBaseReader",
            "MSBaseReaderEventMap",
            "MSBlobBuilder",
            "MSConnectivity",
            "MSCredentialFilter",
            "MSCredentialParameters",
            "MSCredentialSpec",
            "MSCredentialType",
            "MSCredentials",
            "MSDelay",
            "MSDescription",
            "MSExecAtPriorityFunctionCallback",
            "MSFIDOCredentialAssertion",
            "MSFIDOCredentialParameters",
            "MSFIDOSignature",
            "MSFIDOSignatureAssertion",
            "MSFileSaver",
            "MSGesture",
            "MSGestureEvent",
            "MSGraphicsTrust",
            "MSHTMLWebViewElement",
            "MSIPAddressInfo",
            "MSIceAddrType",
            "MSIceType",
            "MSIceWarningFlags",
            "MSInboundPayload",
            "MSInputMethodContext",
            "MSInputMethodContextEventMap",
            "MSJitter",
            "MSLaunchUriCallback",
            "MSLocalClientEvent",
            "MSLocalClientEventBase",
            "MSManipulationEvent",
            "MSMediaKeyError",
            "MSMediaKeyMessageEvent",
            "MSMediaKeyNeededEvent",
            "MSMediaKeySession",
            "MSMediaKeys",
            "MSNavigatorDoNotTrack",
            "MSNetwork",
            "MSNetworkConnectivityInfo",
            "MSNetworkInterfaceType",
            "MSOutboundNetwork",
            "MSOutboundPayload",
            "MSPacketLoss",
            "MSPayloadBase",
            "MSPointerEvent",
            "MSPortRange",
            "MSRangeCollection",
            "MSRelayAddress",
            "MSSignatureParameters",
            "MSSiteModeEvent",
            "MSStatsType",
            "MSStream",
            "MSStreamReader",
            "MSTransportDiagnosticsStats",
            "MSTransportType",
            "MSUnsafeFunctionCallback",
            "MSUtilization",
            "MSVideoPayload",
            "MSVideoRecvPayload",
            "MSVideoResolutionDistribution",
            "MSVideoSendPayload",
            "MSWebViewAsyncOperation",
            "MSWebViewAsyncOperationEventMap",
            "MSWebViewPermissionState",
            "MSWebViewPermissionType",
            "MSWebViewSettings",
            "Map",
            "MapConstructor",
            "Math",
            "MediaDeviceInfo",
            "MediaDeviceKind",
            "MediaDevices",
            "MediaDevicesEventMap",
            "MediaElementAudioSourceNode",
            "MediaEncryptedEvent",
            "MediaEncryptedEventInit",
            "MediaError",
            "MediaKeyMessageEvent",
            "MediaKeyMessageEventInit",
            "MediaKeyMessageType",
            "MediaKeySession",
            "MediaKeySessionType",
            "MediaKeyStatus",
            "MediaKeyStatusMap",
            "MediaKeySystemAccess",
            "MediaKeySystemConfiguration",
            "MediaKeySystemMediaCapability",
            "MediaKeys",
            "MediaKeysRequirement",
            "MediaList",
            "MediaQueryList",
            "MediaQueryListListener",
            "MediaSource",
            "MediaStream",
            "MediaStreamAudioSourceNode",
            "MediaStreamConstraints",
            "MediaStreamError",
            "MediaStreamErrorEvent",
            "MediaStreamErrorEventInit",
            "MediaStreamEvent",
            "MediaStreamEventInit",
            "MediaStreamEventMap",
            "MediaStreamTrack",
            "MediaStreamTrackEvent",
            "MediaStreamTrackEventInit",
            "MediaStreamTrackEventMap",
            "MediaStreamTrackState",
            "MediaTrackCapabilities",
            "MediaTrackConstraintSet",
            "MediaTrackConstraints",
            "MediaTrackSettings",
            "MediaTrackSupportedConstraints",
            "MessageChannel",
            "MessageEvent",
            "MessageEventInit",
            "MessagePort",
            "MessagePortEventMap",
            "MethodDecorator",
            "MimeType",
            "MimeTypeArray",
            "MouseEvent",
            "MouseEventInit",
            "MouseWheelEvent",
            "MsZoomToOptions",
            "MutationCallback",
            "MutationEvent",
            "MutationObserver",
            "MutationObserverInit",
            "MutationRecord",
            "NaN",
            "NamedNodeMap",
            "NavigationCompletedEvent",
            "NavigationEvent",
            "NavigationEventWithReferrer",
            "NavigationReason",
            "NavigationType",
            "Navigator",
            "NavigatorBeacon",
            "NavigatorConcurrentHardware",
            "NavigatorContentUtils",
            "NavigatorGeolocation",
            "NavigatorID",
            "NavigatorOnLine",
            "NavigatorStorageUtils",
            "NavigatorUserMedia",
            "NavigatorUserMediaErrorCallback",
            "NavigatorUserMediaSuccessCallback",
            "Node",
            "NodeFilter",
            "NodeIterator",
            "NodeList",
            "NodeListOf",
            "NodeSelector",
            "Notification",
            "NotificationDirection",
            "NotificationEvent",
            "NotificationEventInit",
            "NotificationEventMap",
            "NotificationOptions",
            "NotificationPermission",
            "NotificationPermissionCallback",
            "Number",
            "NumberConstructor",
            "OES_element_index_uint",
            "OES_standard_derivatives",
            "OES_texture_float",
            "OES_texture_float_linear",
            "OES_texture_half_float",
            "OES_texture_half_float_linear",
            "Object",
            "ObjectConstructor",
            "ObjectURLOptions",
            "OfflineAudioCompletionEvent",
            "OfflineAudioContext",
            "OfflineAudioContextEventMap",
            "Option",
            "OscillatorNode",
            "OscillatorNodeEventMap",
            "OscillatorType",
            "OverSampleType",
            "OverflowEvent",
            "PageTransitionEvent",
            "PannerNode",
            "PanningModelType",
            "ParameterDecorator",
            "ParentNode",
            "Partial",
            "Path2D",
            "PaymentAddress",
            "PaymentComplete",
            "PaymentCurrencyAmount",
            "PaymentDetails",
            "PaymentDetailsModifier",
            "PaymentItem",
            "PaymentMethodData",
            "PaymentOptions",
            "PaymentRequest",
            "PaymentRequestEventMap",
            "PaymentRequestUpdateEvent",
            "PaymentRequestUpdateEventInit",
            "PaymentResponse",
            "PaymentShippingOption",
            "PaymentShippingType",
            "Pbkdf2Params",
            "PerfWidgetExternal",
            "Performance",
            "PerformanceEntry",
            "PerformanceMark",
            "PerformanceMeasure",
            "PerformanceNavigation",
            "PerformanceNavigationTiming",
            "PerformanceResourceTiming",
            "PerformanceTiming",
            "PeriodicWave",
            "PeriodicWaveConstraints",
            "PermissionRequest",
            "PermissionRequestedEvent",
            "Pick",
            "Plugin",
            "PluginArray",
            "PointerEvent",
            "PointerEventInit",
            "PopStateEvent",
            "PopStateEventInit",
            "Position",
            "PositionCallback",
            "PositionError",
            "PositionErrorCallback",
            "PositionOptions",
            "ProcessingInstruction",
            "ProgressEvent",
            "ProgressEventInit",
            "Promise",
            "PromiseConstructor",
            "PromiseConstructorLike",
            "PromiseLike",
            "PromiseRejectionEvent",
            "PromiseRejectionEventInit",
            "PropertyDecorator",
            "PropertyDescriptor",
            "PropertyDescriptorMap",
            "PropertyKey",
            "Proxy",
            "ProxyConstructor",
            "ProxyHandler",
            "PushEncryptionKeyName",
            "PushEvent",
            "PushEventInit",
            "PushManager",
            "PushMessageData",
            "PushPermissionState",
            "PushSubscription",
            "PushSubscriptionOptions",
            "PushSubscriptionOptionsInit",
            "RTCBundlePolicy",
            "RTCConfiguration",
            "RTCDTMFToneChangeEvent",
            "RTCDTMFToneChangeEventInit",
            "RTCDegradationPreference",
            "RTCDtlsFingerprint",
            "RTCDtlsParameters",
            "RTCDtlsRole",
            "RTCDtlsTransport",
            "RTCDtlsTransportEventMap",
            "RTCDtlsTransportState",
            "RTCDtlsTransportStateChangedEvent",
            "RTCDtmfSender",
            "RTCDtmfSenderEventMap",
            "RTCIceCandidate",
            "RTCIceCandidateAttributes",
            "RTCIceCandidateComplete",
            "RTCIceCandidateDictionary",
            "RTCIceCandidateInit",
            "RTCIceCandidatePair",
            "RTCIceCandidatePairChangedEvent",
            "RTCIceCandidatePairStats",
            "RTCIceCandidateType",
            "RTCIceComponent",
            "RTCIceConnectionState",
            "RTCIceGatherCandidate",
            "RTCIceGatherOptions",
            "RTCIceGatherPolicy",
            "RTCIceGatherer",
            "RTCIceGathererEvent",
            "RTCIceGathererEventMap",
            "RTCIceGathererState",
            "RTCIceGatheringState",
            "RTCIceParameters",
            "RTCIceProtocol",
            "RTCIceRole",
            "RTCIceServer",
            "RTCIceTcpCandidateType",
            "RTCIceTransport",
            "RTCIceTransportEventMap",
            "RTCIceTransportPolicy",
            "RTCIceTransportState",
            "RTCIceTransportStateChangedEvent",
            "RTCInboundRTPStreamStats",
            "RTCMediaStreamTrackStats",
            "RTCOfferOptions",
            "RTCOutboundRTPStreamStats",
            "RTCPeerConnection",
            "RTCPeerConnectionErrorCallback",
            "RTCPeerConnectionEventMap",
            "RTCPeerConnectionIceEvent",
            "RTCPeerConnectionIceEventInit",
            "RTCRTPStreamStats",
            "RTCRtcpFeedback",
            "RTCRtcpParameters",
            "RTCRtpCapabilities",
            "RTCRtpCodecCapability",
            "RTCRtpCodecParameters",
            "RTCRtpContributingSource",
            "RTCRtpEncodingParameters",
            "RTCRtpFecParameters",
            "RTCRtpHeaderExtension",
            "RTCRtpHeaderExtensionParameters",
            "RTCRtpParameters",
            "RTCRtpReceiver",
            "RTCRtpReceiverEventMap",
            "RTCRtpRtxParameters",
            "RTCRtpSender",
            "RTCRtpSenderEventMap",
            "RTCRtpUnhandled",
            "RTCSdpType",
            "RTCSessionDescription",
            "RTCSessionDescriptionCallback",
            "RTCSessionDescriptionInit",
            "RTCSignalingState",
            "RTCSrtpKeyParam",
            "RTCSrtpSdesParameters",
            "RTCSrtpSdesTransport",
            "RTCSrtpSdesTransportEventMap",
            "RTCSsrcConflictEvent",
            "RTCSsrcRange",
            "RTCStats",
            "RTCStatsCallback",
            "RTCStatsIceCandidatePairState",
            "RTCStatsIceCandidateType",
            "RTCStatsProvider",
            "RTCStatsReport",
            "RTCStatsType",
            "RTCTransport",
            "RTCTransportStats",
            "RandomSource",
            "Range",
            "RangeError",
            "RangeErrorConstructor",
            "ReadableStream",
            "ReadableStreamReader",
            "Readonly",
            "ReadonlyArray",
            "ReadonlyMap",
            "ReadonlySet",
            "Record",
            "ReferenceError",
            "ReferenceErrorConstructor",
            "ReferrerPolicy",
            "Reflect",
            "RegExp",
            "RegExpConstructor",
            "RegExpExecArray",
            "RegExpMatchArray",
            "RegistrationOptions",
            "Request",
            "RequestCache",
            "RequestCredentials",
            "RequestDestination",
            "RequestInfo",
            "RequestInit",
            "RequestMode",
            "RequestRedirect",
            "RequestType",
            "Response",
            "ResponseInit",
            "ResponseType",
            "RsaHashedImportParams",
            "RsaHashedKeyAlgorithm",
            "RsaHashedKeyGenParams",
            "RsaKeyAlgorithm",
            "RsaKeyGenParams",
            "RsaOaepParams",
            "RsaOtherPrimesInfo",
            "RsaPssParams",
            "SVGAElement",
            "SVGAngle",
            "SVGAnimatedAngle",
            "SVGAnimatedBoolean",
            "SVGAnimatedEnumeration",
            "SVGAnimatedInteger",
            "SVGAnimatedLength",
            "SVGAnimatedLengthList",
            "SVGAnimatedNumber",
            "SVGAnimatedNumberList",
            "SVGAnimatedPoints",
            "SVGAnimatedPreserveAspectRatio",
            "SVGAnimatedRect",
            "SVGAnimatedString",
            "SVGAnimatedTransformList",
            "SVGCircleElement",
            "SVGClipPathElement",
            "SVGComponentTransferFunctionElement",
            "SVGDefsElement",
            "SVGDescElement",
            "SVGElement",
            "SVGElementEventMap",
            "SVGElementInstance",
            "SVGElementInstanceList",
            "SVGEllipseElement",
            "SVGFEBlendElement",
            "SVGFEColorMatrixElement",
            "SVGFEComponentTransferElement",
            "SVGFECompositeElement",
            "SVGFEConvolveMatrixElement",
            "SVGFEDiffuseLightingElement",
            "SVGFEDisplacementMapElement",
            "SVGFEDistantLightElement",
            "SVGFEFloodElement",
            "SVGFEFuncAElement",
            "SVGFEFuncBElement",
            "SVGFEFuncGElement",
            "SVGFEFuncRElement",
            "SVGFEGaussianBlurElement",
            "SVGFEImageElement",
            "SVGFEMergeElement",
            "SVGFEMergeNodeElement",
            "SVGFEMorphologyElement",
            "SVGFEOffsetElement",
            "SVGFEPointLightElement",
            "SVGFESpecularLightingElement",
            "SVGFESpotLightElement",
            "SVGFETileElement",
            "SVGFETurbulenceElement",
            "SVGFilterElement",
            "SVGFilterPrimitiveStandardAttributes",
            "SVGFitToViewBox",
            "SVGForeignObjectElement",
            "SVGGElement",
            "SVGGradientElement",
            "SVGGraphicsElement",
            "SVGImageElement",
            "SVGLength",
            "SVGLengthList",
            "SVGLineElement",
            "SVGLinearGradientElement",
            "SVGMarkerElement",
            "SVGMaskElement",
            "SVGMatrix",
            "SVGMetadataElement",
            "SVGNumber",
            "SVGNumberList",
            "SVGPathElement",
            "SVGPathSeg",
            "SVGPathSegArcAbs",
            "SVGPathSegArcRel",
            "SVGPathSegClosePath",
            "SVGPathSegCurvetoCubicAbs",
            "SVGPathSegCurvetoCubicRel",
            "SVGPathSegCurvetoCubicSmoothAbs",
            "SVGPathSegCurvetoCubicSmoothRel",
            "SVGPathSegCurvetoQuadraticAbs",
            "SVGPathSegCurvetoQuadraticRel",
            "SVGPathSegCurvetoQuadraticSmoothAbs",
            "SVGPathSegCurvetoQuadraticSmoothRel",
            "SVGPathSegLinetoAbs",
            "SVGPathSegLinetoHorizontalAbs",
            "SVGPathSegLinetoHorizontalRel",
            "SVGPathSegLinetoRel",
            "SVGPathSegLinetoVerticalAbs",
            "SVGPathSegLinetoVerticalRel",
            "SVGPathSegList",
            "SVGPathSegMovetoAbs",
            "SVGPathSegMovetoRel",
            "SVGPatternElement",
            "SVGPoint",
            "SVGPointList",
            "SVGPolygonElement",
            "SVGPolylineElement",
            "SVGPreserveAspectRatio",
            "SVGRadialGradientElement",
            "SVGRect",
            "SVGRectElement",
            "SVGSVGElement",
            "SVGSVGElementEventMap",
            "SVGScriptElement",
            "SVGStopElement",
            "SVGStringList",
            "SVGStyleElement",
            "SVGSwitchElement",
            "SVGSymbolElement",
            "SVGTSpanElement",
            "SVGTests",
            "SVGTextContentElement",
            "SVGTextElement",
            "SVGTextPathElement",
            "SVGTextPositioningElement",
            "SVGTitleElement",
            "SVGTransform",
            "SVGTransformList",
            "SVGURIReference",
            "SVGUnitTypes",
            "SVGUseElement",
            "SVGViewElement",
            "SVGZoomAndPan",
            "SVGZoomEvent",
            "ScopedCredential",
            "ScopedCredentialDescriptor",
            "ScopedCredentialInfo",
            "ScopedCredentialOptions",
            "ScopedCredentialParameters",
            "ScopedCredentialType",
            "Screen",
            "ScreenEventMap",
            "ScriptNotifyEvent",
            "ScriptProcessorNode",
            "ScriptProcessorNodeEventMap",
            "ScrollBehavior",
            "ScrollIntoViewOptions",
            "ScrollLogicalPosition",
            "ScrollOptions",
            "ScrollRestoration",
            "ScrollToOptions",
            "Selection",
            "ServiceWorker",
            "ServiceWorkerContainer",
            "ServiceWorkerContainerEventMap",
            "ServiceWorkerEventMap",
            "ServiceWorkerGlobalScope",
            "ServiceWorkerGlobalScopeEventMap",
            "ServiceWorkerMessageEvent",
            "ServiceWorkerMessageEventInit",
            "ServiceWorkerRegistration",
            "ServiceWorkerRegistrationEventMap",
            "ServiceWorkerState",
            "Set",
            "SetConstructor",
            "ShadowRoot",
            "ShadowRootInit",
            "SharedArrayBuffer",
            "SharedArrayBufferConstructor",
            "SourceBuffer",
            "SourceBufferList",
            "SpeechGrammar",
            "SpeechGrammarList",
            "SpeechInputEvent",
            "SpeechInputResult",
            "SpeechInputResultList",
            "SpeechRecognition",
            "SpeechRecognitionAlternative",
            "SpeechRecognitionError",
            "SpeechRecognitionEvent",
            "SpeechRecognitionResult",
            "SpeechRecognitionResultList",
            "SpeechSynthesisVoiceList",
            "SpeechSynthesis",
            "SpeechSynthesisEvent",
            "SpeechSynthesisEventInit",
            "SpeechSynthesisEventMap",
            "SpeechSynthesisUtterance",
            "SpeechSynthesisUtteranceEventMap",
            "SpeechSynthesisVoice",
            "StereoPannerNode",
            "Storage",
            "StorageEvent",
            "StorageEventInit",
            "StoreExceptionsInformation",
            "StoreSiteSpecificExceptionsInformation",
            "String",
            "StringConstructor",
            "StyleMedia",
            "StyleSheet",
            "StyleSheetList",
            "StyleSheetPageList",
            "SubtleCrypto",
            "Symbol",
            "SymbolConstructor",
            "SyncEvent",
            "SyncEventInit",
            "SyncManager",
            "SyntaxError",
            "SyntaxErrorConstructor",
            "TemplateStringsArray",
            "Text",
            "TextEvent",
            "TextMetrics",
            "TextStreamBase",
            "TextStreamReader",
            "TextStreamWriter",
            "TextTrack",
            "TextTrackCue",
            "TextTrackCueEventMap",
            "TextTrackCueList",
            "TextTrackEventMap",
            "TextTrackList",
            "TextTrackListEventMap",
            "ThisType",
            "TimeRanges",
            "Touch",
            "TouchEvent",
            "TouchEventInit",
            "TouchList",
            "TrackEvent",
            "TrackEventInit",
            "TransitionEvent",
            "TransitionEventInit",
            "Transport",
            "TreeWalker",
  
            // The Trusted Types browser API is experimental, but there is an implementation in
            // Chrome. Closure's platform externs will be made to unconditionally depend on Trusted
            // Types, and similarly all TypeScript compilations will depend on
            // https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/trusted-types/index.d.ts.
            // In that sense, Trusted Types can be seen by Clutz as a platform API (albeit
            // experimental). By adding it to this list, we guarantee that the symbols are emitted
            // without the Clutz prefix and transparently mapped between the hand-written externs and
            // .d.ts.
            // For more info see https://github.com/WICG/trusted-types
            "TrustedHTML",
            "TrustedScript",
            "TrustedScriptURL",
            "TrustedTypePolicy",
            "TrustedTypePolicyFactory",
            "TrustedTypes",
            "TrustedURL",
            "trustedTypes",
            // End of trusted types.
            "TypeError",
            "TypeErrorConstructor",
            "TypedPropertyDescriptor",
            "UIEvent",
            "UIEventInit",
            "URIError",
            "URIErrorConstructor",
            "URL",
            "URLSearchParams",
            "USVString",
            "Uint16Array",
            "Uint16ArrayConstructor",
            "Uint32Array",
            "Uint32ArrayConstructor",
            "Uint8Array",
            "Uint8ArrayConstructor",
            "Uint8ClampedArray",
            "Uint8ClampedArrayConstructor",
            "UnviewableContentIdentifiedEvent",
            "VBArray",
            "VBArrayConstructor",
            "ValidityState",
            "VideoFacingModeEnum",
            "VideoPlaybackQuality",
            "VideoTrack",
            "VideoTrackList",
            "VideoTrackListEventMap",
            "VisibilityState",
            "VoidFunction",
            "WEBGL_compressed_texture_s3tc",
            "WEBGL_debug_renderer_info",
            "WEBGL_depth_texture",
            "WScript",
            "WaveShaperNode",
            "WeakMap",
            "WeakMapConstructor",
            "WeakSet",
            "WeakSetConstructor",
            "WebAuthentication",
            "WebAuthnAssertion",
            "WebAuthnExtensions",
            "WebGLActiveInfo",
            "WebGLBuffer",
            "WebGLContextAttributes",
            "WebGLContextEvent",
            "WebGLContextEventInit",
            "WebGLFramebuffer",
            "WebGLObject",
            "WebGLProgram",
            "WebGLRenderbuffer",
            "WebGLRenderingContext",
            "WebGLShader",
            "WebGLShaderPrecisionFormat",
            "WebGLTexture",
            "WebGLUniformLocation",
            "WebKitCSSMatrix",
            "WebKitDirectoryEntry",
            "WebKitDirectoryReader",
            "WebKitEntriesCallback",
            "WebKitEntry",
            "WebKitErrorCallback",
            "WebKitFileCallback",
            "WebKitFileEntry",
            "WebKitFileSystem",
            "WebKitPoint",
            "WebSocket",
            "WebSocketEventMap",
            "WheelEvent",
            "WheelEventInit",
            "Window",
            "WindowBase64",
            "WindowClient",
            "WindowConsole",
            "WindowEventMap",
            "WindowLocalStorage",
            "WindowSessionStorage",
            "WindowTimers",
            "WindowTimersExtension",
            "Worker",
            "WorkerEventMap",
            "WorkerGlobalScope",
            "WorkerGlobalScopeEventMap",
            "WorkerLocation",
            "WorkerNavigator",
            "WorkerUtils",
            "XMLDocument",
            "XMLHttpRequest",
            "XMLHttpRequestEventMap",
            "XMLHttpRequestEventTarget",
            "XMLHttpRequestEventTargetEventMap",
            "XMLHttpRequestResponseType",
            "XMLHttpRequestUpload",
            "XMLSerializer",
            "XPathEvaluator",
            "XPathExpression",
            "XPathNSResolver",
            "XPathResult",
            "XSLTProcessor",
            "addEventListener",
            "alert",
            "applicationCache",
            "atob",
            "blur",
            "btoa",
            "caches",
            "cancelAnimationFrame",
            "captureEvents",
            "clearImmediate",
            "clearInterval",
            "clearTimeout",
            "clientInformation",
            "close",
            "closed",
            "confirm",
            "console",
            "createImageBitmap",
            "crypto",
            "customElements",
            "decodeURI",
            "decodeURIComponent",
            "defaultStatus",
            "departFocus",
            "devicePixelRatio",
            "dispatchEvent",
            "doNotTrack",
            "document",
            "encodeURI",
            "encodeURIComponent",
            "eval",
            "event",
            "external",
            "fetch",
            "focus",
            "frameElement",
            "frames",
            "getComputedStyle",
            "getMatchedCSSRules",
            "getSelection",
            "history",
            "importScripts",
            "indexedDB",
            "innerHeight",
            "innerWidth",
            "isFinite",
            "isNaN",
            "isSecureContext",
            "length",
            "localStorage",
            "location",
            "locationbar",
            "matchMedia",
            "menubar",
            "moveBy",
            "moveTo",
            "msContentScript",
            "msCredentials",
            "msIndexedDB",
            "msWriteProfilerMark",
            "name",
            "navigator",
            "offscreenBuffering",
            "onabort",
            "onafterprint",
            "onbeforeprint",
            "onbeforeunload",
            "onblur",
            "oncanplay",
            "oncanplaythrough",
            "onchange",
            "onclick",
            "oncompassneedscalibration",
            "oncontextmenu",
            "ondblclick",
            "ondevicelight",
            "ondevicemotion",
            "ondeviceorientation",
            "ondrag",
            "ondragend",
            "ondragenter",
            "ondragleave",
            "ondragover",
            "ondragstart",
            "ondrop",
            "ondurationchange",
            "onemptied",
            "onended",
            "onerror",
            "onfocus",
            "onhashchange",
            "oninput",
            "oninvalid",
            "onkeydown",
            "onkeypress",
            "onkeyup",
            "onload",
            "onloadeddata",
            "onloadedmetadata",
            "onloadstart",
            "onmessage",
            "onmousedown",
            "onmouseenter",
            "onmouseleave",
            "onmousemove",
            "onmouseout",
            "onmouseover",
            "onmouseup",
            "onmousewheel",
            "onmsgesturechange",
            "onmsgesturedoubletap",
            "onmsgestureend",
            "onmsgesturehold",
            "onmsgesturestart",
            "onmsgesturetap",
            "onmsinertiastart",
            "onmspointercancel",
            "onmspointerdown",
            "onmspointerenter",
            "onmspointerleave",
            "onmspointermove",
            "onmspointerout",
            "onmspointerover",
            "onmspointerup",
            "onoffline",
            "ononline",
            "onorientationchange",
            "onpagehide",
            "onpageshow",
            "onpause",
            "onplay",
            "onplaying",
            "onpointercancel",
            "onpointerdown",
            "onpointerenter",
            "onpointerleave",
            "onpointermove",
            "onpointerout",
            "onpointerover",
            "onpointerup",
            "onpopstate",
            "onprogress",
            "onratechange",
            "onreadystatechange",
            "onreset",
            "onresize",
            "onscroll",
            "onseeked",
            "onseeking",
            "onselect",
            "onstalled",
            "onstorage",
            "onsubmit",
            "onsuspend",
            "ontimeupdate",
            "ontouchcancel",
            "ontouchend",
            "ontouchmove",
            "ontouchstart",
            "onunload",
            "onvolumechange",
            "onwaiting",
            "onwheel",
            "open",
            "opener",
            "orientation",
            "outerHeight",
            "outerWidth",
            "pageXOffset",
            "pageYOffset",
            "parent",
            "parseFloat",
            "parseInt",
            "payloadtype",
            "performance",
            "personalbar",
            "postMessage",
            "print",
            "prompt",
            "releaseEvents",
            "removeEventListener",
            "requestAnimationFrame",
            "resizeBy",
            "resizeTo",
            "screen",
            "screenLeft",
            "screenTop",
            "screenX",
            "screenY",
            "scroll",
            "scrollBy",
            "scrollTo",
            "scrollX",
            "scrollY",
            "scrollbars",
            "self",
            "sessionStorage",
            "setImmediate",
            "setInterval",
            "setTimeout",
            "speechSynthesis",
            "status",
            "statusbar",
            "stop",
            "styleMedia",
            "toString",
            "toolbar",
            "top",
            "webkitCancelAnimationFrame",
            "webkitConvertPointFromNodeToPage",
            "webkitConvertPointFromPageToNode",
            "webkitSpeechGrammar",
            "webkitSpeechGrammarList",
            "webkitSpeechRecognition",
            "webkitSpeechRecognitionError",
            "webkitSpeechRecognitionEvent",
            "webkitRTCPeerConnection",
            "webkitRequestAnimationFrame",
            "window");
  
    /**
     * Intentionally empty, this list exists, so that one can add symbols to it in forks for other
     * environments - like the google internal environment.
     */
    public static final ImmutableSet<String> ADDITIONAL_CLOSURE_EXTERNS_NOT_USED_IN_TYPESCRIPT =
        ImmutableSet.of();
  }
  