/**
 * Copyright (c) 2019 mol* contributors, licensed under MIT, See LICENSE file for more info.
 *
 * @author Alexander Rose <alexander.rose@weirdbyte.de>
 */
import { Renderable, RenderableState } from '../renderable';
import { WebGLContext } from '../webgl/context';
import { AttributeSpec, UniformSpec, Values, TextureSpec, ElementsSpec, ValueSpec } from './schema';
export declare const TextSchema: {
    aGroup: AttributeSpec<"float32">;
    aPosition: AttributeSpec<"float32">;
    aMapping: AttributeSpec<"float32">;
    aDepth: AttributeSpec<"float32">;
    elements: ElementsSpec<"uint32">;
    aTexCoord: AttributeSpec<"float32">;
    tFont: TextureSpec<"image-uint8">;
    padding: ValueSpec<"number">;
    uBorderWidth: UniformSpec<"f">;
    uBorderColor: UniformSpec<"v3">;
    uOffsetX: UniformSpec<"f">;
    uOffsetY: UniformSpec<"f">;
    uOffsetZ: UniformSpec<"f">;
    uBackgroundColor: UniformSpec<"v3">;
    uBackgroundOpacity: UniformSpec<"f">;
    uSize: UniformSpec<"f">;
    uSizeTexDim: UniformSpec<"v2">;
    tSize: TextureSpec<"image-uint8">;
    dSizeType: import("./schema").DefineSpec<"string">;
    uSizeFactor: UniformSpec<"f">;
    aInstance: AttributeSpec<"float32">;
    aTransform: AttributeSpec<"float32">;
    uAlpha: UniformSpec<"f">;
    uVertexCount: UniformSpec<"i">;
    uInstanceCount: UniformSpec<"i">;
    uGroupCount: UniformSpec<"i">;
    uInvariantBoundingSphere: UniformSpec<"v4">;
    drawCount: ValueSpec<"number">;
    instanceCount: ValueSpec<"number">;
    alpha: ValueSpec<"number">;
    matrix: ValueSpec<"m4">;
    transform: ValueSpec<"float32">;
    extraTransform: ValueSpec<"float32">;
    hasReflection: ValueSpec<"boolean">;
    boundingSphere: ValueSpec<"sphere">;
    invariantBoundingSphere: ValueSpec<"sphere">;
    dClipObjectCount: import("./schema").DefineSpec<"number">;
    dClipVariant: import("./schema").DefineSpec<"string">;
    uClippingTexDim: UniformSpec<"v2">;
    tClipping: TextureSpec<"image-uint8">;
    dClipping: import("./schema").DefineSpec<"boolean">;
    uTransparencyTexDim: UniformSpec<"v2">;
    tTransparency: TextureSpec<"image-uint8">;
    dTransparency: import("./schema").DefineSpec<"boolean">;
    transparencyAverage: ValueSpec<"number">;
    uOverpaintTexDim: UniformSpec<"v2">;
    tOverpaint: TextureSpec<"image-uint8">;
    dOverpaint: import("./schema").DefineSpec<"boolean">;
    uMarker: UniformSpec<"f">;
    uMarkerTexDim: UniformSpec<"v2">;
    tMarker: TextureSpec<"image-uint8">;
    dMarkerType: import("./schema").DefineSpec<"string">;
    markerAverage: ValueSpec<"number">;
    markerStatus: ValueSpec<"number">;
    uColor: UniformSpec<"v3">;
    uColorTexDim: UniformSpec<"v2">;
    uColorGridDim: UniformSpec<"v3">;
    uColorGridTransform: UniformSpec<"v4">;
    tColor: TextureSpec<"image-uint8">;
    tPalette: TextureSpec<"image-uint8">;
    tColorGrid: TextureSpec<"texture">;
    dColorType: import("./schema").DefineSpec<"string">;
    dUsePalette: import("./schema").DefineSpec<"boolean">;
};
export declare type TextSchema = typeof TextSchema;
export declare type TextValues = Values<TextSchema>;
export declare function TextRenderable(ctx: WebGLContext, id: number, values: TextValues, state: RenderableState, materialId: number): Renderable<TextValues>;
