interface Blob
    getter size
    getter type
    method close
    method constructor
    method slice
interface ByteLengthQueuingStrategy
    method constructor
    method size
interface Cache
    method add
    method addAll
    method constructor
    method delete
    method keys
    method match
    method matchAll
    method put
interface CacheStorage
    method constructor
    method delete
    method has
    method keys
    method match
    method open
interface CircularGeofencingRegion : GeofencingRegion
    attribute MAX_RADIUS
    attribute MIN_RADIUS
    getter latitude
    getter longitude
    getter radius
    method constructor
interface Client
    getter frameType
    getter id
    getter url
    method constructor
    method postMessage
interface Clients
    method claim
    method constructor
    method get
    method matchAll
    method openWindow
interface CloseEvent : Event
    getter code
    getter reason
    getter wasClean
    method constructor
interface CountQueuingStrategy
    method constructor
    method size
interface CrossOriginServiceWorkerClient : EventTarget
    getter origin
    getter targetUrl
    method constructor
    method postMessage
interface Crypto
    getter subtle
    method constructor
    method getRandomValues
interface CryptoKey
    getter algorithm
    getter extractable
    getter type
    getter usages
    method constructor
interface CustomEvent : Event
    getter detail
    method constructor
    method initCustomEvent
interface DOMException
    attribute ABORT_ERR
    attribute DATA_CLONE_ERR
    attribute DOMSTRING_SIZE_ERR
    attribute HIERARCHY_REQUEST_ERR
    attribute INDEX_SIZE_ERR
    attribute INUSE_ATTRIBUTE_ERR
    attribute INVALID_ACCESS_ERR
    attribute INVALID_CHARACTER_ERR
    attribute INVALID_MODIFICATION_ERR
    attribute INVALID_NODE_TYPE_ERR
    attribute INVALID_STATE_ERR
    attribute NAMESPACE_ERR
    attribute NETWORK_ERR
    attribute NOT_FOUND_ERR
    attribute NOT_SUPPORTED_ERR
    attribute NO_DATA_ALLOWED_ERR
    attribute NO_MODIFICATION_ALLOWED_ERR
    attribute QUOTA_EXCEEDED_ERR
    attribute SECURITY_ERR
    attribute SYNTAX_ERR
    attribute TIMEOUT_ERR
    attribute TYPE_MISMATCH_ERR
    attribute URL_MISMATCH_ERR
    attribute VALIDATION_ERR
    attribute WRONG_DOCUMENT_ERR
    getter code
    getter message
    getter name
    method constructor
    method toString
interface DataView
    getter buffer
    getter byteLength
    getter byteOffset
    method constructor
    method getFloat32
    method getFloat64
    method getInt16
    method getInt32
    method getInt8
    method getUint16
    method getUint32
    method getUint8
    method setFloat32
    method setFloat64
    method setInt16
    method setInt32
    method setInt8
    method setUint16
    method setUint32
    method setUint8
interface Event
    attribute AT_TARGET
    attribute BLUR
    attribute BUBBLING_PHASE
    attribute CAPTURING_PHASE
    attribute CHANGE
    attribute CLICK
    attribute DBLCLICK
    attribute DRAGDROP
    attribute FOCUS
    attribute KEYDOWN
    attribute KEYPRESS
    attribute KEYUP
    attribute MOUSEDOWN
    attribute MOUSEDRAG
    attribute MOUSEMOVE
    attribute MOUSEOUT
    attribute MOUSEOVER
    attribute MOUSEUP
    attribute NONE
    attribute SELECT
    getter bubbles
    getter cancelBubble
    getter cancelable
    getter currentTarget
    getter defaultPrevented
    getter eventPhase
    getter path
    getter relatedTargetScoped
    getter returnValue
    getter scoped
    getter srcElement
    getter target
    getter timeStamp
    getter type
    method constructor
    method deepPath
    method initEvent
    method preventDefault
    method stopImmediatePropagation
    method stopPropagation
    setter cancelBubble
    setter returnValue
interface EventSource : EventTarget
    attribute CLOSED
    attribute CONNECTING
    attribute OPEN
    getter onerror
    getter onmessage
    getter onopen
    getter readyState
    getter url
    getter withCredentials
    method close
    method constructor
    setter onerror
    setter onmessage
    setter onopen
interface EventTarget
    method addEventListener
    method constructor
    method dispatchEvent
    method removeEventListener
interface ExtendableEvent : Event
    method constructor
    method waitUntil
interface ExtendableMessageEvent : ExtendableEvent
    getter data
    getter lastEventId
    getter origin
    getter ports
    getter source
    method constructor
interface FetchEvent : ExtendableEvent
    getter clientId
    getter isReload
    getter request
    method constructor
    method respondWith
