import { DrawBatcher } from '../core/DrawBatcher'; import { CanvasEvent, CanvasFlexStyle } from '../core/CanvasNode'; import { CanvasLeaf } from '../core/CanvasLeaf'; import { ButtonIcon } from '../cells/iconSprites'; import { ButtonSize, ButtonView } from '../cells/buttons'; export interface CanvasIconButtonOptions { size?: number | 'auto'; variant?: 'primary' | 'secondary' | 'danger'; view?: ButtonView; buttonSize?: ButtonSize; disabled?: boolean; onClick?: (event: CanvasEvent) => void; } export declare class CanvasIconButton extends CanvasLeaf { icon: ButtonIcon; size: number | 'auto'; variant: 'primary' | 'secondary' | 'danger'; view: ButtonView; buttonSize: ButtonSize; disabled: boolean; isHovered: boolean; private useNewApi; constructor(id: string, icon: ButtonIcon, options?: CanvasIconButtonOptions); set style(value: CanvasFlexStyle); get style(): CanvasFlexStyle; measure(_ctx: CanvasRenderingContext2D): void; onPaint(batcher: DrawBatcher, _ctx: CanvasRenderingContext2D): void; onMouseEnter(): void; onMouseLeave(): void; protected containsHitPoint(x: number, y: number): boolean; }