decova-dotnet
Version:
This package provides fundumentals that a .net developer may miss while working with Typescript, whether they are missing functinalities or funcionalities provided in a non-elegant design in javascript. Bad naming, bad design of optional parameters, non-c
51 lines • 2.02 kB
TypeScript
import { Func } from "../CommonDelegates";
import '../index';
export declare class List<T> {
constructor(array?: Array<T> | null);
get Items(): Array<T>;
private _Array;
get Array(): Array<T>;
get Count(): number;
Select<RType>(func: Func<T, RType>): List<RType>;
SelectMany<RType>(func: (arg: T) => RType[]): List<RType>;
Sort(compareFun: (a: T, b: T) => number): List<T>;
Reverse(): List<T>;
Foreach(func: (arg: T) => void): void;
Any(func?: (arg: T) => boolean): boolean;
All(func: (arg: T) => boolean): boolean;
get IsEmpty(): boolean;
Add(item: T): void;
EnsureItem(item: T, comparer?: (obj1: T, obj2: T) => boolean): T;
AddRange(items: List<T> | Array<T>): void;
Union(another: List<T> | Array<T>): List<T>;
Where(func: Func<T, boolean>): List<T>;
ItemAt(index: number): T;
IndexOf(item: T): number;
RemoveAt(index: any): {
removedItem: T;
};
RemoveRange(index: number, length: number): {
removed: T[];
};
RemoveWhere(func: Func<T, boolean>): {
removedItems: T[];
};
GetRange(index: number, length?: number | undefined): List<T>;
Insert(index: number, item: T): void;
InsertRange(index: number, items: List<T> | Array<T>): void;
FirstOrNull(func?: Func<T, boolean>): T | null;
First(func?: Func<T, boolean>): T;
LastOrNull(func?: Func<T, boolean> | null): T | null;
Last(func?: Func<T, boolean> | null): T;
Skip(countToSkip: number): List<T>;
Take(countToTake: number): List<T>;
Contains(obj: T): boolean;
Distinct(): List<T>;
Except(excepted: List<T> | T[]): List<T>;
Clone(): List<T>;
Intersect(otherList: List<T> | T[]): List<T>;
Reset(): void;
ToMap<TKey>(keySelector: (item: T) => TKey, distinctItems: boolean): Map<TKey, T[]>;
_EnsureObservers(): ((changedArray: Array<T>, added: Array<T>, removed: Array<T>) => void)[];
}
//# sourceMappingURL=List.d.ts.map