interface File : Blob
    getter lastModified
    getter lastModifiedDate
    getter name
    getter webkitRelativePath
    method constructor
interface FileError : DOMError
    attribute ABORT_ERR
    attribute ENCODING_ERR
    attribute INVALID_MODIFICATION_ERR
    attribute INVALID_STATE_ERR
    attribute NOT_FOUND_ERR
    attribute NOT_READABLE_ERR
    attribute NO_MODIFICATION_ALLOWED_ERR
    attribute PATH_EXISTS_ERR
    attribute QUOTA_EXCEEDED_ERR
    attribute SECURITY_ERR
    attribute SYNTAX_ERR
    attribute TYPE_MISMATCH_ERR
    getter code
    method constructor
interface FileList
    getter length
    method constructor
    method item
interface FileReader : EventTarget
    attribute DONE
    attribute EMPTY
    attribute LOADING
    getter error
    getter onabort
    getter onerror
    getter onload
    getter onloadend
    getter onloadstart
    getter onprogress
    getter readyState
    getter result
    method abort
    method constructor
    method readAsArrayBuffer
    method readAsBinaryString
    method readAsDataURL
    method readAsText
    setter onabort
    setter onerror
    setter onload
    setter onloadend
    setter onloadstart
    setter onprogress
interface FileReaderSync
    method constructor
    method readAsArrayBuffer
    method readAsBinaryString
    method readAsDataURL
    method readAsText
interface FormData
    method append
    method constructor
    method delete
    method entries
    method forEach
    method get
    method getAll
    method has
    method keys
    method set
    method values
interface GeofencingEvent : Event
    getter id
    getter region
    method constructor
interface Headers
    method append
    method constructor
    method delete
    method entries
    method forEach
    method get
    method getAll
    method has
    method keys
    method set
    method values
interface IDBCursor
    getter direction
    getter key
    getter primaryKey
    getter source
    method advance
    method constructor
    method continue
    method continuePrimaryKey
    method delete
    method update
interface IDBCursorWithValue : IDBCursor
    getter value
    method constructor
interface IDBDatabase : EventTarget
    getter name
    getter objectStoreNames
    getter onabort
    getter onclose
    getter onerror
    getter onversionchange
    getter version
    method close
    method constructor
    method createObjectStore
    method deleteObjectStore
    method transaction
    setter onabort
    setter onclose
    setter onerror
    setter onversionchange
interface IDBFactory
    method cmp
    method constructor
    method deleteDatabase
    method open
    method webkitGetDatabaseNames
interface IDBIndex
    getter keyPath
    getter multiEntry
    getter name
    getter objectStore
    getter unique
    method constructor
    method count
    method get
    method getAll
    method getAllKeys
    method getKey
    method openCursor
    method openKeyCursor
interface IDBKeyRange
    static method bound
    static method lowerBound
    static method only
    static method upperBound
    getter lower
    getter lowerOpen
    getter upper
    getter upperOpen
    method constructor
    method includes
interface IDBObjectStore
    getter autoIncrement
    getter indexNames
    getter keyPath
    getter name
    getter transaction
    method add
    method clear
    method constructor
    method count
    method createIndex
    method delete
    method deleteIndex
    method get
    method getAll
    method getAllKeys
    method index
    method openCursor
    method openKeyCursor
    method put
interface IDBOpenDBRequest : IDBRequest
    getter onblocked
    getter onupgradeneeded
    method constructor
    setter onblocked
    setter onupgradeneeded
interface IDBRequest : EventTarget
    getter error
    getter onerror
    getter onsuccess
    getter readyState
    getter result
    getter source
    getter transaction
    method constructor
    setter onerror
    setter onsuccess
interface IDBTransaction : EventTarget
    getter db
    getter error
    getter mode
    getter objectStoreNames
    getter onabort
    getter oncomplete
    getter onerror
    method abort
    method constructor
    method objectStore
    setter onabort
    setter oncomplete
    setter onerror
interface IDBVersionChangeEvent : Event
    getter dataLoss
    getter dataLossMessage
    getter newVersion
    getter oldVersion
    method constructor
interface ImageBitmap
    getter height
    getter width
    method close
    method constructor
interface ImageData
    getter height
    getter width
    method constructor
interface InstallEvent : ExtendableEvent
    method constructor
    method registerForeignFetch
interface MessageChannel
    getter port1
    getter port2
    method constructor
interface MessageEvent : Event
    getter data
    getter lastEventId
    getter origin
    getter ports
    getter source
    getter suborigin
    method constructor
    method initMessageEvent
interface MessagePort : EventTarget
    getter onmessage
    method close
    method constructor
    method postMessage
    method start
    setter onmessage
interface NetworkInformation : EventTarget
    getter downlinkMax
    getter onchange
    getter ontypechange
    getter type
    method constructor
    setter onchange
    setter ontypechange
