import IAsset from "awayjs-core/lib/library/IAsset";
import IAnimationSet from "../animators/IAnimationSet";
import IRenderable from "../base/IRenderable";
import LightPickerBase from "../materials/lightpickers/LightPickerBase";
import TextureBase from "../textures/TextureBase";
import Style from "../base/Style";
/**
 * ISurface provides an interface for objects that define the properties of a renderable's surface.
 *
 * @interface away.base.ISurface
 */
interface ISurface extends IAsset {
    alphaThreshold: number;
    style: Style;
    curves: boolean;
    imageRect: boolean;
    blendMode: string;
    lightPicker: LightPickerBase;
    animationSet: IAnimationSet;
    iOwners: Array<IRenderable>;
    getNumTextures(): number;
    getTextureAt(index: number): TextureBase;
    addTexture(texture: TextureBase): any;
    removeTexture(texture: TextureBase): any;
}
export default ISurface;
