amocrm-client
Version:
JS Library for AmoCRM
30 lines (29 loc) • 1.44 kB
TypeScript
import { IResourceCollection } from "../interfaces/api";
export declare class ResourceCollection<T> implements IResourceCollection<T> {
data: T[];
constructor(data?: T[]);
get(id: number): T | undefined;
map<U>(callbackfn: (value: T, index: number, array: T[]) => U): ResourceCollection<U>;
filter(callbackfn: (value: T, index: number, array: T[]) => boolean): ResourceCollection<T>;
reduce<U>(callbackfn: (previousValue: U, currentValue: T, currentIndex: number, array: T[]) => U, initialValue: U): U;
find(callbackfn: (value: T, index: number, array: T[]) => boolean): T | undefined;
findWhere(props: {
[K in keyof T]?: T[K];
}): T | undefined;
where(props: {
[K in keyof T]?: T[K];
}): ResourceCollection<T>;
every(callbackfn: (value: T, index: number, array: T[]) => boolean): boolean;
some(callbackfn: (value: T, index: number, array: T[]) => boolean): boolean;
each(callbackfn: (value: T, index: number, array: T[]) => void): void;
chunk(size: number): IResourceCollection<T[]>;
add(models: T[] | ResourceCollection<T>): void;
push(model: T): void;
pluck<K extends keyof T>(key: K): any[];
sort(compareFn?: (a: T, b: T) => number): IResourceCollection<T>;
sortBy<K extends keyof T>(key: K): IResourceCollection<T>;
first(): T | undefined;
last(): T | undefined;
all(): T[];
size(): number;
}