import { ObjectAbstract } from '../../common/object-abstract';
import { AssetAtomType } from '../../common/data-type';
import { TextureType, IGenerate } from '../../common/interface/texture';
import { ObjectCommon } from '../../common/object-common';
/**
 * @public
 * @class Texture
 * @extends ObjectCommon
 * @implements ObjectAbstract
 */
declare class Texture extends ObjectCommon implements ObjectAbstract {
    className: string;
    private AssetAtom;
    /**
     * @constructor
     * @param {TextureType} opt (optional)
     */
    constructor(opt?: TextureType);
    /**
     * @public
     * @function GetScheme
     * @returns {{AssetAtom: AssetAtomType}}
     */
    GetScheme(): {
        AssetAtom: AssetAtomType;
    };
    /**
     * @public
     * @function GetData
     * @returns {TextureType}
     */
    GetData(): TextureType;
    /**
     * @public
     * @function SetData
     * @param {TextureType} opt
     * @returns {void}
     */
    SetData(opt: TextureType): void;
    /**
     * @public
     * @function generateAtomData
     * @param {TextureType} opt
     * @returns {IGenerate}
     */
    generateAtomData(opt: TextureType): IGenerate;
}
export default Texture;
