import { IUnloadable } from '../managers/UnloadManager';
import { ContextWebGL } from './ContextWebGL';
export type TCtr<T> = {
    new (...args: any[]): T;
};
export declare class BufferPool<T extends IUnloadable> {
    private _tCtrl;
    maxStoreSize: number;
    static GLOBAL_POOL_ID: number;
    private _store;
    private _manager;
    constructor(_tCtrl: TCtr<T>, maxStoreSize?: number);
    create(context: ContextWebGL, arg1?: any, arg2?: any, arg3?: any): T;
    store(el: T): boolean;
    remove(el: T): boolean;
    clear(): void;
}
//# sourceMappingURL=BufferPool.d.ts.map