/**
 * WebGL 中的顶点数据压缩
 * 使用 float-pack 技术，在 shader 中解压
 * @see https://zhuanlan.zhihu.com/p/67484498
 */
export interface ICircleVertex {
    tileX: number;
    tileY: number;
    shape: string;
    color: number[];
    radius: number;
    opacity: number;
    stroke: number[];
    strokeWidth: number;
    strokeOpacity: number;
}
export declare const LEFT_SHIFT1 = 2;
export declare const LEFT_SHIFT2 = 4;
export declare const LEFT_SHIFT6 = 64;
export declare const LEFT_SHIFT7 = 128;
export declare const LEFT_SHIFT8 = 256;
export declare const LEFT_SHIFT9 = 512;
export declare const LEFT_SHIFT13 = 8192;
export declare const LEFT_SHIFT14 = 16384;
export declare const LEFT_SHIFT15 = 32768;
export declare const LEFT_SHIFT16: number;
export declare const LEFT_SHIFT17 = 131072;
export declare const LEFT_SHIFT18 = 262144;
export declare const LEFT_SHIFT19 = 524288;
export declare const LEFT_SHIFT20 = 1048576;
export declare const LEFT_SHIFT21 = 2097152;
export declare const LEFT_SHIFT22 = 4194304;
export declare const LEFT_SHIFT23 = 8388608;
export declare const LEFT_SHIFT24 = 16777216;
export declare const LEFT_SHIFT25: number;
/**
 * encode 2 8-bit unsigned int into a 16-bit float
 * @param {number} a 8-bit int
 * @param {number} b 8-bit int
 * @return {number} float
 */
export declare function packUint8ToFloat(a: number, b: number): number;
/**
 * 为 SDF circle 压缩顶点数据
 */
export declare function packCircleVertex(props: ICircleVertex): {
    packedBuffer: number[][];
    packedBuffer2: number[][];
    packedBuffer3: number[][];
};
export declare function packOpacity(opacity: number, placed: boolean): number;
