@zengrid/shared 1.0.4 → 1.1.0

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.
Files changed (120) hide show
  1. package/README.md +4 -0
  2. package/dist/README.md +4 -0
  3. package/dist/index.cjs.js +3085 -1783
  4. package/dist/index.esm.js +3080 -1783
  5. package/dist/package.json +1 -1
  6. package/dist/src/algorithms/graph/bfs.d.ts.map +1 -1
  7. package/dist/src/algorithms/graph/dfs.d.ts.map +1 -1
  8. package/dist/src/algorithms/graph/index.d.ts +1 -1
  9. package/dist/src/algorithms/graph/index.d.ts.map +1 -1
  10. package/dist/src/algorithms/index.d.ts +5 -5
  11. package/dist/src/algorithms/index.d.ts.map +1 -1
  12. package/dist/src/algorithms/pattern/index.d.ts +2 -2
  13. package/dist/src/algorithms/pattern/index.d.ts.map +1 -1
  14. package/dist/src/algorithms/pattern/sequence-detector.d.ts.map +1 -1
  15. package/dist/src/algorithms/search/index.d.ts +2 -2
  16. package/dist/src/algorithms/search/index.d.ts.map +1 -1
  17. package/dist/src/algorithms/sorting/comparators.d.ts.map +1 -1
  18. package/dist/src/algorithms/sorting/index.d.ts +1 -1
  19. package/dist/src/algorithms/sorting/index.d.ts.map +1 -1
  20. package/dist/src/algorithms/sorting/timsort-gallop.d.ts +21 -0
  21. package/dist/src/algorithms/sorting/timsort-gallop.d.ts.map +1 -0
  22. package/dist/src/algorithms/sorting/timsort-merge.d.ts +6 -0
  23. package/dist/src/algorithms/sorting/timsort-merge.d.ts.map +1 -0
  24. package/dist/src/algorithms/sorting/timsort-run.d.ts +38 -0
  25. package/dist/src/algorithms/sorting/timsort-run.d.ts.map +1 -0
  26. package/dist/src/algorithms/sorting/timsort.d.ts.map +1 -1
  27. package/dist/src/algorithms/sorting/timsort.interface.d.ts +32 -0
  28. package/dist/src/algorithms/sorting/timsort.interface.d.ts.map +1 -0
  29. package/dist/src/data-structures/column-store/column-store.d.ts.map +1 -1
  30. package/dist/src/data-structures/column-store/column-store.interface.d.ts.map +1 -1
  31. package/dist/src/data-structures/command-stack/command-stack.d.ts.map +1 -1
  32. package/dist/src/data-structures/disjoint-set/disjoint-set.d.ts.map +1 -1
  33. package/dist/src/data-structures/disjoint-set/index.d.ts +1 -1
  34. package/dist/src/data-structures/disjoint-set/index.d.ts.map +1 -1
  35. package/dist/src/data-structures/index-map/index-map.d.ts.map +1 -1
  36. package/dist/src/data-structures/index-map/index.d.ts +1 -1
  37. package/dist/src/data-structures/index-map/index.d.ts.map +1 -1
  38. package/dist/src/data-structures/index.d.ts +8 -8
  39. package/dist/src/data-structures/index.d.ts.map +1 -1
  40. package/dist/src/data-structures/interval-tree/interval-tree.d.ts +0 -83
  41. package/dist/src/data-structures/interval-tree/interval-tree.d.ts.map +1 -1
  42. package/dist/src/data-structures/interval-tree/node.d.ts +34 -0
  43. package/dist/src/data-structures/interval-tree/node.d.ts.map +1 -0
  44. package/dist/src/data-structures/interval-tree/operations/balance.d.ts +34 -0
  45. package/dist/src/data-structures/interval-tree/operations/balance.d.ts.map +1 -0
  46. package/dist/src/data-structures/interval-tree/operations/delete.d.ts +26 -0
  47. package/dist/src/data-structures/interval-tree/operations/delete.d.ts.map +1 -0
  48. package/dist/src/data-structures/interval-tree/operations/insert.d.ts +19 -0
  49. package/dist/src/data-structures/interval-tree/operations/insert.d.ts.map +1 -0
  50. package/dist/src/data-structures/interval-tree/operations/search.d.ts +46 -0
  51. package/dist/src/data-structures/interval-tree/operations/search.d.ts.map +1 -0
  52. package/dist/src/data-structures/interval-tree/operations/traversal.d.ts +29 -0
  53. package/dist/src/data-structures/interval-tree/operations/traversal.d.ts.map +1 -0
  54. package/dist/src/data-structures/interval-tree/operations/utilities.d.ts +30 -0
  55. package/dist/src/data-structures/interval-tree/operations/utilities.d.ts.map +1 -0
  56. package/dist/src/data-structures/lru-cache/index.d.ts +1 -1
  57. package/dist/src/data-structures/lru-cache/index.d.ts.map +1 -1
  58. package/dist/src/data-structures/lru-cache/lru-cache.d.ts.map +1 -1
  59. package/dist/src/data-structures/prefix-sum-array/prefix-sum-array.d.ts.map +1 -1
  60. package/dist/src/data-structures/ring-buffer.d.ts +96 -0
  61. package/dist/src/data-structures/ring-buffer.d.ts.map +1 -0
  62. package/dist/src/data-structures/rtree/rtree.d.ts.map +1 -1
  63. package/dist/src/data-structures/segment-tree/aggregation-config.d.ts +6 -0
  64. package/dist/src/data-structures/segment-tree/aggregation-config.d.ts.map +1 -0
  65. package/dist/src/data-structures/segment-tree/index.d.ts +1 -1
  66. package/dist/src/data-structures/segment-tree/index.d.ts.map +1 -1
  67. package/dist/src/data-structures/segment-tree/lazy-propagation.d.ts +5 -0
  68. package/dist/src/data-structures/segment-tree/lazy-propagation.d.ts.map +1 -0
  69. package/dist/src/data-structures/segment-tree/segment-tree.d.ts +1 -105
  70. package/dist/src/data-structures/segment-tree/segment-tree.d.ts.map +1 -1
  71. package/dist/src/data-structures/segment-tree/segment-tree.interface.d.ts.map +1 -1
  72. package/dist/src/data-structures/segment-tree/tree-builder.d.ts +3 -0
  73. package/dist/src/data-structures/segment-tree/tree-builder.d.ts.map +1 -0
  74. package/dist/src/data-structures/segment-tree/tree-query.d.ts +3 -0
  75. package/dist/src/data-structures/segment-tree/tree-query.d.ts.map +1 -0
  76. package/dist/src/data-structures/segment-tree/tree-search.d.ts +2 -0
  77. package/dist/src/data-structures/segment-tree/tree-search.d.ts.map +1 -0
  78. package/dist/src/data-structures/segment-tree/tree-update.d.ts +4 -0
  79. package/dist/src/data-structures/segment-tree/tree-update.d.ts.map +1 -0
  80. package/dist/src/data-structures/segment-tree/tree-validation.d.ts +3 -0
  81. package/dist/src/data-structures/segment-tree/tree-validation.d.ts.map +1 -0
  82. package/dist/src/data-structures/skip-list/skip-list.d.ts.map +1 -1
  83. package/dist/src/data-structures/sparse-matrix/sparse-matrix.d.ts.map +1 -1
  84. package/dist/src/data-structures/suffix-array/suffix-array.d.ts.map +1 -1
  85. package/dist/src/data-structures/trie/index.d.ts +1 -1
  86. package/dist/src/data-structures/trie/index.d.ts.map +1 -1
  87. package/dist/src/data-structures/trie/trie.d.ts.map +1 -1
  88. package/dist/src/index.d.ts +13 -10
  89. package/dist/src/index.d.ts.map +1 -1
  90. package/dist/src/patterns/coordinator.d.ts.map +1 -1
  91. package/dist/src/patterns/event-emitter.d.ts.map +1 -1
  92. package/dist/src/patterns/factory.d.ts.map +1 -1
  93. package/dist/src/patterns/index.d.ts +4 -4
  94. package/dist/src/patterns/index.d.ts.map +1 -1
  95. package/dist/src/patterns/state-machine.d.ts.map +1 -1
  96. package/dist/src/reactive/batch-processor.d.ts +80 -0
  97. package/dist/src/reactive/batch-processor.d.ts.map +1 -0
  98. package/dist/src/reactive/core/batch-manager.d.ts +48 -0
  99. package/dist/src/reactive/core/batch-manager.d.ts.map +1 -0
  100. package/dist/src/reactive/core/batch-queue.d.ts +39 -0
  101. package/dist/src/reactive/core/batch-queue.d.ts.map +1 -0
  102. package/dist/src/reactive/core/event-handler-registry.d.ts +52 -0
  103. package/dist/src/reactive/core/event-handler-registry.d.ts.map +1 -0
  104. package/dist/src/reactive/core/event-mapper.d.ts +37 -0
  105. package/dist/src/reactive/core/event-mapper.d.ts.map +1 -0
  106. package/dist/src/reactive/core/pool-stats.d.ts +47 -0
  107. package/dist/src/reactive/core/pool-stats.d.ts.map +1 -0
  108. package/dist/src/reactive/core/subscription-manager.d.ts +46 -0
  109. package/dist/src/reactive/core/subscription-manager.d.ts.map +1 -0
  110. package/dist/src/reactive/event-delegator.d.ts +84 -0
  111. package/dist/src/reactive/event-delegator.d.ts.map +1 -0
  112. package/dist/src/reactive/index.d.ts +61 -0
  113. package/dist/src/reactive/index.d.ts.map +1 -0
  114. package/dist/src/reactive/interfaces.d.ts +207 -0
  115. package/dist/src/reactive/interfaces.d.ts.map +1 -0
  116. package/dist/src/reactive/object-pool.d.ts +97 -0
  117. package/dist/src/reactive/object-pool.d.ts.map +1 -0
  118. package/dist/src/reactive/reactive-state.d.ts +132 -0
  119. package/dist/src/reactive/reactive-state.d.ts.map +1 -0
  120. package/package.json +52 -52
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Delete Operations
3
+ * Handles deletion of intervals from the tree
4
+ */
5
+ import type { Interval, IntervalData } from '../interval-tree.interface';
6
+ import { IntervalNode } from '../node';
7
+ /**
8
+ * Delete an interval from the tree
9
+ *
10
+ * @param node - Root of the subtree
11
+ * @param interval - Interval to delete
12
+ * @param comparator - Comparator function for intervals
13
+ * @param balanced - Whether to balance the tree
14
+ * @param onDelete - Callback when a node is deleted
15
+ * @returns New root of the subtree (null if deleted)
16
+ */
17
+ export declare function deleteNode<T>(node: IntervalNode<T> | null, interval: IntervalData<T>, comparator: (a: Interval, b: Interval) => number, balanced: boolean, onDelete?: () => void): IntervalNode<T> | null;
18
+ /**
19
+ * Find an interval by ID in the tree
20
+ *
21
+ * @param node - Root of the subtree
22
+ * @param id - ID to search for
23
+ * @returns The interval data if found, null otherwise
24
+ */
25
+ export declare function findById<T>(node: IntervalNode<T> | null, id: string | number): IntervalData<T> | null;
26
+ //# sourceMappingURL=delete.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../../../../src/data-structures/interval-tree/operations/delete.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,EAAE,YAAY,EAAwC,MAAM,SAAS,CAAC;AAG7E;;;;;;;;;GASG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAC1B,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,EAC5B,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,EACzB,UAAU,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,KAAK,MAAM,EAChD,QAAQ,EAAE,OAAO,EACjB,QAAQ,CAAC,EAAE,MAAM,IAAI,GACpB,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,CAmDxB;AAED;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EACxB,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,EAC5B,EAAE,EAAE,MAAM,GAAG,MAAM,GAClB,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,CAQxB"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Insert Operations
3
+ * Handles insertion of intervals into the tree
4
+ */
5
+ import type { Interval, IntervalData } from '../interval-tree.interface';
6
+ import { IntervalNode } from '../node';
7
+ /**
8
+ * Insert an interval into the tree
9
+ *
10
+ * @param node - Root of the subtree
11
+ * @param interval - Interval to insert
12
+ * @param comparator - Comparator function for intervals
13
+ * @param allowDuplicates - Whether to allow duplicate intervals
14
+ * @param balanced - Whether to balance the tree
15
+ * @param onInsert - Callback called when a new node is inserted
16
+ * @returns New root of the subtree
17
+ */
18
+ export declare function insertNode<T>(node: IntervalNode<T> | null, interval: IntervalData<T>, comparator: (a: Interval, b: Interval) => number, allowDuplicates: boolean, balanced: boolean, onInsert?: () => void): IntervalNode<T>;
19
+ //# sourceMappingURL=insert.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"insert.d.ts","sourceRoot":"","sources":["../../../../../src/data-structures/interval-tree/operations/insert.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,EAAE,YAAY,EAA2B,MAAM,SAAS,CAAC;AAGhE;;;;;;;;;;GAUG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAC1B,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,EAC5B,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,EACzB,UAAU,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,KAAK,MAAM,EAChD,eAAe,EAAE,OAAO,EACxB,QAAQ,EAAE,OAAO,EACjB,QAAQ,CAAC,EAAE,MAAM,IAAI,GACpB,YAAY,CAAC,CAAC,CAAC,CA2CjB"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Search Operations
3
+ * Handles various search queries on the interval tree
4
+ */
5
+ import type { Interval, IntervalData } from '../interval-tree.interface';
6
+ import { IntervalNode } from '../node';
7
+ /**
8
+ * Find all intervals that overlap with the given interval
9
+ *
10
+ * @param node - Root of the subtree
11
+ * @param interval - Query interval
12
+ * @param result - Array to collect results
13
+ */
14
+ export declare function searchOverlap<T>(node: IntervalNode<T> | null, interval: Interval, result: IntervalData<T>[]): void;
15
+ /**
16
+ * Check if any interval overlaps with the given interval
17
+ *
18
+ * @param node - Root of the subtree
19
+ * @param interval - Query interval
20
+ * @returns true if any overlap exists
21
+ */
22
+ export declare function hasOverlap<T>(node: IntervalNode<T> | null, interval: Interval): boolean;
23
+ /**
24
+ * Find all intervals completely contained within the given interval
25
+ *
26
+ * @param node - Root of the subtree
27
+ * @param interval - Containing interval
28
+ * @param result - Array to collect results
29
+ */
30
+ export declare function searchContained<T>(node: IntervalNode<T> | null, interval: Interval, result: IntervalData<T>[]): void;
31
+ /**
32
+ * Find all intervals that completely contain the given interval
33
+ *
34
+ * @param node - Root of the subtree
35
+ * @param interval - Interval to be contained
36
+ * @param result - Array to collect results
37
+ */
38
+ export declare function searchContaining<T>(node: IntervalNode<T> | null, interval: Interval, result: IntervalData<T>[]): void;
39
+ /**
40
+ * Find the interval with the maximum endpoint
41
+ *
42
+ * @param node - Root of the subtree
43
+ * @returns Interval with the maximum endpoint
44
+ */
45
+ export declare function findMaxEndpoint<T>(node: IntervalNode<T>): IntervalData<T>;
46
+ //# sourceMappingURL=search.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../../../../src/data-structures/interval-tree/operations/search.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAEzE,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAC7B,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,EAC5B,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,GACxB,IAAI,CAmBN;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAqBvF;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAC/B,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,EAC5B,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,GACxB,IAAI,CAiBN;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAChC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,EAC5B,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,GACxB,IAAI,CAiBN;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAmBzE"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Traversal Operations
3
+ * Handles traversal and iteration over the tree
4
+ */
5
+ import type { IntervalData } from '../interval-tree.interface';
6
+ import { IntervalNode } from '../node';
7
+ /**
8
+ * Inorder traversal of the tree
9
+ *
10
+ * @param node - Root of the subtree
11
+ * @param result - Array to collect results
12
+ */
13
+ export declare function inorder<T>(node: IntervalNode<T> | null, result: IntervalData<T>[]): void;
14
+ /**
15
+ * Iterate over all intervals in the tree
16
+ *
17
+ * @param node - Root of the subtree
18
+ * @param callback - Function to call for each interval
19
+ */
20
+ export declare function forEach<T>(node: IntervalNode<T> | null, callback: (interval: IntervalData<T>) => void): void;
21
+ /**
22
+ * Validate tree structure
23
+ *
24
+ * @param node - Root of the subtree
25
+ * @param comparator - Comparator function for intervals
26
+ * @returns true if valid
27
+ */
28
+ export declare function validateNode<T>(node: IntervalNode<T> | null, comparator: (a: IntervalData<T>, b: IntervalData<T>) => number): boolean;
29
+ //# sourceMappingURL=traversal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"traversal.d.ts","sourceRoot":"","sources":["../../../../../src/data-structures/interval-tree/operations/traversal.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAKxF;AAED;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,CAAC,EACvB,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,EAC5B,QAAQ,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,IAAI,GAC5C,IAAI,CAKN;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAC5B,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,EAC5B,UAAU,EAAE,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,MAAM,GAC7D,OAAO,CAuBT"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Utility Operations
3
+ * Static and helper methods for IntervalTree
4
+ */
5
+ import type { IIntervalTree, Interval, IntervalData, IntervalTreeOptions } from '../interval-tree.interface';
6
+ import type { IntervalNode } from '../node';
7
+ /**
8
+ * Filter intervals by a predicate
9
+ */
10
+ export declare function filter<T>(tree: IIntervalTree<T>, root: IntervalNode<T> | null, predicate: (interval: IntervalData<T>) => boolean, options: IntervalTreeOptions): IIntervalTree<T>;
11
+ /**
12
+ * Map intervals to a new interval tree
13
+ */
14
+ export declare function map<T, U>(tree: IIntervalTree<T>, root: IntervalNode<T> | null, mapper: (data: T, interval: Interval) => U, options: IntervalTreeOptions): IIntervalTree<U>;
15
+ /**
16
+ * Get tree structure as string
17
+ */
18
+ export declare function treeToString<T>(root: IntervalNode<T> | null, balanced: boolean): string;
19
+ /**
20
+ * Validate tree structure
21
+ */
22
+ export declare function validate<T>(root: IntervalNode<T> | null, comparator: (a: Interval, b: Interval) => number): boolean;
23
+ /**
24
+ * Create IntervalTree from array of intervals
25
+ */
26
+ export declare function fromArray<T>(IntervalTreeClass: new (opts?: IntervalTreeOptions) => IIntervalTree<T>, intervals: Array<{
27
+ interval: Interval;
28
+ data: T;
29
+ }>, options?: IntervalTreeOptions): IIntervalTree<T>;
30
+ //# sourceMappingURL=utilities.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utilities.d.ts","sourceRoot":"","sources":["../../../../../src/data-structures/interval-tree/operations/utilities.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,aAAa,EACb,QAAQ,EACR,YAAY,EACZ,mBAAmB,EACpB,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAI5C;;GAEG;AACH,wBAAgB,MAAM,CAAC,CAAC,EACtB,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC,EACtB,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,EAC5B,SAAS,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,OAAO,EACjD,OAAO,EAAE,mBAAmB,GAC3B,aAAa,CAAC,CAAC,CAAC,CAWlB;AAED;;GAEG;AACH,wBAAgB,GAAG,CAAC,CAAC,EAAE,CAAC,EACtB,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC,EACtB,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,EAC5B,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,KAAK,CAAC,EAC1C,OAAO,EAAE,mBAAmB,GAC3B,aAAa,CAAC,CAAC,CAAC,CAUlB;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,QAAQ,EAAE,OAAO,GAAG,MAAM,CAIvF;AAUD;;GAEG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EACxB,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,EAC5B,UAAU,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,KAAK,MAAM,GAC/C,OAAO,CAET;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,CAAC,EACzB,iBAAiB,EAAE,KAAK,IAAI,CAAC,EAAE,mBAAmB,KAAK,aAAa,CAAC,CAAC,CAAC,EACvE,SAAS,EAAE,KAAK,CAAC;IAAE,QAAQ,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,CAAC,CAAA;CAAE,CAAC,EACjD,OAAO,CAAC,EAAE,mBAAmB,GAC5B,aAAa,CAAC,CAAC,CAAC,CAMlB"}
@@ -1,3 +1,3 @@
1
1
  export { LRUCache } from './lru-cache';
