var s, T;
function x() {
  if (T) return s;
  T = 1;
  var R = "auto", y = {
    "": 1,
    lr: 1,
    rl: 1
  }, B = {
    start: 1,
    center: 1,
    end: 1,
    left: 1,
    right: 1,
    auto: 1,
    "line-left": 1,
    "line-right": 1
  };
  function E(n) {
    if (typeof n != "string")
      return !1;
    var r = y[n.toLowerCase()];
    return r ? n.toLowerCase() : !1;
  }
  function i(n) {
    if (typeof n != "string")
      return !1;
    var r = B[n.toLowerCase()];
    return r ? n.toLowerCase() : !1;
  }
  function u(n, r, S) {
    this.hasBeenReset = !1;
    var a = "", o = !1, f = n, l = r, c = S, g = null, h = "", m = !0, d = "auto", w = "start", b = "auto", p = "auto", v = 100, _ = "center";
    Object.defineProperties(this, {
      id: {
        enumerable: !0,
        get: function() {
          return a;
        },
        set: function(e) {
          a = "" + e;
        }
      },
      pauseOnExit: {
        enumerable: !0,
        get: function() {
          return o;
        },
        set: function(e) {
          o = !!e;
        }
      },
      startTime: {
        enumerable: !0,
        get: function() {
          return f;
        },
        set: function(e) {
          if (typeof e != "number")
            throw new TypeError("Start time must be set to a number.");
          f = e, this.hasBeenReset = !0;
        }
      },
      endTime: {
        enumerable: !0,
        get: function() {
          return l;
        },
        set: function(e) {
          if (typeof e != "number")
            throw new TypeError("End time must be set to a number.");
          l = e, this.hasBeenReset = !0;
        }
      },
      text: {
        enumerable: !0,
        get: function() {
          return c;
        },
        set: function(e) {
          c = "" + e, this.hasBeenReset = !0;
        }
      },
      region: {
        enumerable: !0,
        get: function() {
          return g;
        },
        set: function(e) {
          g = e, this.hasBeenReset = !0;
        }
      },
      vertical: {
        enumerable: !0,
        get: function() {
          return h;
        },
        set: function(e) {
          var t = E(e);
          if (t === !1)
            throw new SyntaxError("Vertical: an invalid or illegal direction string was specified.");
          h = t, this.hasBeenReset = !0;
        }
      },
      snapToLines: {
        enumerable: !0,
        get: function() {
          return m;
        },
        set: function(e) {
          m = !!e, this.hasBeenReset = !0;
        }
      },
      line: {
        enumerable: !0,
        get: function() {
          return d;
        },
        set: function(e) {
          if (typeof e != "number" && e !== R)
            throw new SyntaxError("Line: an invalid number or illegal string was specified.");
          d = e, this.hasBeenReset = !0;
        }
      },
      lineAlign: {
        enumerable: !0,
        get: function() {
          return w;
        },
        set: function(e) {
          var t = i(e);
          t && (w = t, this.hasBeenReset = !0);
        }
      },
      position: {
        enumerable: !0,
        get: function() {
          return b;
        },
        set: function(e) {
          if (e < 0 || e > 100)
            throw new Error("Position must be between 0 and 100.");
          b = e, this.hasBeenReset = !0;
        }
      },
      positionAlign: {
        enumerable: !0,
        get: function() {
          return p;
        },
        set: function(e) {
          var t = i(e);
          t && (p = t, this.hasBeenReset = !0);
        }
      },
      size: {
        enumerable: !0,
        get: function() {
          return v;
        },
        set: function(e) {
          if (e < 0 || e > 100)
            throw new Error("Size must be between 0 and 100.");
          v = e, this.hasBeenReset = !0;
        }
      },
      align: {
        enumerable: !0,
        get: function() {
          return _;
        },
        set: function(e) {
          var t = i(e);
          if (!t)
            throw new SyntaxError("align: an invalid or illegal alignment string was specified.");
          _ = t, this.hasBeenReset = !0;
        }
      }
    }), this.displayState = void 0;
  }
  return u.prototype.getCueAsHTML = function() {
    return WebVTT.convertCueToDOMTree(window, this.text);
  }, s = u, s;
}
export {
  x as __require
};
