## Deferred > Work in progress Deferred provides an object to manage promises. ```typescript class Sample { private readonly _deferred = new Deferred(); /* Method called during the application load once the authentication token is available */ setToken(value: T): void { this._deferred.resolve(value); } /* Method called at any time that will be blocked until the token is set */ async fetchData(): Promise { const token = await this._deferred; return fetch("/data/", { headers: { Authorization: `bearer ${token}` } }); } } ``` ## Implements - `IDisposable` from `@aster-js/core`