import { ISupportInitialize } from "../../Interfaces/ISupportInitialize";
import { IDisposable } from "../../Interfaces/IDisposable";
export declare abstract class BaseProceduralTexture extends BABYLON.ProceduralTexture implements IDisposable, ISupportInitialize {
    private _initializing;
    private _baseTexture;
    protected get initializing(): boolean;
    get baseTexture(): BABYLON.Texture;
    set baseTexture(texture: BABYLON.Texture);
    isReadyAsync(): Promise<void>;
    constructor(name: string, size: number, fragment: string, scene: BABYLON.Scene, baseTexture: BABYLON.Texture, fallbackTexture?: BABYLON.Texture, generateMipMaps?: boolean);
    dispose(): void;
    beginInit(): void;
    endInit(): void;
    protected updateShaderUniforms(): void;
    protected setBaseTextureUniform(): void;
}
