/**
 * Fixed-capacity ring buffer. When full, push() overwrites the oldest entry.
 * drain() returns up to maxCount items in FIFO order and removes them.
 */
export declare class RingBuffer<T> {
    private readonly capacity;
    private readonly items;
    private head;
    private tail;
    private count;
    constructor(capacity: number);
    get size(): number;
    push(item: T): void;
    drain(maxCount: number): T[];
}
//# sourceMappingURL=ring-buffer.d.ts.map