2
- export type { ILRUCache, LRUCacheOptions, CacheEntry, CacheStats, } from './lru-cache.interface';
2
+ export type { ILRUCache, LRUCacheOptions, CacheEntry, CacheStats } from './lru-cache.interface';
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/lru-cache/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,YAAY,EACV,SAAS,EACT,eAAe,EACf,UAAU,EACV,UAAU,GACX,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/lru-cache/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"lru-cache.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/lru-cache/lru-cache.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,eAAe,EACf,UAAU,EACV,UAAU,EACX,MAAM,uBAAuB,CAAC;AAiB/B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,qBAAa,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAE,YAAW,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC;IACpD,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,GAAG,CAAS;IACpB,OAAO,CAAC,KAAK,CAAwB;IACrC,OAAO,CAAC,IAAI,CAA8B;IAC1C,OAAO,CAAC,IAAI,CAA8B;IAC1C,OAAO,CAAC,OAAO,CAAC,CAA6B;IAC7C,OAAO,CAAC,UAAU,CAAU;IAG5B,OAAO,CAAC,IAAI,CAAa;IACzB,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,SAAS,CAAa;IAC9B,OAAO,CAAC,IAAI,CAAa;gBAEb,OAAO,GAAE,eAAoB;IAYzC;;OAEG;IACH,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,SAAS;IA0B1B;;OAEG;IACH,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAyB3B;;OAEG;IACH,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,OAAO;IAYpB;;OAEG;IACH,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,OAAO;IAUvB;;OAEG;IACH,KAAK,IAAI,IAAI;IAab;;OAEG;IACH,IAAI,IAAI,MAAM;IAId;;OAEG;IACH,QAAQ,IAAI,UAAU;IAsBtB;;OAEG;IACH,IAAI,IAAI,CAAC,EAAE;IAYX;;OAEG;IACH,MAAM,IAAI,CAAC,EAAE;IAYb;;OAEG;IACH,OAAO,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IAoBpC;;OAEG;IACH,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,SAAS;IAa3B;;OAEG;IACH,MAAM,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAejC;;OAEG;IACH,OAAO,CAAC,SAAS;IAKjB;;OAEG;IACH,OAAO,CAAC,UAAU;IAOlB;;OAEG;IACH,OAAO,CAAC,SAAS;IAejB;;OAEG;IACH,OAAO,CAAC,UAAU;IAclB;;OAEG;IACH,OAAO,CAAC,QAAQ;CAcjB"}
1
+ {"version":3,"file":"lru-cache.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/lru-cache/lru-cache.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAiBhG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,qBAAa,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAE,YAAW,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC;IACpD,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,GAAG,CAAS;IACpB,OAAO,CAAC,KAAK,CAAwB;IACrC,OAAO,CAAC,IAAI,CAA8B;IAC1C,OAAO,CAAC,IAAI,CAA8B;IAC1C,OAAO,CAAC,OAAO,CAAC,CAA6B;IAC7C,OAAO,CAAC,UAAU,CAAU;IAG5B,OAAO,CAAC,IAAI,CAAa;IACzB,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,SAAS,CAAa;IAC9B,OAAO,CAAC,IAAI,CAAa;gBAEb,OAAO,GAAE,eAAoB;IAYzC;;OAEG;IACH,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,SAAS;IA0B1B;;OAEG;IACH,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAyB3B;;OAEG;IACH,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,OAAO;IAYpB;;OAEG;IACH,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,OAAO;IAUvB;;OAEG;IACH,KAAK,IAAI,IAAI;IAab;;OAEG;IACH,IAAI,IAAI,MAAM;IAId;;OAEG;IACH,QAAQ,IAAI,UAAU;IAsBtB;;OAEG;IACH,IAAI,IAAI,CAAC,EAAE;IAYX;;OAEG;IACH,MAAM,IAAI,CAAC,EAAE;IAYb;;OAEG;IACH,OAAO,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IAoBpC;;OAEG;IACH,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,SAAS;IAa3B;;OAEG;IACH,MAAM,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAejC;;OAEG;IACH,OAAO,CAAC,SAAS;IAKjB;;OAEG;IACH,OAAO,CAAC,UAAU;IAOlB;;OAEG;IACH,OAAO,CAAC,SAAS;IAejB;;OAEG;IACH,OAAO,CAAC,UAAU;IAclB;;OAEG;IACH,OAAO,CAAC,QAAQ;CAcjB"}
@@ -1 +1 @@
1
- {"version":3,"file":"prefix-sum-array.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/prefix-sum-array/prefix-sum-array.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,IAAI,eAAe,EACjC,qBAAqB,EACtB,MAAM,8BAA8B,CAAC;AAGtC;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,cAAe,YAAW,eAAe;IACpD,OAAO,CAAC,MAAM,CAAW;IACzB,OAAO,CAAC,IAAI,CAAW;gBAEX,OAAO,GAAE,qBAA0B;IAM/C;;;;OAIG;IACH,OAAO,CAAC,KAAK;IASb,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAShC,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IASjC,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM;IAS/C,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IA6BzC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAoB7C,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAS/B,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,UAAU,IAAI,aAAa,CAAC,MAAM,CAAC,CAEtC;IAED;;;OAGG;IACH,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IASzB;;;OAGG;IACH,GAAG,IAAI,MAAM,GAAG,SAAS;IASzB;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;;;OAIG;IACH,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,cAAc;CAG9C"}
1
+ {"version":3,"file":"prefix-sum-array.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/prefix-sum-array/prefix-sum-array.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,IAAI,eAAe,EACjC,qBAAqB,EACtB,MAAM,8BAA8B,CAAC;AAGtC;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,cAAe,YAAW,eAAe;IACpD,OAAO,CAAC,MAAM,CAAW;IACzB,OAAO,CAAC,IAAI,CAAW;gBAEX,OAAO,GAAE,qBAA0B;IAM/C;;;;OAIG;IACH,OAAO,CAAC,KAAK;IASb,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAOhC,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAOjC,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM;IAO/C,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IA6BzC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAkB7C,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAO/B,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,UAAU,IAAI,aAAa,CAAC,MAAM,CAAC,CAEtC;IAED;;;OAGG;IACH,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IASzB;;;OAGG;IACH,GAAG,IAAI,MAAM,GAAG,SAAS;IASzB;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;;;OAIG;IACH,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,cAAc;CAG9C"}
@@ -0,0 +1,96 @@
1
+ /**
2
+ * RingBuffer - Fixed-size circular buffer
3
+ *
4
+ * @description
5
+ * Circular buffer with fixed capacity that auto-evicts oldest items.
6
+ * Perfect for event history, logging, and debugging.
7
+ *
8
+ * @performance
9
+ * - push: O(1)
10
+ * - get: O(1)
11
+ * - toArray: O(n)
12
+ * - Memory: Fixed at capacity
13
+ *
14
+ * @example
15
+ * ```typescript
16
+ * const history = new RingBuffer<Event>(100);
17
+ *
18
+ * // Add events
19
+ * history.push(event1);
20
+ * history.push(event2);
21
+ * // ... 100 more events
22
+ *
23
+ * // Latest 100 events available
24
+ * const recent = history.toArray(); // [event1, event2, ...]
25
+ * ```
26
+ */
27
+ export declare class RingBuffer<T> {
28
+ private readonly capacity;
29
+ private buffer;
30
+ private head;
31
+ private tail;
32
+ private count;
33
+ constructor(capacity: number);
34
+ /**
35
+ * Add item to buffer (O(1))
36
+ * Auto-evicts oldest if full
37
+ */
38
+ push(item: T): void;
39
+ /**
40
+ * Get item at index (O(1))
41
+ * Index 0 = oldest, size()-1 = newest
42
+ */
43
+ get(index: number): T | undefined;
44
+ /**
45
+ * Get newest item (O(1))
46
+ */
47
+ newest(): T | undefined;
48
+ /**
49
+ * Get oldest item (O(1))
50
+ */
51
+ oldest(): T | undefined;
52
+ /**
53
+ * Convert to array (O(n))
54
+ * Returns [oldest, ..., newest]
55
+ */
56
+ toArray(): T[];
57
+ /**
58
+ * Get current size
59
+ */
60
+ size(): number;
61
+ /**
62
+ * Check if empty
63
+ */
64
+ isEmpty(): boolean;
65
+ /**
66
+ * Check if full
67
+ */
68
+ isFull(): boolean;
69
+ /**
70
+ * Get capacity
71
+ */
72
+ getCapacity(): number;
73
+ /**
74
+ * Clear buffer
75
+ */
76
+ clear(): void;
77
+ /**
78
+ * Iterate over items (oldest to newest)
79
+ */
80
+ forEach(callback: (item: T, index: number) => void): void;
81
+ /**
82
+ * Get item at index with bounds checking
83
+ * @throws Error if index is out of bounds
84
+ */
85
+ at(index: number): T;
86
+ /**
87
+ * Replace item at index
88
+ * @throws Error if index is out of bounds
89
+ */
90
+ set(index: number, item: T): void;
91
+ /**
92
+ * Get all items as a new array (alternative to toArray)
93
+ */
94
+ values(): T[];
95
+ }
96
+ //# sourceMappingURL=ring-buffer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ring-buffer.d.ts","sourceRoot":"","sources":["../../../src/data-structures/ring-buffer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,qBAAa,UAAU,CAAC,CAAC;IAMX,OAAO,CAAC,QAAQ,CAAC,QAAQ;IALrC,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,IAAI,CAAK;IACjB,OAAO,CAAC,IAAI,CAAK;IACjB,OAAO,CAAC,KAAK,CAAK;gBAEW,QAAQ,EAAE,MAAM;IAO7C;;;OAGG;IACH,IAAI,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI;IAYnB;;;OAGG;IACH,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;IASjC;;OAEG;IACH,MAAM,IAAI,CAAC,GAAG,SAAS;IAOvB;;OAEG;IACH,MAAM,IAAI,CAAC,GAAG,SAAS;IAKvB;;;OAGG;IACH,OAAO,IAAI,CAAC,EAAE;IASd;;OAEG;IACH,IAAI,IAAI,MAAM;IAId;;OAEG;IACH,OAAO,IAAI,OAAO;IAIlB;;OAEG;IACH,MAAM,IAAI,OAAO;IAIjB;;OAEG;IACH,WAAW,IAAI,MAAM;IAIrB;;OAEG;IACH,KAAK,IAAI,IAAI;IAMb;;OAEG;IACH,OAAO,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAOzD;;;OAGG;IACH,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC;IASpB;;;OAGG;IACH,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI;IASjC;;OAEG;IACH,MAAM,IAAI,CAAC,EAAE;CAGd"}
@@ -1 +1 @@
1
- {"version":3,"file":"rtree.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/rtree/rtree.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EACN,SAAS,EAET,YAAY,EACZ,iBAAiB,EACjB,UAAU,EACX,MAAM,mBAAmB,CAAC;AAmB3B;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,KAAK,CAAC,CAAC,GAAG,GAAG,CAAE,YAAW,MAAM,CAAC,CAAC,CAAC;IAC9C,OAAO,CAAC,IAAI,CAAe;IAC3B,OAAO,CAAC,OAAO,CAAyB;IACxC,OAAO,CAAC,SAAS,CAAa;gBAElB,OAAO,GAAE,YAAiB;IAStC;;OAEG;IACH,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI;IAMtC;;OAEG;IACH,MAAM,CAAC,IAAI,EAAE,SAAS,GAAG,iBAAiB,CAAC,CAAC,CAAC,EAAE;IAQ/C;;OAEG;IACH,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,iBAAiB,CAAC,CAAC,CAAC,EAAE;IAS3D;;OAEG;IACH,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,UAAU,GAAE,MAAU,EAAE,WAAW,GAAE,MAAiB,GAAG,iBAAiB,CAAC,CAAC,CAAC,EAAE;IAuD7G;;OAEG;IACH,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,OAAO;IAmC1C;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,GAAG,IAAI,iBAAiB,CAAC,CAAC,CAAC,EAAE;IAQ7B;;OAEG;IACH,OAAO,IAAI,OAAO;IAIlB;;OAEG;IACH,QAAQ,IAAI,UAAU;IAuBtB;;OAEG;IACH,OAAO,IAAI,IAAI;IAWf,OAAO,CAAC,UAAU;IAelB,OAAO,CAAC,MAAM;IAId,OAAO,CAAC,QAAQ;IAuBhB,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,mBAAmB;IAM3B,OAAO,CAAC,UAAU;IAsBlB,OAAO,CAAC,UAAU;IA6DlB,OAAO,CAAC,iBAAiB;IAazB,OAAO,CAAC,IAAI;IAIZ,OAAO,CAAC,KAAK;IA8Bb,OAAO,CAAC,QAAQ;IAgChB,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,WAAW;CAcpB"}
1
+ {"version":3,"file":"rtree.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/rtree/rtree.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EACN,SAAS,EAET,YAAY,EACZ,iBAAiB,EACjB,UAAU,EACX,MAAM,mBAAmB,CAAC;AAmB3B;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,KAAK,CAAC,CAAC,GAAG,GAAG,CAAE,YAAW,MAAM,CAAC,CAAC,CAAC;IAC9C,OAAO,CAAC,IAAI,CAAe;IAC3B,OAAO,CAAC,OAAO,CAAyB;IACxC,OAAO,CAAC,SAAS,CAAa;gBAElB,OAAO,GAAE,YAAiB;IAStC;;OAEG;IACH,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI;IAMtC;;OAEG;IACH,MAAM,CAAC,IAAI,EAAE,SAAS,GAAG,iBAAiB,CAAC,CAAC,CAAC,EAAE;IAQ/C;;OAEG;IACH,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,iBAAiB,CAAC,CAAC,CAAC,EAAE;IAS3D;;OAEG;IACH,OAAO,CACL,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,UAAU,GAAE,MAAU,EACtB,WAAW,GAAE,MAAiB,GAC7B,iBAAiB,CAAC,CAAC,CAAC,EAAE;IAuDzB;;OAEG;IACH,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,OAAO;IAmC1C;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,GAAG,IAAI,iBAAiB,CAAC,CAAC,CAAC,EAAE;IAQ7B;;OAEG;IACH,OAAO,IAAI,OAAO;IAIlB;;OAEG;IACH,QAAQ,IAAI,UAAU;IAuBtB;;OAEG;IACH,OAAO,IAAI,IAAI;IAWf,OAAO,CAAC,UAAU;IAmBlB,OAAO,CAAC,MAAM;IAId,OAAO,CAAC,QAAQ;IAuBhB,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,mBAAmB;IAM3B,OAAO,CAAC,UAAU;IAsBlB,OAAO,CAAC,UAAU;IA+DlB,OAAO,CAAC,iBAAiB;IAazB,OAAO,CAAC,IAAI;IAIZ,OAAO,CAAC,KAAK;IA8Bb,OAAO,CAAC,QAAQ;IA6BhB,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,WAAW;CAcpB"}
@@ -0,0 +1,6 @@
1
+ import { AggregationType } from './segment-tree.interface';
2
+ export declare function getAggregationConfig(type: AggregationType): {
3
+ fn: (a: number, b: number) => number;
4
+ identity: number;
5
+ };
6
+ //# sourceMappingURL=aggregation-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aggregation-config.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/segment-tree/aggregation-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEzE,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,eAAe,GAAG;IAC3D,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;IACrC,QAAQ,EAAE,MAAM,CAAC;CAClB,CAiBA"}
@@ -1,4 +1,4 @@
1
1
  export { SegmentTree } from './segment-tree';
