type decoded = | Element(WebAPI.DOMAPI.element) | Document(WebAPI.DOMAPI.document) | Null
let decode: WebAPI.IntersectionObserverAPI.root => decoded
let fromDocument: WebAPI.DOMAPI.document => WebAPI.IntersectionObserverAPI.root
let fromElement: WebAPI.DOMAPI.element => WebAPI.IntersectionObserverAPI.root
let fromNull: WebAPI.IntersectionObserverAPI.root