import { 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(): import("@antv/l7-core").IModel[];
    buildModels(): import("@antv/l7-core").IModel[];
    updateTexture(mapTexture: string | undefined): void;
    protected getConfigSchema(): {
        properties: {
            opacity: {
                type: string;
                minimum: number;
                maximum: number;
            };
        };
    };
    protected registerBuiltinAttributes(): string;
}
export {};
