constructor(languageId, index, open, close, forwardRegex, reversedRegex) {
        this._richEditBracketBrand = undefined;
        this.languageId = languageId;
        this.index = index;
        this.open = open;
        this.close = close;
        this.forwardRegex = forwardRegex;
        this.reversedRegex = reversedRegex;
        this._openSet = RichEditBracket._toSet(this.open);
        this._closeSet = RichEditBracket._toSet(this.close);
    }
Represents a grouping of colliding bracket pairs.

Most of the times this contains a single bracket pair,
but sometimes this contains multiple bracket pairs in cases
where the same string appears as a closing bracket for multiple
bracket pairs, or the same string appears an opening bracket for
multiple bracket pairs.

e.g. of a group containing a single pair:
  open: ['{'], close: ['}']

e.g. of a group containing multiple pairs:
  open: ['if', 'for'], close: ['end', 'end']