2
- export type { ISegmentTree, SegmentTreeOptions, AggregateFunction, } from './segment-tree.interface';
2
+ export type { ISegmentTree, SegmentTreeOptions, AggregateFunction } from './segment-tree.interface';
3
3
  export { Aggregations, SegmentTreeUtils, AggregationType } from './segment-tree.interface';
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/segment-tree/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,YAAY,EACV,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/segment-tree/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,YAAY,EAAE,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AACpG,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { AggregateFunction } from './segment-tree.interface';
2
+ import { AggregationType } from './segment-tree.interface';
3
+ export declare function pushDown<T>(tree: T[], lazy: T[], aggregate: AggregateFunction<T>, identityValue: T, type: AggregationType, node: number, start: number, end: number): void;
4
+ export declare function applyUpdate<T>(nodeValue: T, updateValue: T, rangeSize: number, aggregate: AggregateFunction<T>, type: AggregationType): T;
5
+ //# sourceMappingURL=lazy-propagation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lazy-propagation.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/segment-tree/lazy-propagation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAoB,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE7E,wBAAgB,QAAQ,CAAC,CAAC,EACxB,IAAI,EAAE,CAAC,EAAE,EACT,IAAI,EAAE,CAAC,EAAE,EACT,SAAS,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAC/B,aAAa,EAAE,CAAC,EAChB,IAAI,EAAE,eAAe,EACrB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,GACV,IAAI,CAgBN;AAED,wBAAgB,WAAW,CAAC,CAAC,EAC3B,SAAS,EAAE,CAAC,EACZ,WAAW,EAAE,CAAC,EACd,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAC/B,IAAI,EAAE,eAAe,GACpB,CAAC,CAMH"}
@@ -1,38 +1,5 @@
1
- /**
2
- * Segment Tree implementation
3
- * Efficient range query and update data structure
4
- */
5
1
  import type { ISegmentTree, SegmentTreeOptions, AggregateFunction } from './segment-tree.interface';
