UNPKG

typescript-generic-datastructures

Version:
18 lines (17 loc) 728 B
export declare type CompareFunction<T> = (a: T, b: T) => 0 | 1 | -1; export declare type ComparatorKeyExtractor<T> = (a: T) => any; export interface ComparatorOptions<T> { compareFunction?: CompareFunction<T>; keyExtractor?: ComparatorKeyExtractor<T>; } export declare class Comparator<T> { compare: CompareFunction<T>; constructor({ compareFunction, keyExtractor }: ComparatorOptions<T>); static defaultCompareFunction<T>(keyExtractor: ComparatorKeyExtractor<T>): (a: T, b: T) => 0 | 1 | -1; equal(a: T, b: T): boolean; lessThan(a: T, b: T): boolean; greaterThan(a: T, b: T): boolean; lessThanOrEqual(a: T, b: T): boolean; greaterThanOrEqual(a: T, b: T): boolean; reverse(): void; }