import { RaycastEventNode } from '../../Raycast';
import { BaseRaycastController } from './BaseRaycastController';
import { EventContext } from '../../../../../core/event/EventContextType';
export declare class RaycastGPUController extends BaseRaycastController {
    private _node;
    private _resolvedMaterial;
    private _restoreContext;
    private _cursorArray;
    private _renderTarget;
    private _read;
    private _paramColor;
    private _paramAlpha;
    constructor(_node: RaycastEventNode);
    updateMouse(eventContext: EventContext<MouseEvent | DragEvent | PointerEvent>): void;
    processEvent(context: EventContext<MouseEvent>): void;
    private _modifySceneAndRenderer;
    private _restoreSceneAndRenderer;
    private _updateMaterial;
    static PARAM_CALLBACK_updateMaterial(node: RaycastEventNode): void;
}
