import { IIndexBuffer } from '../base/IIndexBuffer';
import { IUnloadable } from '../managers/UnloadManager';
import { BufferPool } from './BufferPool';
import { ContextWebGL } from './ContextWebGL';
export declare class IndexBufferWebGL implements IIndexBuffer, IUnloadable {
    private _context;
    private static _pool;
    static get pool(): BufferPool<IndexBufferWebGL>;
    static create(context: ContextWebGL, numIndices: number): IndexBufferWebGL;
    lastUsedTime: number;
    canUnload: boolean;
    private _gl;
    private _numIndices;
    private _buffer;
    private _lastMemoryUsage;
    constructor(_context: ContextWebGL, numIndices: number);
    uploadFromArray(array: Uint16Array, startOffset: number, _count: number): void;
    uploadFromByteArray(data: ArrayBuffer, startOffset: number, _count: number): void;
    dispose(): void;
    apply(_gl: WebGLRenderingContext, numIndices: number): void;
    unload(): void;
    get numIndices(): number;
    get glBuffer(): WebGLBuffer;
}
//# sourceMappingURL=IndexBufferWebGL.d.ts.map