min-heap-typed 1.42.4 → 1.42.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/.prettierignore CHANGED
@@ -2,5 +2,5 @@ src/types/data-structures/abstract-binary-tree.ts
2
2
  src/types/data-structures/binary-tree.ts
3
3
  src/types/data-structures/bst.ts
4
4
  src/types/data-structures/avl-tree.ts
5
- src/types/data-structures/tree-multiset.ts
5
+ src/types/data-structures/tree-multimap.ts
6
6
  src/types/data-structures/rb-tree.ts
package/README.md CHANGED
@@ -132,7 +132,7 @@ yarn add min-heap-typed
132
132
  <td>Tree Multiset</td>
133
133
  <td><img src="https://raw.githubusercontent.com/zrwusa/assets/master/images/data-structure-typed/assets/tick.svg" alt=""></td>
134
134
  <td><img src="https://raw.githubusercontent.com/zrwusa/assets/master/images/data-structure-typed/assets/tick.svg" alt=""></td>
135
- <td><a href="https://data-structure-typed-docs.vercel.app/classes/TreeMultiset.html"><span>TreeMultiset</span></a></td>
135
+ <td><a href="https://data-structure-typed-docs.vercel.app/classes/TreeMultimap.html"><span>TreeMultimap</span></a></td>
136
136
  <td><img src="https://raw.githubusercontent.com/zrwusa/assets/master/images/data-structure-typed/assets/tick.svg" alt=""></td>
137
137
  </tr>
138
138
  <tr>
@@ -4,4 +4,4 @@ export * from './binary-indexed-tree';
4
4
  export * from './segment-tree';
5
5
  export * from './avl-tree';
6
6
  export * from './rb-tree';
7
- export * from './tree-multiset';
7
+ export * from './tree-multimap';
@@ -20,4 +20,4 @@ __exportStar(require("./binary-indexed-tree"), exports);
20
20
  __exportStar(require("./segment-tree"), exports);
21
21
  __exportStar(require("./avl-tree"), exports);
22
22
  __exportStar(require("./rb-tree"), exports);
23
- __exportStar(require("./tree-multiset"), exports);
23
+ __exportStar(require("./tree-multimap"), exports);
@@ -5,11 +5,11 @@
5
5
  * @copyright Copyright (c) 2022 Tyler Zeng <zrwusa@gmail.com>
6
6
  * @license MIT License
7
7
  */
8
- import type { BTNKey, TreeMultisetNodeNested, TreeMultisetOptions } from '../../types';
8
+ import type { BTNKey, TreeMultimapNodeNested, TreeMultimapOptions } from '../../types';
9
9
  import { BinaryTreeDeletedResult, BTNCallback, IterationType } from '../../types';
10
10
  import { IBinaryTree } from '../../interfaces';
11
11
  import { AVLTree, AVLTreeNode } from './avl-tree';
