export declare class ImmutableArray { private arr; readonly value: T[]; readonly length: number; constructor(arr?: T[]); /** * Instantiate a new array */ set: (newArray: T[]) => T[]; /** * Add one or many elements to the end of the array and returns the new array. */ push: (...elements: any[]) => T[]; /** * Add one or many elements to the start of the array and returns the new array. */ shift: (...elements: any[]) => T[]; /** * Merge two or more arrays. */ concat: (...args: any[]) => T[]; /** * Create a shallow copy of the array */ clone: () => T[]; /** * Remove the last element from the array */ pop: () => any; /** * Add one or many elements to the start of the array and returns the new array. */ unshift: (...elements: any[]) => T[]; /** * Add one or many elements to the start of the array and returns the new array. */ delete: (...elements: any[]) => T[]; slide: (start?: number, end?: number) => T[]; }