function Filter(options) {
    _classCallCheck(this, Filter);

    options = options || {};

    if (options.colors) {
      options.colors = Object.assign({}, defaults.colors, options.colors);
    }

    this.options = Object.assign({}, defaults, options);
    this.stack = [];
    this.stickyStack = [];
  }
@param {object} options
@param {string=} options.fg The default foreground color used when reset color codes are encountered.
@param {string=} options.bg The default background color used when reset color codes are encountered.
@param {boolean=} options.newline Convert newline characters to `<br/>`.
@param {boolean=} options.escapeXML Generate HTML/XML entities.
@param {boolean=} options.stream Save style state across invocations of `toHtml()`.
@param {(string[] | {[code: number]: string})=} options.colors Can override specific colors or the entire ANSI palette.