export default RectangleWebGLDrawable;
declare const RectangleWebGLDrawable_base: {
    new (): {
        [x: string]: any;
        initialize(renderer: number, instance: Instance, ...args: any[]): void;
        paintDirty: boolean | undefined;
        dirtyX: boolean | undefined;
        dirtyY: boolean | undefined;
        dirtyWidth: boolean | undefined;
        dirtyHeight: boolean | undefined;
        dirtyCornerXRadius: boolean | undefined;
        dirtyCornerYRadius: boolean | undefined;
        markPaintDirty(): void;
        markDirtyRectangle(): void;
        markDirtyX(): void;
        markDirtyY(): void;
        markDirtyWidth(): void;
        markDirtyHeight(): void;
        markDirtyCornerXRadius(): void;
        markDirtyCornerYRadius(): void;
        setToCleanState(): void;
        dirtyFill: boolean | undefined;
        hadStroke: boolean | undefined;
        dirtyStroke: boolean | undefined;
        dirtyLineWidth: boolean | undefined;
        dirtyLineOptions: boolean | undefined;
        dirtyCachedPaints: boolean | undefined;
        lastCachedPaints: any[] | undefined;
        fillCallback: any;
        strokeCallback: any;
        fillObserver: any;
        strokeObserver: any;
        cleanPaintableState(): void;
        dispose(): void;
        markDirtyFill(): void;
        markDirtyStroke(): void;
        markDirtyLineWidth(): void;
        markDirtyLineOptions(): void;
        markDirtyCachedPaints(): void;
    };
};
declare class RectangleWebGLDrawable extends RectangleWebGLDrawable_base {
    /**
     * @public
     * @override
     *
     * @param {number} renderer
     * @param {Instance} instance
     */
    public override initialize(renderer: number, instance: Instance): void;
    vertexArray: Float32Array | undefined;
    upperLeft: Vector2 | undefined;
    lowerLeft: Vector2 | undefined;
    upperRight: Vector2 | undefined;
    lowerRight: Vector2 | undefined;
    transformDirty: boolean | undefined;
    includeVertices: any;
    /**
     * @public
     *
     * @param {WebGLBlock} webglBlock
     */
    public onAddToBlock(webglBlock: WebGLBlock): void;
    webglBlock: any;
    /**
     * @public
     *
     * @param {WebGLBlock} webglBlock
     */
    public onRemoveFromBlock(webglBlock: WebGLBlock): void;
    /**
     * @public
     * @override
     */
    public override markTransformDirty(): void;
    /**
     * Updates the DOM appearance of this drawable (whether by preparing/calling draw calls, DOM element updates, etc.)
     * @public
     * @override
     *
     * @returns {boolean} - Whether the update should continue (if false, further updates in supertype steps should not
     *                      be done).
     */
    public override update(): boolean;
    webglRenderer: number;
}
import Vector2 from '../../../../dot/js/Vector2.js';
//# sourceMappingURL=RectangleWebGLDrawable.d.ts.map