pub trait IDBRequestMethods<D>where
    D: DomTypes,{
    // Required methods
    fn Result(&self, cx: JSContext, retval: MutableHandle<'_, Value>);
    fn GetError(&self) -> Option<Root<Dom<<D as DomTypes>::DOMException>>>;
    fn GetSource(&self) -> Option<Root<Dom<<D as DomTypes>::IDBObjectStore>>>;
    fn GetTransaction(
        &self,
    ) -> Option<Root<Dom<<D as DomTypes>::IDBTransaction>>>;
    fn ReadyState(&self) -> IDBRequestReadyState;
    fn GetOnsuccess(&self) -> Option<Rc<EventHandlerNonNull<D>>>;
    fn SetOnsuccess(&self, value: Option<Rc<EventHandlerNonNull<D>>>);
    fn GetOnerror(&self) -> Option<Rc<EventHandlerNonNull<D>>>;
    fn SetOnerror(&self, value: Option<Rc<EventHandlerNonNull<D>>>);
}