export default WebGLNodeDrawable;
declare class WebGLNodeDrawable extends WebGLSelfDrawable {
    /**
     * @public
     * @override
     *
     * @param {number} renderer
     * @param {Instance} instance
     */
    public override initialize(renderer: number, instance: Instance): void;
    contextChangeListener: any;
    painter: any;
    /**
     * Creates an instance of our Node's "painter" type.
     * @private
     *
     * @returns {*} - Whatever node.painterType is will be the type.
     */
    private createPainter;
    /**
     * Callback for when the WebGL context changes. We'll reconstruct the painter.
     * @public
     */
    public onWebGLContextChange(): void;
    /**
     * @public
     *
     * @param {WebGLBlock} webGLBlock
     */
    public onAddToBlock(webGLBlock: WebGLBlock): void;
    webGLBlock: any;
    /**
     * @public
     *
     * @param {WebGLBlock} webGLBlock
     */
    public onRemoveFromBlock(webGLBlock: WebGLBlock): void;
    /**
     * @public
     *
     * @returns {WebGLNode.PAINTED_NOTHING|WebGLNode.PAINTED_SOMETHING}
     */
    public draw(): 0 | 1;
    /**
     * A "catch-all" dirty method that directly marks the paintDirty flag and triggers propagation of dirty
     * information. This can be used by other mark* methods, or directly itself if the paintDirty flag is checked.
     * @public
     *
     * It should be fired (indirectly or directly) for anything besides transforms that needs to make a drawable
     * dirty.
     */
    public markPaintDirty(): void;
    get shaderAttributes(): any;
    webglRenderer: number;
}
import { WebGLSelfDrawable } from '../../imports.js';
//# sourceMappingURL=WebGLNodeDrawable.d.ts.map