export function checkedIndexOf(o: T | number, arr: T[], type: string = "object"): number { const idx = (typeof o === "number") ? o : arr.indexOf(o); if (idx < 0 || idx > arr.length) { throw new Error(`Invalid ${type} specified: ${o}`); } return idx; }