Aka "circular buffer" written in TypeScript
Missing feature? Note that you can export and import the buffer as an array and do whatever you want with the array. For example using slice. You can also consider creating an issue here and adding features via pull request. Note that the compatibility of protected members in the next minor or patch releases cannot be guaranteed and is not documented.
npm i ring-buffer-ts
import { RingBuffer } from 'ring-buffer-ts';
const ringBuffer = new RingBuffer<number>(5);
ringBuffer.add(1);
ringBuffer.add(2, 3);
ringBuffer.add(4, 5, 6);
console.log(ringBuffer.toArray());
// Result: [2, 3, 4, 5, 6]