import { IModel, IModelUniform, ITexture2D } from '@antv/l7-core';
import BaseModel from '../../core/BaseModel';
declare enum SPRITE_ANIMATE_DIR {
    'UP' = "up",
    'DOWN' = "down"
}
export default class SpriteModel extends BaseModel {
    protected texture: ITexture2D;
    protected mapTexture: string | undefined;
    protected positions: number[];
    protected indices: number[];
    protected timer: number;
    protected spriteTop: number;
    protected spriteUpdate: number;
    protected spriteAnimate: SPRITE_ANIMATE_DIR;
    initSprite(radius?: number, spriteCount?: number, lng?: number, lat?: number): {
        indices: number[];
        positions: number[];
    };
    planeGeometryUpdateTriangulation: () => {
        vertices: number[];
        indices: number[];
        size: number;
    };
    updateModel: () => void;
    planeGeometryTriangulation: () => {
        vertices: number[];
        indices: number[];
        size: number;
    };
    getUninforms(): IModelUniform;
    clearModels(): void;
    initModels(): Promise<IModel[]>;
    buildModels(): Promise<IModel[]>;
    updateTexture(mapTexture: string | undefined): void;
    protected registerBuiltinAttributes(): string;
}
export {};