6
2
  import { AggregationType } from './segment-tree.interface';
7
- /**
8
- * Segment Tree - Efficient range queries and updates
9
- *
10
- * Implementation:
11
- * - Array-based complete binary tree
12
- * - Each node stores the aggregate of its range
13
- * - Supports lazy propagation for efficient range updates
14
- * - Generic type T for flexibility (numbers, objects, etc.)
15
- *
16
- * @example
17
- * ```typescript
18
- * // Sum queries
19
- * const tree = new SegmentTree({ values: [1, 3, 5, 7, 9, 11], type: 'sum' });
20
- * tree.query(1, 3); // Returns 15 (3 + 5 + 7)
21
- * tree.update(1, 10); // Change 3 to 10
22
- * tree.query(1, 3); // Returns 22 (10 + 5 + 7)
23
- *
24
- * // Min queries
25
- * const minTree = new SegmentTree({ values: [5, 2, 8, 1, 9], type: 'min' });
26
- * minTree.query(0, 4); // Returns 1
27
- * minTree.update(3, 10);
28
- * minTree.query(0, 4); // Returns 2
29
- *
30
- * // Status bar aggregation example
31
- * const cellValues = [100, 200, 150, 300, 250];
32
- * const sumTree = new SegmentTree({ values: cellValues, type: 'sum' });
33
- * sumTree.query(1, 3); // Sum of cells 1-3: 650
34
- * ```
35
- */
36
3
  export declare class SegmentTree<T> implements ISegmentTree<T> {
37
4
  private tree;
38
5
  private lazy;
@@ -43,92 +10,21 @@ export declare class SegmentTree<T> implements ISegmentTree<T> {
43
10
  private useLazy;
44
11
  private _type;
45
12
  constructor(options: SegmentTreeOptions<T>);
46
- /**
47
- * Get aggregation configuration
48
- */
49
- private getAggregationConfig;
50
- /**
51
- * Build the segment tree recursively
52
- */
53
- private buildTree;
54
- /**
55
- * Push lazy updates down to children
56
- */
57
13
  private pushDown;
58
- /**
59
- * Apply update to a node value
60
- * For SUM: multiply update by range size
61
- * For MIN/MAX: just use the update value
62
- */
63
- private applyUpdate;
64
- /**
65
- * Query range [left, right]
66
- */
67
14
  query(left: number, right: number): T;
68
- /**
69
- * Recursive query helper
70
- */
71
- private queryTree;
72
- /**
73
- * Update a single element
74
- */
75
15
  update(index: number, value: T): void;
76
- /**
77
- * Recursive update helper
78
- */
79
- private updateTree;
80
- /**
81
- * Update a range [left, right]
82
- */
83
16
  rangeUpdate(left: number, right: number, value: T): void;
84
- /**
85
- * Lazy range update helper
86
- */
87
- private rangeUpdateLazy;
88
- /**
89
- * Get value at index
90
- */
91
17
  get(index: number): T;
92
- /**
93
- * Build tree from new array
94
- */
95
18
  build(arr: T[]): void;
96
- /**
97
- * Convert tree to array
98
- */
99
19
  toArray(): T[];
100
- /**
101
- * Find first index where predicate is true
102
- */
103
20
  findFirst(left: number, predicate: (value: T) => boolean): number;
104
- /**
105
- * Get size of array
106
- */
107
21
  get size(): number;
108
- /**
109
- * Get total aggregated value
110
- */
111
22
  get total(): T;
112
- /**
113
- * Get aggregation type
114
- */
115
23
  get aggregationType(): AggregationType;
116
- /**
117
- * Create SegmentTree from array
118
- */
119
24
  static from<T>(values: T[], type?: AggregationType): SegmentTree<T>;
120
- /**
121
- * Create custom SegmentTree
122
- */
123
25
  static custom<T>(values: T[], aggregate: AggregateFunction<T>, identity: T): SegmentTree<T>;
124
- /**
125
- * Debug: Print tree structure
126
- */
26
+ findIndexAtSum(target: number): number;
127
27
  toString(): string;
128
- /**
129
- * Debug: Validate tree structure
130
- */
131
28
  validate(): boolean;
132
- private validateNode;
133
29
  }
134
30
  //# sourceMappingURL=segment-tree.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"segment-tree.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/segment-tree/segment-tree.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,EAClB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAkC,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3F;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,qBAAa,WAAW,CAAC,CAAC,CAAE,YAAW,YAAY,CAAC,CAAC,CAAC;IACpD,OAAO,CAAC,IAAI,CAAM;IAClB,OAAO,CAAC,IAAI,CAAM;IAClB,OAAO,CAAC,GAAG,CAAM;IACjB,OAAO,CAAC,CAAC,CAAS;IAClB,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,aAAa,CAAI;IACzB,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,KAAK,CAAkB;gBAEnB,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAgC1C;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAsB5B;;OAEG;IACH,OAAO,CAAC,SAAS;IAiBjB;;OAEG;IACH,OAAO,CAAC,QAAQ;IA8BhB;;;;OAIG;IACH,OAAO,CAAC,WAAW;IAYnB;;OAEG;IACH,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC;IAcrC;;OAEG;IACH,OAAO,CAAC,SAAS;IAiCjB;;OAEG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IASrC;;OAEG;IACH,OAAO,CAAC,UAAU;IA+BlB;;OAEG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAkBxD;;OAEG;IACH,OAAO,CAAC,eAAe;IAqCvB;;OAEG;IACH,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC;IAQrB;;OAEG;IACH,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,IAAI;IAarB;;OAEG;IACH,OAAO,IAAI,CAAC,EAAE;IAQd;;OAEG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,GAAG,MAAM;IAUjE;;OAEG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;OAEG;IACH,IAAI,KAAK,IAAI,CAAC,CAKb;IAED;;OAEG;IACH,IAAI,eAAe,IAAI,eAAe,CAErC;IAED;;OAEG;IACH,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,IAAI,GAAE,eAAqC,GAAG,WAAW,CAAC,CAAC,CAAC;IAIxF;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,CAAC,EACb,MAAM,EAAE,CAAC,EAAE,EACX,SAAS,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAC/B,QAAQ,EAAE,CAAC,GACV,WAAW,CAAC,CAAC,CAAC;IASjB;;OAEG;IACH,QAAQ,IAAI,MAAM;IAIlB;;OAEG;IACH,QAAQ,IAAI,OAAO;IAInB,OAAO,CAAC,YAAY;CA2BrB"}
1
+ {"version":3,"file":"segment-tree.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/segment-tree/segment-tree.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AACpG,OAAO,EAAoB,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAS7E,qBAAa,WAAW,CAAC,CAAC,CAAE,YAAW,YAAY,CAAC,CAAC,CAAC;IACpD,OAAO,CAAC,IAAI,CAAM;IAClB,OAAO,CAAC,IAAI,CAAM;IAClB,OAAO,CAAC,GAAG,CAAM;IACjB,OAAO,CAAC,CAAC,CAAS;IAClB,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,aAAa,CAAI;IACzB,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,KAAK,CAAkB;gBAEnB,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC;IA6B1C,OAAO,CAAC,QAAQ;IAchB,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC;IAwBrC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAoBrC,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IA0BxD,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC;IAQrB,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,IAAI;IAarB,OAAO,IAAI,CAAC,EAAE;IAQd,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,GAAG,MAAM;IAUjE,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,KAAK,IAAI,CAAC,CAKb;IAED,IAAI,eAAe,IAAI,eAAe,CAErC;IAED,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,IAAI,GAAE,eAAqC,GAAG,WAAW,CAAC,CAAC,CAAC;IAIxF,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC;IAS3F,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IA0BtC,QAAQ,IAAI,MAAM;IAIlB,QAAQ,IAAI,OAAO;CAGpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"segment-tree.interface.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/segment-tree/segment-tree.interface.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;GAGG;AACH,MAAM,MAAM,iBAAiB,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;AAErD;;GAEG;AACH,oBAAY,eAAe;IACzB,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,OAAO,YAAY;IACnB,MAAM,WAAW;CAClB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B;;;;;;OAMG;IACH,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC,CAAC;IAEtC;;;;;OAKG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC;IAEtC;;;;;;OAMG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC;IAEzD;;;;;OAKG;IACH,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,CAAC;IAEtB;;;;OAIG;IACH,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC;IAEtB;;;;OAIG;IACH,OAAO,IAAI,CAAC,EAAE,CAAC;IAEf;;;;;;;OAOG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,GAAG,MAAM,CAAC;IAElE;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;IAElB;;OAEG;IACH,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;CAC3C;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB,CAAC,CAAC;IACnC;;OAEG;IACH,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;IAEb;;;OAGG;IACH,IAAI,CAAC,EAAE,eAAe,CAAC;IAEvB;;;OAGG;IACH,eAAe,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAEvC;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,CAAC,CAAC;IAEb;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,eAAO,MAAM,YAAY;;gBAEb,MAAM,KAAK,MAAM;;;;gBAIjB,MAAM,KAAK,MAAM;;;;gBAIjB,MAAM,KAAK,MAAM;;;;gBAIjB,MAAM,KAAK,MAAM;;;;gBAWjB,MAAM,KAAK,MAAM;;;;gBAOjB,MAAM,KAAK,MAAM;;;CAG5B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB;IAC3B;;OAEG;mBACY,MAAM,GAAG,MAAM;IAK9B;;OAEG;wBACiB,MAAM,QAAQ,MAAM,GAAG,OAAO;IAIlD;;OAEG;uBACgB,MAAM,SAAS,MAAM,QAAQ,MAAM,GAAG,OAAO;IAQhE;;OAEG;kBACW,MAAM,GAAG,MAAM;IAI7B;;OAEG;qBACc,MAAM,GAAG,MAAM;IAIhC;;OAEG;sBACe,MAAM,GAAG,MAAM;IAIjC;;OAEG;cACO,MAAM,SAAS,MAAM,GAAG,MAAM;CAGzC,CAAC"}
1
+ {"version":3,"file":"segment-tree.interface.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/segment-tree/segment-tree.interface.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;GAGG;AACH,MAAM,MAAM,iBAAiB,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;AAErD;;GAEG;AACH,oBAAY,eAAe;IACzB,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,OAAO,YAAY;IACnB,MAAM,WAAW;CAClB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B;;;;;;OAMG;IACH,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC,CAAC;IAEtC;;;;;OAKG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC;IAEtC;;;;;;OAMG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC;IAEzD;;;;;OAKG;IACH,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,CAAC;IAEtB;;;;OAIG;IACH,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC;IAEtB;;;;OAIG;IACH,OAAO,IAAI,CAAC,EAAE,CAAC;IAEf;;;;;;;OAOG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,GAAG,MAAM,CAAC;IAElE;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;IAElB;;OAEG;IACH,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;CAC3C;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB,CAAC,CAAC;IACnC;;OAEG;IACH,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;IAEb;;;OAGG;IACH,IAAI,CAAC,EAAE,eAAe,CAAC;IAEvB;;;OAGG;IACH,eAAe,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAEvC;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,CAAC,CAAC;IAEb;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,eAAO,MAAM,YAAY;;gBAEb,MAAM,KAAK,MAAM;;;;gBAIjB,MAAM,KAAK,MAAM;;;;gBAIjB,MAAM,KAAK,MAAM;;;;gBAIjB,MAAM,KAAK,MAAM;;;;gBAWjB,MAAM,KAAK,MAAM;;;;gBAOjB,MAAM,KAAK,MAAM;;;CAG5B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB;IAC3B;;OAEG;mBACY,MAAM,GAAG,MAAM;IAK9B;;OAEG;wBACiB,MAAM,QAAQ,MAAM,GAAG,OAAO;IAIlD;;OAEG;uBACgB,MAAM,SAAS,MAAM,QAAQ,MAAM,GAAG,OAAO;IAIhE;;OAEG;kBACW,MAAM,GAAG,MAAM;IAI7B;;OAEG;qBACc,MAAM,GAAG,MAAM;IAIhC;;OAEG;sBACe,MAAM,GAAG,MAAM;IAIjC;;OAEG;cACO,MAAM,SAAS,MAAM,GAAG,MAAM;CAGzC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { AggregateFunction } from './segment-tree.interface';
2
+ export declare function buildTree<T>(tree: T[], arr: T[], aggregate: AggregateFunction<T>, node: number, start: number, end: number): void;
3
+ //# sourceMappingURL=tree-builder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tree-builder.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/segment-tree/tree-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAGlE,wBAAgB,SAAS,CAAC,CAAC,EACzB,IAAI,EAAE,CAAC,EAAE,EACT,GAAG,EAAE,CAAC,EAAE,EACR,SAAS,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAC/B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,GACV,IAAI,CAcN"}
@@ -0,0 +1,3 @@
1
+ import type { AggregateFunction } from './segment-tree.interface';
2
+ export declare function queryTree<T>(tree: T[], lazy: T[], aggregate: AggregateFunction<T>, identityValue: T, useLazy: boolean, pushDownFn: (node: number, start: number, end: number) => void, node: number, start: number, end: number, left: number, right: number): T;
3
+ //# sourceMappingURL=tree-query.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tree-query.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/segment-tree/tree-query.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAGlE,wBAAgB,SAAS,CAAC,CAAC,EACzB,IAAI,EAAE,CAAC,EAAE,EACT,IAAI,EAAE,CAAC,EAAE,EACT,SAAS,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAC/B,aAAa,EAAE,CAAC,EAChB,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,EAC9D,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,GACZ,CAAC,CA6CH"}
@@ -0,0 +1,2 @@
1
+ export declare function findIndexAtSumRecursive<T>(tree: T[], lazy: T[], useLazy: boolean, pushDownFn: (node: number, start: number, end: number) => void, node: number, start: number, end: number, targetSum: number): number;
2
+ //# sourceMappingURL=tree-search.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tree-search.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/segment-tree/tree-search.ts"],"names":[],"mappings":"AAEA,wBAAgB,uBAAuB,CAAC,CAAC,EACvC,IAAI,EAAE,CAAC,EAAE,EACT,IAAI,EAAE,CAAC,EAAE,EACT,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,EAC9D,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,SAAS,EAAE,MAAM,GAChB,MAAM,CA2CR"}
@@ -0,0 +1,4 @@
1
+ import type { AggregateFunction } from './segment-tree.interface';
2
+ export declare function updateTree<T>(tree: T[], lazy: T[], aggregate: AggregateFunction<T>, useLazy: boolean, pushDownFn: (node: number, start: number, end: number) => void, node: number, start: number, end: number, index: number, value: T): void;
3
+ export declare function rangeUpdateLazy<T>(tree: T[], lazy: T[], aggregate: AggregateFunction<T>, pushDownFn: (node: number, start: number, end: number) => void, node: number, start: number, end: number, left: number, right: number, value: T): void;
4
+ //# sourceMappingURL=tree-update.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tree-update.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/segment-tree/tree-update.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAGlE,wBAAgB,UAAU,CAAC,CAAC,EAC1B,IAAI,EAAE,CAAC,EAAE,EACT,IAAI,EAAE,CAAC,EAAE,EACT,SAAS,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAC/B,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,EAC9D,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,CAAC,GACP,IAAI,CAqBN;AAED,wBAAgB,eAAe,CAAC,CAAC,EAC/B,IAAI,EAAE,CAAC,EAAE,EACT,IAAI,EAAE,CAAC,EAAE,EACT,SAAS,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAC/B,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,EAC9D,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,CAAC,GACP,IAAI,CAuBN"}
@@ -0,0 +1,3 @@
1
+ import type { AggregateFunction } from './segment-tree.interface';
2
+ export declare function validateNode<T>(tree: T[], arr: T[], aggregate: AggregateFunction<T>, n: number, node: number, start: number, end: number): boolean;
3
+ //# sourceMappingURL=tree-validation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tree-validation.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/segment-tree/tree-validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAGlE,wBAAgB,YAAY,CAAC,CAAC,EAC5B,IAAI,EAAE,CAAC,EAAE,EACT,GAAG,EAAE,CAAC,EAAE,EACR,SAAS,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAC/B,CAAC,EAAE,MAAM,EACT,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,GACV,OAAO,CAqBT"}
@@ -1 +1 @@
1
- {"version":3,"file":"skip-list.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/skip-list/skip-list.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,SAAS,EAET,eAAe,EACf,WAAW,EACX,aAAa,EACd,MAAM,uBAAuB,CAAC;AAI/B;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAE,YAAW,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC;IACpD,OAAO,CAAC,IAAI,CAAqB;IACjC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,KAAK,CAAS;gBAEV,OAAO,GAAE,eAAe,CAAC,CAAC,CAAM;IAW5C;;OAEG;IACH,OAAO,CAAC,UAAU;IAQlB;;OAEG;IACH,OAAO,CAAC,WAAW;IAQnB;;;OAGG;IACH,OAAO,CAAC,cAAc;IAkBtB;;OAEG;IACH,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,GAAG,SAAS;IAmCpC;;OAEG;IACH,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,SAAS;IAuB1B;;OAEG;IACH,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,OAAO;IAIpB;;OAEG;IACH,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,OAAO;IA6BvB;;OAEG;IACH,OAAO,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAYxB;;OAEG;IACH,IAAI,IAAI,CAAC,EAAE;IAYX;;OAEG;IACH,MAAM,IAAI,CAAC,EAAE;IAYb;;OAEG;IACH,KAAK,CAAC,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;IA0BlD;;OAEG;IACH,GAAG,IAAI,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS;IAQpC;;OAEG;IACH,GAAG,IAAI,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS;IAsBpC;;OAEG;IACH,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS;IAoBhD;;OAEG;IACH,UAAU,CAAC,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM;IAI1C;;OAEG;IACH,KAAK,CAAC,GAAG,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS;IAqB5C;;OAEG;IACH,OAAO,CAAC,GAAG,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS;IAqB9C;;OAEG;IACH,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,KAAK,IAAI,GAAG,IAAI;IASnD;;OAEG;IACH,KAAK,IAAI,IAAI;IAMb;;OAEG;IACH,QAAQ,IAAI,aAAa;IA0BzB;;OAEG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,OAAO,CAErB;IAED;;OAEG;IACH,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EACd,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EACtB,OAAO,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,GAC3B,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC;IAQjB;;OAEG;IACH,QAAQ,IAAI,MAAM;IAIlB;;OAEG;IACH,QAAQ,IAAI,OAAO;CAyBpB"}
1
+ {"version":3,"file":"skip-list.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/skip-list/skip-list.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,SAAS,EAET,eAAe,EACf,WAAW,EACX,aAAa,EACd,MAAM,uBAAuB,CAAC;AAI/B;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAE,YAAW,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC;IACpD,OAAO,CAAC,IAAI,CAAqB;IACjC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,KAAK,CAAS;gBAEV,OAAO,GAAE,eAAe,CAAC,CAAC,CAAM;IAW5C;;OAEG;IACH,OAAO,CAAC,UAAU;IAQlB;;OAEG;IACH,OAAO,CAAC,WAAW;IAQnB;;;OAGG;IACH,OAAO,CAAC,cAAc;IAetB;;OAEG;IACH,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,GAAG,SAAS;IAmCpC;;OAEG;IACH,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,SAAS;IAoB1B;;OAEG;IACH,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,OAAO;IAIpB;;OAEG;IACH,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,OAAO;IA0BvB;;OAEG;IACH,OAAO,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAYxB;;OAEG;IACH,IAAI,IAAI,CAAC,EAAE;IAYX;;OAEG;IACH,MAAM,IAAI,CAAC,EAAE;IAYb;;OAEG;IACH,KAAK,CAAC,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;IAuBlD;;OAEG;IACH,GAAG,IAAI,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS;IAQpC;;OAEG;IACH,GAAG,IAAI,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS;IAsBpC;;OAEG;IACH,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS;IAoBhD;;OAEG;IACH,UAAU,CAAC,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM;IAI1C;;OAEG;IACH,KAAK,CAAC,GAAG,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS;IAkB5C;;OAEG;IACH,OAAO,CAAC,GAAG,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS;IAkB9C;;OAEG;IACH,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,KAAK,IAAI,GAAG,IAAI;IASnD;;OAEG;IACH,KAAK,IAAI,IAAI;IAMb;;OAEG;IACH,QAAQ,IAAI,aAAa;IAyBzB;;OAEG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,OAAO,CAErB;IAED;;OAEG;IACH,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC;IAQvF;;OAEG;IACH,QAAQ,IAAI,MAAM;IAIlB;;OAEG;IACH,QAAQ,IAAI,OAAO;CAyBpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"sparse-matrix.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/sparse-matrix/sparse-matrix.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,IAAI,aAAa,EAC7B,mBAAmB,EACpB,MAAM,2BAA2B,CAAC;AAEnC;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,YAAY,CAAC,CAAC,CAAE,YAAW,aAAa,CAAC,CAAC,CAAC;IACtD,OAAO,CAAC,IAAI,CAA8B;IAC1C,OAAO,CAAC,SAAS,CAAS;gBAEd,QAAQ,GAAE,mBAAwB;IAO9C,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;IAK5C,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO;IAKtC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAuB7C,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO;IAmBzC,KAAK,IAAI,IAAI;IAKb,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;IAM3C,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;IAc9C,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,IAAI;IAMjD,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAc9B,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAyBjC,IAAI,IAAI,IAAI,MAAM,CAEjB;IAEA,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,gBAAgB,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;IAQ3D;;;OAGG;IACH,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE;CAarE"}
1
+ {"version":3,"file":"sparse-matrix.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/sparse-matrix/sparse-matrix.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,IAAI,aAAa,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEpG;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,YAAY,CAAC,CAAC,CAAE,YAAW,aAAa,CAAC,CAAC,CAAC;IACtD,OAAO,CAAC,IAAI,CAA8B;IAC1C,OAAO,CAAC,SAAS,CAAS;gBAEd,QAAQ,GAAE,mBAAwB;IAO9C,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;IAK5C,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO;IAKtC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAuB7C,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO;IAmBzC,KAAK,IAAI,IAAI;IAKb,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;IAM3C,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;IAc9C,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,IAAI;IAMjD,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAc9B,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAyBjC,IAAI,IAAI,IAAI,MAAM,CAEjB;IAEA,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,gBAAgB,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;IAQ3D;;;OAGG;IACH,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE;CAarE"}
@@ -1 +1 @@
1
- {"version":3,"file":"suffix-array.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/suffix-array/suffix-array.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,EACjB,MAAM,0BAA0B,CAAC;AAElC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AACH,qBAAa,WAAY,YAAW,YAAY;IAC9C,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,WAAW,CAAW;IAC9B,OAAO,CAAC,GAAG,CAAyB;IACpC,OAAO,CAAC,OAAO,CAA+B;gBAElC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,kBAAuB;IAkB1D;;OAEG;IACH,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE;IAgBjC;;OAEG;IACH,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,GAAE,MAAW,GAAG,kBAAkB,EAAE;IAmBpF;;OAEG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAW9B;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAOlC;;OAEG;IACH,wBAAwB,IAAI,MAAM;IAkBlC;;OAEG;IACH,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE;IAY1C;;OAEG;IACH,QAAQ,IAAI,gBAAgB;IAa5B;;OAEG;IACH,KAAK,IAAI,IAAI;IAQb;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAiBxB;;;OAGG;IACH,OAAO,CAAC,aAAa;IA6BrB;;OAEG;IACH,OAAO,CAAC,SAAS;CA0ClB"}
1
+ {"version":3,"file":"suffix-array.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/suffix-array/suffix-array.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,EACjB,MAAM,0BAA0B,CAAC;AAElC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AACH,qBAAa,WAAY,YAAW,YAAY;IAC9C,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,WAAW,CAAW;IAC9B,OAAO,CAAC,GAAG,CAAyB;IACpC,OAAO,CAAC,OAAO,CAA+B;gBAElC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,kBAAuB;IAkB1D;;OAEG;IACH,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE;IAgBjC;;OAEG;IACH,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,GAAE,MAAW,GAAG,kBAAkB,EAAE;IAmBpF;;OAEG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAW9B;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAOlC;;OAEG;IACH,wBAAwB,IAAI,MAAM;IAkBlC;;OAEG;IACH,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE;IAY1C;;OAEG;IACH,QAAQ,IAAI,gBAAgB;IAa5B;;OAEG;IACH,KAAK,IAAI,IAAI;IAQb;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAsBxB;;;OAGG;IACH,OAAO,CAAC,aAAa;IA6BrB;;OAEG;IACH,OAAO,CAAC,SAAS;CA0ClB"}
@@ -4,5 +4,5 @@
4
4
  * Used for autocomplete, search suggestions, and prefix-based queries.
5
5
  */
6
6
  export { Trie } from './trie';
7
- export type { ITrie, ITrieNode, TrieOptions, TrieSearchResult, } from './trie.interface';
7
+ export type { ITrie, ITrieNode, TrieOptions, TrieSearchResult } from './trie.interface';
8
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/trie/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,YAAY,EACV,KAAK,EACL,SAAS,EACT,WAAW,EACX,gBAAgB,GACjB,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/trie/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,YAAY,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"trie.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/trie/trie.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,KAAK,EAEL,WAAW,EACX,gBAAgB,EACjB,MAAM,kBAAkB,CAAC;AAgB1B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDG;AACH,qBAAa,IAAK,YAAW,KAAK;IAChC,OAAO,CAAC,IAAI,CAAY;IACxB,OAAO,CAAC,OAAO,CAAwB;IACvC,OAAO,CAAC,SAAS,CAAa;gBAElB,OAAO,GAAE,WAAgB;IASrC;;;;;;;;;;OAUG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAoB1B;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAO7B;;;;;;;;;;;;OAYG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAOnC;;;;;;;;;;;;;;;;OAgBG;IACH,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE;IAkB3D;;;;;;;;;;;;;;;;OAgBG;IACH,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB;IAqBpC;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAO7B;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;;;;;;;;;;OAWG;IACH,WAAW,IAAI,MAAM,EAAE;IAMvB;;;;OAIG;IACH,IAAI,IAAI,MAAM;IAId;;;;OAIG;IACH,OAAO,IAAI,OAAO;IAMlB;;OAEG;IACH,OAAO,CAAC,SAAS;IAIjB;;OAEG;IACH,OAAO,CAAC,WAAW;IAqBnB;;OAEG;IACH,OAAO,CAAC,QAAQ;IAahB;;OAEG;IACH,OAAO,CAAC,YAAY;IAwBpB;;OAEG;IACH,OAAO,CAAC,eAAe;CAwCxB"}
1
+ {"version":3,"file":"trie.d.ts","sourceRoot":"","sources":["../../../../src/data-structures/trie/trie.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAa,WAAW,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAgBxF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDG;AACH,qBAAa,IAAK,YAAW,KAAK;IAChC,OAAO,CAAC,IAAI,CAAY;IACxB,OAAO,CAAC,OAAO,CAAwB;IACvC,OAAO,CAAC,SAAS,CAAa;gBAElB,OAAO,GAAE,WAAgB;IASrC;;;;;;;;;;OAUG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAoB1B;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAO7B;;;;;;;;;;;;OAYG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAOnC;;;;;;;;;;;;;;;;OAgBG;IACH,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE;IAkB3D;;;;;;;;;;;;;;;;OAgBG;IACH,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB;IAqBpC;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAO7B;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;;;;;;;;;;OAWG;IACH,WAAW,IAAI,MAAM,EAAE;IAMvB;;;;OAIG;IACH,IAAI,IAAI,MAAM;IAId;;;;OAIG;IACH,OAAO,IAAI,OAAO;IAMlB;;OAEG;IACH,OAAO,CAAC,SAAS;IAIjB;;OAEG;IACH,OAAO,CAAC,WAAW;IAqBnB;;OAEG;IACH,OAAO,CAAC,QAAQ;IAahB;;OAEG;IACH,OAAO,CAAC,YAAY;IAwBpB;;OAEG;IACH,OAAO,CAAC,eAAe;CA+BxB"}