export interface IIterable { copy(): IIterable; reset(): void; next(): boolean; value(): TElement; } export declare class ArrayIterator implements IIterable { protected readonly source: TElement[]; private _index; constructor(source: TElement[]); copy(): IIterable; reset(): void; private isValidIndex(); next(): boolean; value(): TElement; }