Defined in: packages/db/src/indexes/base-index.ts:90
Base abstract class that all index types extend
TKey extends string | number = string | number
IndexInterface<TKey>
new BaseIndex<TKey>(
id,
expression,
name?,
options?): BaseIndex<TKey>;Defined in: packages/db/src/indexes/base-index.ts:108
number
string
any
BaseIndex<TKey>
protected compareOptions: CompareOptions;Defined in: packages/db/src/indexes/base-index.ts:101
readonly expression: BasicExpression;Defined in: packages/db/src/indexes/base-index.ts:95
protected hasCustomComparator: boolean = false;Defined in: packages/db/src/indexes/base-index.ts:106
Set by subclasses when constructed with a user-supplied comparator, whose ordering may not match the WHERE evaluator's relational operators.
readonly id: number;Defined in: packages/db/src/indexes/base-index.ts:93
protected lastUpdated: Date;Defined in: packages/db/src/indexes/base-index.ts:100
protected lookupCount: number = 0;Defined in: packages/db/src/indexes/base-index.ts:98
readonly optional name: string;Defined in: packages/db/src/indexes/base-index.ts:94
abstract readonly supportedOperations: Set<"eq" | "gt" | "gte" | "lt" | "lte" | "in" | "like" | "ilike">;Defined in: packages/db/src/indexes/base-index.ts:96
protected totalLookupTime: number = 0;Defined in: packages/db/src/indexes/base-index.ts:99
get abstract indexedKeysSet(): Set<TKey>;Defined in: packages/db/src/indexes/base-index.ts:153
Set<TKey>
get abstract keyCount(): number;Defined in: packages/db/src/indexes/base-index.ts:146
number
get abstract orderedEntriesArray(): [any, Set<TKey>][];Defined in: packages/db/src/indexes/base-index.ts:151
[any, Set<TKey>][]
IndexInterface.orderedEntriesArray
get abstract orderedEntriesArrayReversed(): [any, Set<TKey>][];Defined in: packages/db/src/indexes/base-index.ts:152
[any, Set<TKey>][]
IndexInterface.orderedEntriesArrayReversed
get supportsRangeOptimization(): boolean;Defined in: packages/db/src/indexes/base-index.ts:161
Whether range lookups (gt/gte/lt/lte) on this index can be trusted to return every matching key. Range traversal relies on the index ordering, so it is unsafe when the index uses a custom comparator, whose order may not match the WHERE evaluator's relational operators. Callers must fall back to a full scan when this is false.
boolean
IndexInterface.supportsRangeOptimization
get abstract valueMapData(): Map<any, Set<TKey>>;Defined in: packages/db/src/indexes/base-index.ts:154
Map<any, Set<TKey>>
abstract add(key, item): void;Defined in: packages/db/src/indexes/base-index.ts:122
TKey
any
void
abstract build(entries): void;Defined in: packages/db/src/indexes/base-index.ts:125
Iterable<[TKey, any]>
void
abstract clear(): void;Defined in: packages/db/src/indexes/base-index.ts:126
void
abstract equalityLookup(value): Set<TKey>;Defined in: packages/db/src/indexes/base-index.ts:147
any
Set<TKey>
protected evaluateIndexExpression(item): any;Defined in: packages/db/src/indexes/base-index.ts:212
any
any
getStats(): IndexStats;Defined in: packages/db/src/indexes/base-index.ts:200
abstract inArrayLookup(values): Set<TKey>;Defined in: packages/db/src/indexes/base-index.ts:148
any[]
Set<TKey>
abstract protected initialize(options?): void;Defined in: packages/db/src/indexes/base-index.ts:210
any
void
abstract lookup(operation, value): Set<TKey>;Defined in: packages/db/src/indexes/base-index.ts:127
"eq" | "gt" | "gte" | "lt" | "lte" | "in" | "like" | "ilike"
any
Set<TKey>
matchesCompareOptions(compareOptions): boolean;Defined in: packages/db/src/indexes/base-index.ts:177
Checks if the compare options match the index's compare options. The direction is ignored because the index can be reversed if the direction is different.
CompareOptions
boolean
IndexInterface.matchesCompareOptions
matchesDirection(direction): boolean;Defined in: packages/db/src/indexes/base-index.ts:196
Checks if the index matches the provided direction.
boolean
IndexInterface.matchesDirection
matchesField(fieldPath): boolean;Defined in: packages/db/src/indexes/base-index.ts:165
string[]
boolean
abstract rangeQuery(options): Set<TKey>;Defined in: packages/db/src/indexes/base-index.ts:149
Set<TKey>
abstract rangeQueryReversed(options): Set<TKey>;Defined in: packages/db/src/indexes/base-index.ts:150
Set<TKey>
IndexInterface.rangeQueryReversed
abstract remove(key, item): void;Defined in: packages/db/src/indexes/base-index.ts:123
TKey
any
void
supports(operation): boolean;Defined in: packages/db/src/indexes/base-index.ts:157
"eq" | "gt" | "gte" | "lt" | "lte" | "in" | "like" | "ilike"
boolean
abstract take(
n,
from,
filterFn?): TKey[];Defined in: packages/db/src/indexes/base-index.ts:128
number
TKey
(key) => boolean
TKey[]
abstract takeFromStart(n, filterFn?): TKey[];Defined in: packages/db/src/indexes/base-index.ts:133
number
(key) => boolean
TKey[]
abstract takeReversed(
n,
from,
filterFn?): TKey[];Defined in: packages/db/src/indexes/base-index.ts:137
number
TKey
(key) => boolean
TKey[]
abstract takeReversedFromEnd(n, filterFn?): TKey[];Defined in: packages/db/src/indexes/base-index.ts:142
number
(key) => boolean
TKey[]
IndexInterface.takeReversedFromEnd
protected trackLookup(startTime): void;Defined in: packages/db/src/indexes/base-index.ts:217
number
void
abstract update(
key,
oldItem,
newItem): void;Defined in: packages/db/src/indexes/base-index.ts:124
TKey
any
any
void
protected updateTimestamp(): void;Defined in: packages/db/src/indexes/base-index.ts:223
void