import { InstancedVertexObjectGeometry } from '../../vertex-objects/InstancedVertexObjectGeometry.js';
import type { VertexObjectPool } from '../../vertex-objects/VertexObjectPool.js';
import type { BaseSprite } from '../BaseSprite.js';
import type { TexturedSprite } from './TexturedSprite.js';
export type TexturedSpritesBasePool = VertexObjectPool<BaseSprite>;
export type TexturedSpritePool = VertexObjectPool<TexturedSprite>;
export type TexturedSpriteMakeBaseSpriteArgs = [width: number, height: number] | [width: number, height: number, xOffset: number, yOffset: number];
export interface TexturedSpriteGeometryParameters {
    capacity: number;
    attributeUsage?: {
        dynamic?: string[];
        stream?: string[];
        static?: string[];
    };
}
export declare class TexturedSpritesGeometry extends InstancedVertexObjectGeometry<TexturedSprite, BaseSprite> {
    basePool: TexturedSpritesBasePool;
    instancedPool: TexturedSpritePool;
    readonly isTexturedSpritesGeometry = true;
    constructor(capacity?: number | TexturedSpriteGeometryParameters, makeBaseSpriteArgs?: TexturedSpriteMakeBaseSpriteArgs);
}
//# sourceMappingURL=TexturedSpritesGeometry.d.ts.map