{"version":3,"file":"promise.mjs","names":[],"sources":["../../src/utils/promise.ts"],"sourcesContent":["/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\n\nexport class Deferred<T> {\n  private _promise: Promise<T>;\n  private _resolve!: (val: T) => void;\n  private _reject!: (error: unknown) => void;\n  constructor() {\n    this._promise = new Promise((resolve, reject) => {\n      this._resolve = resolve;\n      this._reject = reject;\n    });\n  }\n\n  get promise() {\n    return this._promise;\n  }\n\n  resolve(val: T) {\n    this._resolve(val);\n  }\n\n  reject(err: unknown) {\n    this._reject(err);\n  }\n}\n"],"mappings":";AAKA,IAAa,WAAb,MAAyB;CACvB;CACA;CACA;CACA,cAAc;EACZ,KAAK,WAAW,IAAI,SAAS,SAAS,WAAW;GAC/C,KAAK,WAAW;GAChB,KAAK,UAAU;EACjB,CAAC;CACH;CAEA,IAAI,UAAU;EACZ,OAAO,KAAK;CACd;CAEA,QAAQ,KAAQ;EACd,KAAK,SAAS,GAAG;CACnB;CAEA,OAAO,KAAc;EACnB,KAAK,QAAQ,GAAG;CAClB;AACF"}