import { Renderer } from "../Renderer";
import { Primitive, SubMesh } from "../graphic";
import { Material } from "../material";
import { ShaderData, SubShader } from "../shader";
import { Texture2D } from "../texture";
import { IPoolElement } from "../utils/ObjectPool";
import { SubPrimitiveChunk } from "./SubPrimitiveChunk";
export declare class RenderElement implements IPoolElement {
    priority: number;
    distanceForSort: number;
    component: Renderer;
    primitive: Primitive;
    material: Material;
    subPrimitive: SubMesh;
    subShader: SubShader;
    shaderData?: ShaderData;
    instancedRenderers: Renderer[];
    texture?: Texture2D;
    subChunk?: SubPrimitiveChunk;
    set(component: Renderer, material: Material, primitive: Primitive, subPrimitive: SubMesh, texture?: Texture2D, subChunk?: SubPrimitiveChunk): void;
    dispose(): void;
}