interface Notification : EventTarget
    static getter maxActions
    static getter permission
    getter actions
    getter badge
    getter body
    getter data
    getter dir
    getter icon
    getter lang
    getter onclick
    getter onclose
    getter onerror
    getter onshow
    getter renotify
    getter requireInteraction
    getter silent
    getter tag
    getter timestamp
    getter title
    getter vibrate
    method close
    method constructor
    setter onclick
    setter onclose
    setter onerror
    setter onshow
interface NotificationEvent : ExtendableEvent
    getter action
    getter notification
    method constructor
interface OffscreenCanvas
    getter height
    getter width
    method constructor
    method getContext
    method transferToImageBitmap
    setter height
    setter width
interface OffscreenCanvasRenderingContext2D
    getter fillStyle
    getter lineCap
    getter lineDashOffset
    getter lineJoin
    getter lineWidth
    getter miterLimit
    getter offscreenCanvas
    getter strokeStyle
    method arc
    method arcTo
    method beginPath
    method bezierCurveTo
    method clearRect
    method closePath
    method constructor
    method ellipse
    method fill
    method fillRect
    method getLineDash
    method lineTo
    method moveTo
    method quadraticCurveTo
    method rect
    method setLineDash
    method stroke
    method strokeRect
    setter fillStyle
    setter lineCap
    setter lineDashOffset
    setter lineJoin
    setter lineWidth
    setter miterLimit
    setter strokeStyle
interface Path2D
    method addPath
    method arc
    method arcTo
    method bezierCurveTo
    method closePath
    method constructor
    method ellipse
    method lineTo
    method moveTo
    method quadraticCurveTo
    method rect
interface PerformanceObserverEntryList
    method constructor
    method getEntries
    method getEntriesByName
    method getEntriesByType
interface PermissionStatus : EventTarget
    getter onchange
    getter state
    method constructor
    setter onchange
interface Permissions
    method constructor
    method query
    method request
    method requestAll
    method revoke
interface PromiseRejectionEvent : Event
    getter promise
    getter reason
    method constructor
interface PushEvent : ExtendableEvent
    getter data
    method constructor
interface PushManager
    method constructor
    method getSubscription
    method permissionState
    method subscribe
interface PushMessageData
    method arrayBuffer
    method blob
    method constructor
    method json
    method text
interface PushSubscription
    getter endpoint
    method constructor
    method getKey
    method toJSON
    method unsubscribe
interface ReadableByteStream
    method cancel
    method constructor
    method getReader
interface ReadableStream
    getter locked
    method cancel
    method constructor
    method getReader
    method tee
interface Request
    getter bodyUsed
    getter credentials
    getter headers
    getter integrity
    getter method
    getter mode
    getter redirect
    getter referrer
    getter url
    method arrayBuffer
    method blob
    method clone
    method constructor
    method json
    method text
interface Response
    static method error
    static method redirect
    getter body
    getter bodyUsed
    getter headers
    getter ok
    getter status
    getter statusText
    getter type
    getter url
    method arrayBuffer
    method blob
    method clone
    method constructor
    method json
    method text
interface ServicePort
    getter data
    getter name
    getter targetURL
    method close
    method constructor
    method postMessage
interface ServicePortCollection : EventTarget
    getter onclose
    getter onconnect
    getter onmessage
    method connect
    method constructor
    method match
    method matchAll
    setter onclose
    setter onconnect
    setter onmessage
interface ServicePortConnectEvent : ExtendableEvent
    getter origin
    getter targetURL
    method constructor
    method respondWith
interface ServiceWorkerGlobalScope : WorkerGlobalScope
    method constructor
interface ServiceWorkerRegistration : EventTarget
    getter geofencing
    getter onupdatefound
    getter pushManager
    getter scope
    getter sync
    method constructor
    method getNotifications
    method showNotification
    method unregister
    method update
    setter onupdatefound
interface StorageManager
    method constructor
    method persistentPermission
interface SubtleCrypto
    method constructor
    method decrypt
    method deriveBits
    method deriveKey
    method digest
    method encrypt
    method exportKey
    method generateKey
    method importKey
    method sign
    method unwrapKey
    method verify
    method wrapKey
interface SyncEvent : ExtendableEvent
    getter lastChance
    getter tag
    method constructor
interface SyncManager
    method constructor
    method getTags
    method register
interface TextDecoder
    getter encoding
    getter fatal
    getter ignoreBOM
    method constructor
    method decode
interface TextEncoder
    getter encoding
    method constructor
    method encode
interface URL
    static method createObjectURL
    static method revokeObjectURL
    getter hash
    getter host
    getter hostname
    getter href
    getter origin
    getter password
    getter pathname
    getter port
    getter protocol
    getter search
    getter username
    method constructor
    method toString
    setter hash
    setter host
    setter hostname
    setter href
    setter password
    setter pathname
    setter port
    setter protocol
    setter search
    setter username
