@cashfarm/lang
Version:
Extends TypeScript/Javascript with basic classes and functions
58 lines (57 loc) • 3.66 kB
TypeScript
import { Constructor } from './types';
import { OrderDirection } from './enums';
import { Expression } from './types';
export declare function Sortable<TBase extends Constructor<TItem[]>, TItem>(Base: TBase): {
new (...args: any[]): {
[n: number]: TItem;
byProperty(prop: string | Expression<TItem, string | number>, order?: OrderDirection): any;
length: number;
toString(): string;
toLocaleString(): string;
push(...items: TItem[]): number;
pop(): TItem;
concat(...items: TItem[][]): TItem[];
concat(...items: (TItem | TItem[])[]): TItem[];
join(separator?: string): string;
reverse(): TItem[];
shift(): TItem;
slice(start?: number, end?: number): TItem[];
sort(compareFn?: (a: TItem, b: TItem) => number): any;
splice(start: number, deleteCount?: number): TItem[];
splice(start: number, deleteCount: number, ...items: TItem[]): TItem[];
unshift(...items: TItem[]): number;
indexOf(searchElement: TItem, fromIndex?: number): number;
lastIndexOf(searchElement: TItem, fromIndex?: number): number;
every(callbackfn: (value: TItem, index: number, array: TItem[]) => boolean, thisArg?: any): boolean;
some(callbackfn: (value: TItem, index: number, array: TItem[]) => boolean, thisArg?: any): boolean;
forEach(callbackfn: (value: TItem, index: number, array: TItem[]) => void, thisArg?: any): void;
map<U>(callbackfn: (value: TItem, index: number, array: TItem[]) => U, thisArg?: any): U[];
filter<S extends TItem>(callbackfn: (value: TItem, index: number, array: TItem[]) => value is S, thisArg?: any): S[];
filter(callbackfn: (value: TItem, index: number, array: TItem[]) => any, thisArg?: any): TItem[];
reduce(callbackfn: (previousValue: TItem, currentValue: TItem, currentIndex: number, array: TItem[]) => TItem, initialValue?: TItem): TItem;
reduce<U>(callbackfn: (previousValue: U, currentValue: TItem, currentIndex: number, array: TItem[]) => U, initialValue: U): U;
reduceRight(callbackfn: (previousValue: TItem, currentValue: TItem, currentIndex: number, array: TItem[]) => TItem, initialValue?: TItem): TItem;
reduceRight<U>(callbackfn: (previousValue: U, currentValue: TItem, currentIndex: number, array: TItem[]) => U, initialValue: U): U;
[Symbol.unscopables](): {
copyWithin: boolean;
entries: boolean;
fill: boolean;
find: boolean;
findIndex: boolean;
keys: boolean;
values: boolean;
};
[Symbol.iterator](): IterableIterator<TItem>;
entries(): IterableIterator<[number, TItem]>;
keys(): IterableIterator<number>;
values(): IterableIterator<TItem>;
find(predicate: (this: void, value: TItem, index: number, obj: TItem[]) => boolean): TItem;
find(predicate: (this: void, value: TItem, index: number, obj: TItem[]) => boolean, thisArg: undefined): TItem;
find<Z>(predicate: (this: Z, value: TItem, index: number, obj: TItem[]) => boolean, thisArg: Z): TItem;
findIndex(predicate: (this: void, value: TItem, index: number, obj: TItem[]) => boolean): number;
findIndex(predicate: (this: void, value: TItem, index: number, obj: TItem[]) => boolean, thisArg: undefined): number;
findIndex<Z>(predicate: (this: Z, value: TItem, index: number, obj: TItem[]) => boolean, thisArg: Z): number;
fill(value: TItem, start?: number, end?: number): any;
copyWithin(target: number, start: number, end?: number): any;
};
} & TBase;