import { Matrix, EventDispatcher } from '@awayjs/core';
import { ImageBase, ImageSampler } from '@awayjs/stage';
import { ITexture } from '../base/ITexture';
/**
 *
 */
export declare class Style extends EventDispatcher {
    private _onImageInvalidate;
    private _onImageClear;
    private _sampler;
    private _samplers;
    private _image;
    private _images;
    private _uvMatrix;
    private _color;
    get sampler(): ImageSampler;
    set sampler(value: ImageSampler);
    get image(): ImageBase;
    set image(value: ImageBase);
    get uvMatrix(): Matrix;
    set uvMatrix(value: Matrix);
    /**
     * The diffuse reflectivity color of the surface.
     */
    get color(): number;
    set color(value: number);
    constructor();
    getImageAt(texture: ITexture, index?: number): ImageBase;
    getSamplerAt(texture: ITexture, index?: number): ImageSampler;
    addImageAt(image: ImageBase, texture: ITexture, index?: number): void;
    addSamplerAt(sampler: ImageSampler, texture: ITexture, index?: number): void;
    removeImageAt(texture: ITexture, index?: number): void;
    removeSamplerAt(texture: ITexture, index?: number): void;
    private _invalidateProperties;
    private _invalidateImages;
    private _clearImages;
}
//# sourceMappingURL=Style.d.ts.map