/** @packageDocumentation
 * @module Rendering
 */
import { TextureMapping } from "./TextureMapping";
/** Represents a material which can be applied to a surface to control aspects of its appearance such as color, reflectivity, texture, and so on.
 * @public
 */
export declare abstract class RenderMaterial {
    /** If the material originated from a Material element in the [[IModelDb]], the Id of that element. */
    readonly key?: string;
    /** Describes how to map an image to a surface to which this material is applied. */
    readonly textureMapping?: TextureMapping;
    /** Used for ordered comparisons, e.g. in DisplayParams.compareForMerge */
    private readonly _guid;
    protected constructor(params: {
        key?: string;
        textureMapping?: TextureMapping;
    });
    get hasTexture(): boolean;
    /** An [OrderedComparator]($bentley) that compares this material against `other`. */
    compare(other: RenderMaterial): number;
}
//# sourceMappingURL=RenderMaterial.d.ts.map