-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathindex.d.ts
More file actions
51 lines (51 loc) · 2 KB
/
Copy pathindex.d.ts
File metadata and controls
51 lines (51 loc) · 2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
/// <reference types="node" />
export interface SerializeOptions { legacy?: boolean; }
export interface DeserializeOptions { maxEntries?: number; }
/** Constructors return structural counter objects, not instanceof-compatible instances. */
export class CountMinSketch {
constructor(maxEntries: number, epsilon: number, delta: number);
/** Add a nonnegative uint32 integer weight (default 1); zero is a no-op. */
increment(key: string, incrementBy?: number): void;
getTopK(): Array<[count: number, key: string]>;
serialize(options?: SerializeOptions): Buffer;
static deserialize(buffer: Buffer, start?: number, length?: number, options?: DeserializeOptions): CountMinSketch;
}
export class HyperLogLog {
constructor(stdError: number);
M: number[];
add(key: string): void;
count(): number;
serialize(): Buffer;
merge(other: HyperLogLog): void;
static deserialize(buffer: Buffer, start?: number, length?: number): HyperLogLog;
}
export function createUniquesCounter(stdError?: number): HyperLogLog;
export function createViewsCounter(topEntryCount: number, errFactor?: number, failRate?: number): CountMinSketch;
export function getUniquesObjSize(stdError?: number): number;
/** Excludes variable-sized heap entries; each adds 8 bytes plus its UTF-8 key. */
export function getViewsObjSize(errFactor?: number, failRate?: number): number;
export class MinHeap<T = number> {
constructor(array?: T[], comparator?: (a: T, b: T) => number);
heap: T[];
compare: (a: T, b: T) => number;
heapify(index: number): void;
siftUp(index: number): void;
heapifyArray(): void;
push(item: T): void;
pop(): T | undefined;
getMin(): T | undefined;
size(): number;
}
export interface RandomGenerator {
(): number;
random(): number;
uint32(): number;
fract53(): number;
version: string;
args: Array<string | number>;
}
export interface RandomConstructor {
(...seeds: Array<string | number>): RandomGenerator;
new (...seeds: Array<string | number>): RandomGenerator;
}
export const PRNG: RandomConstructor;