interface URLSearchParams
    method append
    method constructor
    method delete
    method entries
    method forEach
    method get
    method getAll
    method has
    method keys
    method set
    method toString
    method values
interface WebSocket : EventTarget
    attribute CLOSED
    attribute CLOSING
    attribute CONNECTING
    attribute OPEN
    getter binaryType
    getter bufferedAmount
    getter extensions
    getter onclose
    getter onerror
    getter onmessage
    getter onopen
    getter protocol
    getter readyState
    getter url
    method close
    method constructor
    method send
    setter binaryType
    setter onclose
    setter onerror
    setter onmessage
    setter onopen
interface WindowClient : Client
    getter focused
    getter visibilityState
    method constructor
    method focus
    method navigate
interface WorkerGlobalScope : EventTarget
    getter addressSpace
    getter console
    getter crypto
    getter indexedDB
    getter location
    getter navigator
    getter onerror
    getter onrejectionhandled
    getter onunhandledrejection
    getter performance
    getter self
    getter webkitIndexedDB
    method atob
    method btoa
    method clearInterval
    method clearTimeout
    method close
    method constructor
    method createImageBitmap
    method fetch
    method importScripts
    method setInterval
    method setTimeout
    setter console
    setter onerror
    setter onrejectionhandled
    setter onunhandledrejection
interface WorkerLocation
    getter hash
    getter host
    getter hostname
    getter href
    getter origin
    getter pathname
    getter port
    getter protocol
    getter search
    method constructor
    method toString
interface WorkerNavigator
    getter appCodeName
    getter appName
    getter appVersion
    getter connection
    getter geofencing
    getter hardwareConcurrency
    getter onLine
    getter permissions
    getter platform
    getter product
    getter services
    getter storage
    getter userAgent
    getter webkitPersistentStorage
    getter webkitTemporaryStorage
    method constructor
interface webkitIDBCursor
    getter direction
    getter key
    getter primaryKey
    getter source
    method advance
    method constructor
    method continue
    method continuePrimaryKey
    method delete
    method update
interface webkitIDBDatabase : EventTarget
    getter name
    getter objectStoreNames
    getter onabort
    getter onclose
    getter onerror
    getter onversionchange
    getter version
    method close
    method constructor
    method createObjectStore
    method deleteObjectStore
    method transaction
    setter onabort
    setter onclose
    setter onerror
    setter onversionchange
interface webkitIDBFactory
    method cmp
    method constructor
    method deleteDatabase
    method open
    method webkitGetDatabaseNames
interface webkitIDBIndex
    getter keyPath
    getter multiEntry
    getter name
    getter objectStore
    getter unique
    method constructor
    method count
    method get
    method getAll
    method getAllKeys
    method getKey
    method openCursor
    method openKeyCursor
interface webkitIDBKeyRange
    static method bound
    static method lowerBound
    static method only
    static method upperBound
    getter lower
    getter lowerOpen
    getter upper
    getter upperOpen
    method constructor
    method includes
interface webkitIDBObjectStore
    getter autoIncrement
    getter indexNames
    getter keyPath
    getter name
    getter transaction
    method add
    method clear
    method constructor
    method count
    method createIndex
    method delete
    method deleteIndex
    method get
    method getAll
    method getAllKeys
    method index
    method openCursor
    method openKeyCursor
    method put
interface webkitIDBRequest : EventTarget
    getter error
    getter onerror
    getter onsuccess
    getter readyState
    getter result
    getter source
    getter transaction
    method constructor
    setter onerror
    setter onsuccess
interface webkitIDBTransaction : EventTarget
    getter db
    getter error
    getter mode
    getter objectStoreNames
    getter onabort
    getter oncomplete
    getter onerror
    method abort
    method constructor
    method objectStore
    setter onabort
    setter oncomplete
    setter onerror
global object
    getter caches
    getter clients
    getter onactivate
    getter oncrossoriginmessage
    getter onfetch
    getter onforeignfetch
    getter ongeofenceenter
    getter ongeofenceleave
    getter oninstall
    getter onmessage
    getter onnotificationclick
    getter onnotificationclose
    getter onpush
    getter onsync
    getter registration
    method close
    method fetch
    method gc
    method skipWaiting
    setter onactivate
    setter oncrossoriginmessage
    setter onfetch
    setter onforeignfetch
    setter ongeofenceenter
    setter ongeofenceleave
    setter oninstall
    setter onmessage
    setter onnotificationclick
    setter onnotificationclose
    setter onpush
    setter onsync
This is a testharness.js-based test.
PASS Verify the interface of ServiceWorkerGlobalScope 
Harness: the test ran to completion.

