.. role:: clio-inherited
   :class: clio-flag clio-flag-inherited

.. role:: clio-readonly
   :class: clio-flag clio-flag-readonly


##################
TrackedOpenPromise
##################

.. js:class:: wv.Util.TrackedOpenPromise

   This represents a ``OpenPromise`` that tracks whether or not it has been resolved or rejected.
   
   
   Index
   =====
   
   .. rubric:: Properties
   
   
   .. rst-class:: api-xref-list
   
   
   * :js:data:`~wv.Util.TrackedOpenPromise.[toStringTag]`
   * :js:data:`~wv.Util.TrackedOpenPromise.state`
   
   .. rubric:: Methods
   
   
   .. rst-class:: api-xref-list
   
   
   * :js:meth:`~wv.Util.TrackedOpenPromise.catch`
   * :js:meth:`~wv.Util.TrackedOpenPromise.finally`
   * :js:meth:`~wv.Util.TrackedOpenPromise.reject`
   * :js:meth:`~wv.Util.TrackedOpenPromise.resolve`
   * :js:meth:`~wv.Util.TrackedOpenPromise.then`
   
   



.. rst-class:: kind-group kind-properties

.. rubric:: Properties
   :class: kind-group-title


.. js:data:: wv.Util.TrackedOpenPromise.[toStringTag]

      .. rst-class:: clio-flags
      
         :clio-readonly:`readonly`
         :clio-inherited:`inherited`
      
      .. rst-class:: sig-pretty-signature
      
         | [toStringTag]: *string*
      



.. js:data:: wv.Util.TrackedOpenPromise.state

      .. rst-class:: clio-flags
      
         :clio-readonly:`readonly`
      
      .. rst-class:: sig-pretty-signature
      
         | state: *PromiseState*
      
      This value is ``true`` if and only if this promise has been resolved or rejected.
      



.. rst-class:: kind-group kind-methods

.. rubric:: Methods
   :class: kind-group-title


.. js:method:: wv.Util.TrackedOpenPromise.catch

      .. rst-class:: clio-flags
      
         :clio-inherited:`inherited`
      
      .. rst-class:: sig-pretty-signature
      
         | catch(**onrejected**\ : (*None* | (**reason**\ : *any*\ ) => (TResult | *PromiseLike*\ ))): *Promise*
      
      Attaches a callback for only the rejection of the Promise.
      
      **Parameters**
      
      
         **onrejected**\ : (*None* \| (**reason**\ : *any*\ ) => (TResult \| *PromiseLike*\ ))
      
      
            The callback to execute when the Promise is rejected.
      
      
      
      **Returns**\ : *Promise*
      
      
         A Promise for the completion of the callback.
      
      



.. js:method:: wv.Util.TrackedOpenPromise.finally

      .. rst-class:: clio-flags
      
         :clio-inherited:`inherited`
      
      .. rst-class:: sig-pretty-signature
      
         | finally(**onfinally**\ : (*None* | () => *void*\ )): *Promise*
      
      Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The resolved value cannot be modified from the callback.
      
      **Parameters**
      
      
         **onfinally**\ : (*None* \| () => *void*\ )
      
      
            The callback to execute when the Promise is settled (fulfilled or rejected).
      
      
      
      **Returns**\ : *Promise*
      
      
         A Promise for the completion of the callback.
      
      



.. js:method:: wv.Util.TrackedOpenPromise.reject

      .. rst-class:: clio-flags
      
         :clio-inherited:`inherited`
      
      .. rst-class:: sig-pretty-signature
      
         | reject(**error**\ : *any*\ ): *void*
      
      **Parameters**
      
      
         **error**\ : *any*
      
      
      **Returns**\ : *void*
      



.. js:method:: wv.Util.TrackedOpenPromise.resolve

      .. rst-class:: clio-flags
      
         :clio-inherited:`inherited`
      
      .. rst-class:: sig-pretty-signature
      
         | resolve(**this**\ : :js:class:`OpenPromise <wv.Util.OpenPromise>`\ <T>, **value**\ : (T | *PromiseLike*\ )): *void*
      
      **Parameters**
      
      
         **this**\ : :js:class:`OpenPromise <wv.Util.OpenPromise>`\ <T>
      
         **value**\ : (T \| *PromiseLike*\ )
      
      
      **Returns**\ : *void*
      
      .. rst-class:: sig-pretty-signature
      
         | resolve(**this**\ : :js:class:`OpenPromise <wv.Util.OpenPromise>`\ <*void*\ >): *void*
      
      **Parameters**
      
      
         **this**\ : :js:class:`OpenPromise <wv.Util.OpenPromise>`\ <*void*\ >
      
      
      **Returns**\ : *void*
      



.. js:method:: wv.Util.TrackedOpenPromise.then

      .. rst-class:: clio-flags
      
         :clio-inherited:`inherited`
      
      .. rst-class:: sig-pretty-signature
      
         | then(**onfulfilled**\ : (*None* | (**value**\ : T) => (TResult1 | *PromiseLike*\ )), **onrejected**\ : (*None* | (**reason**\ : *any*\ ) => (TResult2 | *PromiseLike*\ ))): *Promise*
      
      Attaches callbacks for the resolution and/or rejection of the Promise.
      
      **Parameters**
      
      
         **onfulfilled**\ : (*None* \| (**value**\ : T) => (TResult1 \| *PromiseLike*\ ))
      
      
            The callback to execute when the Promise is resolved.
      
      
         **onrejected**\ : (*None* \| (**reason**\ : *any*\ ) => (TResult2 \| *PromiseLike*\ ))
      
      
            The callback to execute when the Promise is rejected.
      
      
      
      **Returns**\ : *Promise*
      
      
         A Promise for the completion of which ever callback is executed.
      
      