12
- export declare class TreeMultisetNode<V = any, N extends TreeMultisetNode<V, N> = TreeMultisetNodeNested<V>> extends AVLTreeNode<V, N> {
12
+ export declare class TreeMultimapNode<V = any, N extends TreeMultimapNode<V, N> = TreeMultimapNodeNested<V>> extends AVLTreeNode<V, N> {
13
13
  count: number;
14
14
  /**
15
15
  * The constructor function initializes a BinaryTreeNode object with a key, value, and count.
@@ -24,16 +24,16 @@ export declare class TreeMultisetNode<V = any, N extends TreeMultisetNode<V, N>
24
24
  constructor(key: BTNKey, value?: V, count?: number);
25
25
  }
26
26
  /**
27
- * The only distinction between a TreeMultiset and a AVLTree lies in the ability of the former to store duplicate nodes through the utilization of counters.
27
+ * The only distinction between a TreeMultimap and a AVLTree lies in the ability of the former to store duplicate nodes through the utilization of counters.
28
28
  */
29
- export declare class TreeMultiset<V = any, N extends TreeMultisetNode<V, N> = TreeMultisetNode<V, TreeMultisetNodeNested<V>>> extends AVLTree<V, N> implements IBinaryTree<V, N> {
29
+ export declare class TreeMultimap<V = any, N extends TreeMultimapNode<V, N> = TreeMultimapNode<V, TreeMultimapNodeNested<V>>> extends AVLTree<V, N> implements IBinaryTree<V, N> {
30
30
  /**
31
- * The constructor function for a TreeMultiset class in TypeScript, which extends another class and sets an option to
31
+ * The constructor function for a TreeMultimap class in TypeScript, which extends another class and sets an option to
32
32
  * merge duplicated values.
33
- * @param {TreeMultisetOptions} [options] - An optional object that contains additional configuration options for the
34
- * TreeMultiset.
33
+ * @param {TreeMultimapOptions} [options] - An optional object that contains additional configuration options for the
34
+ * TreeMultimap.
35
35
  */
36
- constructor(options?: TreeMultisetOptions);
36
+ constructor(options?: TreeMultimapOptions);
37
37
  private _count;
38
38
  get count(): number;
39
39
  /**
@@ -70,10 +70,10 @@ export declare class TreeMultiset<V = any, N extends TreeMultisetNode<V, N> = Tr
70
70
  */
71
71
  _addTo(newNode: N | undefined, parent: N): N | undefined;
72
72
  /**
73
- * The `addMany` function adds multiple keys or nodes to a TreeMultiset and returns an array of the
73
+ * The `addMany` function adds multiple keys or nodes to a TreeMultimap and returns an array of the
74
74
  * inserted nodes.
75
75
  * @param {(BTNKey | undefined)[] | (N | undefined)[]} keysOrNodes - An array of keys or nodes to be
76
- * added to the multiset. Each element can be either a BTNKey or a TreeMultisetNode.
76
+ * added to the multiset. Each element can be either a BTNKey or a TreeMultimapNode.
77
77
  * @param {V[]} [data] - The `data` parameter is an optional array of values that correspond
78
78
  * to the keys or nodes being added to the multiset. It is used to associate additional data with
79
79
  * each key or node.
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TreeMultiset = exports.TreeMultisetNode = void 0;
3
+ exports.TreeMultimap = exports.TreeMultimapNode = void 0;
4
4
  const types_1 = require("../../types");
5
5
  const avl_tree_1 = require("./avl-tree");
6
- class TreeMultisetNode extends avl_tree_1.AVLTreeNode {
6
+ class TreeMultimapNode extends avl_tree_1.AVLTreeNode {
7
7
  /**
8
8
  * The constructor function initializes a BinaryTreeNode object with a key, value, and count.
9
9
  * @param {BTNKey} key - The `key` parameter is of type `BTNKey` and represents the unique identifier
@@ -19,16 +19,16 @@ class TreeMultisetNode extends avl_tree_1.AVLTreeNode {
19
19
  this.count = count;
20
20
  }
21
21
  }
22
- exports.TreeMultisetNode = TreeMultisetNode;
22
+ exports.TreeMultimapNode = TreeMultimapNode;
23
23
  /**
24
- * The only distinction between a TreeMultiset and a AVLTree lies in the ability of the former to store duplicate nodes through the utilization of counters.
24
+ * The only distinction between a TreeMultimap and a AVLTree lies in the ability of the former to store duplicate nodes through the utilization of counters.
25
25
  */
26
- class TreeMultiset extends avl_tree_1.AVLTree {
26
+ class TreeMultimap extends avl_tree_1.AVLTree {
27
27
  /**
28
- * The constructor function for a TreeMultiset class in TypeScript, which extends another class and sets an option to
28
+ * The constructor function for a TreeMultimap class in TypeScript, which extends another class and sets an option to
29
29
  * merge duplicated values.
30
- * @param {TreeMultisetOptions} [options] - An optional object that contains additional configuration options for the
31
- * TreeMultiset.
30
+ * @param {TreeMultimapOptions} [options] - An optional object that contains additional configuration options for the
31
+ * TreeMultimap.
32
32
  */
33
33
  constructor(options) {
34
34
  super(options);
@@ -47,7 +47,7 @@ class TreeMultiset extends avl_tree_1.AVLTree {
47
47
  * @returns A new instance of the BSTNode class with the specified key, value, and count (if provided).
48
48
  */
49
49
  createNode(key, value, count) {
50
- return new TreeMultisetNode(key, value, count);
50
+ return new TreeMultimapNode(key, value, count);
51
51
  }
52
52
  /**
53
53
  * The `add` function adds a new node to a binary search tree, updating the count if the key already
@@ -66,7 +66,7 @@ class TreeMultiset extends avl_tree_1.AVLTree {
66
66
  if (keyOrNode === null)
67
67
  return undefined;
68
68
  let inserted = undefined, newNode;
69
- if (keyOrNode instanceof TreeMultisetNode) {
69
+ if (keyOrNode instanceof TreeMultimapNode) {
70
70
  newNode = this.createNode(keyOrNode.key, keyOrNode.value, keyOrNode.count);
71
71
  }
72
72
  else if (keyOrNode === undefined) {
@@ -175,10 +175,10 @@ class TreeMultiset extends avl_tree_1.AVLTree {
175
175
  }
176
176
  }
177
177
  /**
178
- * The `addMany` function adds multiple keys or nodes to a TreeMultiset and returns an array of the
178
+ * The `addMany` function adds multiple keys or nodes to a TreeMultimap and returns an array of the
179
179
  * inserted nodes.
180
180
  * @param {(BTNKey | undefined)[] | (N | undefined)[]} keysOrNodes - An array of keys or nodes to be
181
- * added to the multiset. Each element can be either a BTNKey or a TreeMultisetNode.
181
+ * added to the multiset. Each element can be either a BTNKey or a TreeMultimapNode.
182
182
  * @param {V[]} [data] - The `data` parameter is an optional array of values that correspond
183
183
  * to the keys or nodes being added to the multiset. It is used to associate additional data with
184
184
  * each key or node.
@@ -188,7 +188,7 @@ class TreeMultiset extends avl_tree_1.AVLTree {
188
188
  const inserted = [];
189
189
  for (let i = 0; i < keysOrNodes.length; i++) {
190
190
  const keyOrNode = keysOrNodes[i];
191
- if (keyOrNode instanceof TreeMultisetNode) {
191
+ if (keyOrNode instanceof TreeMultimapNode) {
192
192
  inserted.push(this.add(keyOrNode.key, keyOrNode.value, keyOrNode.count));
193
193
  continue;
194
194
  }
@@ -355,4 +355,4 @@ class TreeMultiset extends avl_tree_1.AVLTree {
355
355
  this._count = v;
356
356
  }
357
357
  }
358
- exports.TreeMultiset = TreeMultiset;
358
+ exports.TreeMultimap = TreeMultimap;
@@ -2,5 +2,5 @@ export * from './binary-tree';
2
2
  export * from './bst';
3
3
  export * from './avl-tree';
4
4
  export * from './segment-tree';
5
- export * from './tree-multiset';
5
+ export * from './tree-multimap';
6
6
  export * from './rb-tree';
@@ -18,5 +18,5 @@ __exportStar(require("./binary-tree"), exports);
18
18
  __exportStar(require("./bst"), exports);
19
19
  __exportStar(require("./avl-tree"), exports);
20
20
  __exportStar(require("./segment-tree"), exports);
21
- __exportStar(require("./tree-multiset"), exports);
21
+ __exportStar(require("./tree-multimap"), exports);
22
22
  __exportStar(require("./rb-tree"), exports);
@@ -0,0 +1,4 @@
1
+ import { TreeMultimapNode } from '../../../data-structures';
2
+ import { AVLTreeOptions } from './avl-tree';
3
+ export type TreeMultimapNodeNested<T> = TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, any>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>;
4
+ export type TreeMultimapOptions = Omit<AVLTreeOptions, 'isMergeDuplicatedNodeByKey'> & {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "min-heap-typed",
3
- "version": "1.42.4",
3
+ "version": "1.42.5",
4
4
  "description": "Min Heap. Javascript & Typescript Data Structure.",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {
@@ -132,6 +132,6 @@
132
132
  "typescript": "^4.9.5"
133
133
  },
134
134
  "dependencies": {
135
- "data-structure-typed": "^1.42.4"
135
+ "data-structure-typed": "^1.42.5"
136
136
  }
137
137
  }
@@ -4,4 +4,4 @@ export * from './binary-indexed-tree';
4
4
  export * from './segment-tree';
5
5
  export * from './avl-tree';
6
6
  export * from './rb-tree';
7
- export * from './tree-multiset';
7
+ export * from './tree-multimap';
@@ -5,14 +5,14 @@
5
5
  * @copyright Copyright (c) 2022 Tyler Zeng <zrwusa@gmail.com>
6
6
  * @license MIT License
7
7
  */
8
- import type {BTNKey, TreeMultisetNodeNested, TreeMultisetOptions} from '../../types';
8
+ import type {BTNKey, TreeMultimapNodeNested, TreeMultimapOptions} from '../../types';
9
9
  import {BinaryTreeDeletedResult, BTNCallback, CP, FamilyPosition, IterationType} from '../../types';
10
10
  import {IBinaryTree} from '../../interfaces';
11
11
  import {AVLTree, AVLTreeNode} from './avl-tree';
12
12
 
13
- export class TreeMultisetNode<
13
+ export class TreeMultimapNode<
14
14
  V = any,
15
- N extends TreeMultisetNode<V, N> = TreeMultisetNodeNested<V>
15
+ N extends TreeMultimapNode<V, N> = TreeMultimapNodeNested<V>
16
16
  > extends AVLTreeNode<V, N> {
17
17
  count: number;
18
18
 
@@ -33,19 +33,19 @@ export class TreeMultisetNode<
33
33
  }
34
34
 
35
35
  /**
36
- * The only distinction between a TreeMultiset and a AVLTree lies in the ability of the former to store duplicate nodes through the utilization of counters.
36
+ * The only distinction between a TreeMultimap and a AVLTree lies in the ability of the former to store duplicate nodes through the utilization of counters.
37
37
  */
38
- export class TreeMultiset<V = any, N extends TreeMultisetNode<V, N> = TreeMultisetNode<V, TreeMultisetNodeNested<V>>>
38
+ export class TreeMultimap<V = any, N extends TreeMultimapNode<V, N> = TreeMultimapNode<V, TreeMultimapNodeNested<V>>>
39
39
  extends AVLTree<V, N>
40
40
  implements IBinaryTree<V, N>
41
41
  {
42
42
  /**
43
- * The constructor function for a TreeMultiset class in TypeScript, which extends another class and sets an option to
43
+ * The constructor function for a TreeMultimap class in TypeScript, which extends another class and sets an option to
44
44
  * merge duplicated values.
45
- * @param {TreeMultisetOptions} [options] - An optional object that contains additional configuration options for the
46
- * TreeMultiset.
45
+ * @param {TreeMultimapOptions} [options] - An optional object that contains additional configuration options for the
46
+ * TreeMultimap.
47
47
  */
48
- constructor(options?: TreeMultisetOptions) {
48
+ constructor(options?: TreeMultimapOptions) {
49
49
  super(options);
50
50
  }
51
51
 
@@ -65,7 +65,7 @@ export class TreeMultiset<V = any, N extends TreeMultisetNode<V, N> = TreeMultis
65
65
  * @returns A new instance of the BSTNode class with the specified key, value, and count (if provided).
66
66
  */
67
67
  override createNode(key: BTNKey, value?: V, count?: number): N {
68
- return new TreeMultisetNode(key, value, count) as N;
68
+ return new TreeMultimapNode(key, value, count) as N;
69
69
  }
70
70
 
71
71
  /**
@@ -85,7 +85,7 @@ export class TreeMultiset<V = any, N extends TreeMultisetNode<V, N> = TreeMultis
85
85
  if(keyOrNode === null) return undefined;
86
86
  let inserted: N | undefined = undefined,
87
87
  newNode: N | undefined;
88
- if (keyOrNode instanceof TreeMultisetNode) {
88
+ if (keyOrNode instanceof TreeMultimapNode) {
89
89
  newNode = this.createNode(keyOrNode.key, keyOrNode.value, keyOrNode.count);
90
90
  } else if (keyOrNode === undefined) {
91
91
  newNode = undefined;
@@ -184,10 +184,10 @@ export class TreeMultiset<V = any, N extends TreeMultisetNode<V, N> = TreeMultis
184
184
  }
185
185
 
186
186
  /**
187
- * The `addMany` function adds multiple keys or nodes to a TreeMultiset and returns an array of the
187
+ * The `addMany` function adds multiple keys or nodes to a TreeMultimap and returns an array of the
188
188
  * inserted nodes.
189
189
  * @param {(BTNKey | undefined)[] | (N | undefined)[]} keysOrNodes - An array of keys or nodes to be
190
- * added to the multiset. Each element can be either a BTNKey or a TreeMultisetNode.
190
+ * added to the multiset. Each element can be either a BTNKey or a TreeMultimapNode.
191
191
  * @param {V[]} [data] - The `data` parameter is an optional array of values that correspond
192
192
  * to the keys or nodes being added to the multiset. It is used to associate additional data with
193
193
  * each key or node.
@@ -199,7 +199,7 @@ export class TreeMultiset<V = any, N extends TreeMultisetNode<V, N> = TreeMultis
199
199
  for (let i = 0; i < keysOrNodes.length; i++) {
200
200
  const keyOrNode = keysOrNodes[i];
201
201
 
202
- if (keyOrNode instanceof TreeMultisetNode) {
202
+ if (keyOrNode instanceof TreeMultimapNode) {
203
203
  inserted.push(this.add(keyOrNode.key, keyOrNode.value, keyOrNode.count));
204
204
  continue;
205
205
  }
@@ -2,5 +2,5 @@ export * from './binary-tree';
2
2
  export * from './bst';
3
3
  export * from './avl-tree';
4
4
  export * from './segment-tree';
5
- export * from './tree-multiset';
5
+ export * from './tree-multimap';
6
6
  export * from './rb-tree';
@@ -0,0 +1,6 @@
1
+ import {TreeMultimapNode} from '../../../data-structures';
2
+ import {AVLTreeOptions} from './avl-tree';
3
+
4
+ export type TreeMultimapNodeNested<T> = TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, TreeMultimapNode<T, any>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
5
+
6
+ export type TreeMultimapOptions = Omit<AVLTreeOptions, 'isMergeDuplicatedNodeByKey'> & {}
@@ -1,4 +0,0 @@
1
- import { TreeMultisetNode } from '../../../data-structures';
2
- import { AVLTreeOptions } from './avl-tree';
3
- export type TreeMultisetNodeNested<T> = TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, any>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>;
4
- export type TreeMultisetOptions = Omit<AVLTreeOptions, 'isMergeDuplicatedNodeByKey'> & {};
@@ -1,6 +0,0 @@
1
- import {TreeMultisetNode} from '../../../data-structures';
2
- import {AVLTreeOptions} from './avl-tree';
3
-
4
- export type TreeMultisetNodeNested<T> = TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, TreeMultisetNode<T, any>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
5
-
6
- export type TreeMultisetOptions = Omit<AVLTreeOptions, 'isMergeDuplicatedNodeByKey'> & {}