function remove(array: T[], item: T) { let index = array.indexOf(item); if (index >= 0) { array.splice(index, 1); return true; } return false; } function removeAt(array: T[], index: number) { if (index >= 0) { array.splice(index, 1); return true; } return false; } function insert(array: T[], i: number, item: T) { if (i > array.length) { array.push(item); return array; } return array.splice(i, 0, item); } function contains(array: T[], item: T) { return array.indexOf(item) >= 0; } function clear(array: T[]) { return array.splice(0, array.length); } function addOnce(array: T[], item: T) { if (array.indexOf(item) >= 0) return array.length; else return array.push(item); } export default { addOnce, clear, contains, insert, removeAt, remove, };