Add to your project:

npm install typescriptcollectionsframework --save

import { ArrayList }  from 'typescriptcollectionsframework';
export class Demo {
  public allProducts : ArrayList<PetStoreProduct> = new ArrayList<PetStoreProduct>();
  public myMethod () : void {
    this.allProducts.add (new PetStoreProduct ("Cat Food"4.99));

    let numberElements : number = this.allProducts.size();
    let offset : number = this.allProducts.indexOf (new PetStoreProduct ("Leash", 
9.99));

    for (const iter : JIterator<PetStoreProduct> =  this.allProducts.iterator (); iter.hasNext(); ) {
      const element : PetStoreProduct = iter.next();
    }
  )
}

Sample Code

The TypeScript Collections Framework is easy to use and has very familiar syntax. It does not require a DOM and only has dev dependencies.

Your Collections are ready

Collections

Maps are implemented too

Sample Code

Familiar API. Simple syntax.
Ready for use now.

import { HashMap }  from 'typescriptcollectionsframework';
export class MapDemo {
  public products:HashMap<KeyType,ValueType> = new HashMap<KeyType,ValueType>();
  public myMethod (key : KeyType, value : ValueType) :
 void {
    this.products.put (key, value);

    let numberElements : number = this.products.size();
    let offset : number = this.products.indexOf (key);

    for (const iter : JIterator<KeyType> =  this.products.iterator (); iter.hasNext(); ) {
      const element :  KeyType = iter.next();
    }
  )
}

Your Maps are ready

Maps