import { Mock } from 'vitest';
import { GLBufferController } from '@synnaxlabs/x';

export declare class MockGLBufferController implements GLBufferController {
    ARRAY_BUFFER: number;
    STATIC_DRAW: number;
    DYNAMIC_DRAW: number;
    targets: Record<number, number>;
    counter: number;
    buffers: Record<number, ArrayBuffer>;
    createBufferMock: Mock<[], WebGLBuffer | null>;
    bufferDataMock: Mock<[number, ArrayBufferLike | number, number]>;
    bufferSubDataMock: Mock<[number, number, ArrayBufferLike]>;
    bindBufferMock: Mock<[number, WebGLBuffer | null]>;
    deleteBufferMock: Mock<[WebGLBuffer | null]>;
    deleteBuffer(buffer: WebGLBuffer | null): void;
    createBuffer(): WebGLBuffer | null;
    bufferData(target: number, dataOrSize: ArrayBufferLike | number, usage: number): void;
    bindBuffer(target: number, buffer: WebGLBuffer | null): void;
    bufferSubData(target: number, offset: number, data: ArrayBufferLike): void;
}
//# sourceMappingURL=MockGLBufferController.d.ts.map