import { ToggleRef } from "reactronic";
import { FocusModel } from "./FocusSensor.js";
import { ResizedElement } from "./ResizeSensor.js";
import { PointerSensor } from "./PointerSensor.js";
export declare function OnClick(target: Element, action: ((pointer: PointerSensor) => void) | ToggleRef | undefined, key?: string): void;
export declare function OnClickAsync(target: HTMLElement, action: ((pointer: PointerSensor) => Promise<void>) | ToggleRef | undefined, key?: string): void;
export declare function OnResize(target: HTMLElement, action: ((element: ResizedElement) => void) | undefined, key?: string): void;
export declare function OnFocus(target: HTMLElement, model: FocusModel, switchEditMode?: ((model: FocusModel) => void) | undefined, key?: string): void;
export type ResizeCallback = (width: number, height: number) => void;
export declare class ResizeData {
    id: string;
    handler?: ResizeCallback | undefined;
    constructor(id: string, handler?: ResizeCallback | undefined);
}
export declare function prepareResizeHandler(action: ((width: number, height: number) => void) | ResizeData): (element: ResizedElement) => void;
