import type * as p from "../../core/properties"; import type { EventType } from "../../core/ui_events"; import { Signal0 } from "../../core/signaling"; import type { IconLike } from "../common/kinds"; import { Model } from "../../model"; import { MenuItem } from "../ui/menus"; import type { MenuItemLike } from "../ui/menus"; import type { ToolView, EventRole } from "./tool"; import { Tool } from "./tool"; import type { ToolButton } from "./tool_button"; export type ToolLike = T | ToolProxy; export declare namespace ToolProxy { type Attrs = p.AttrsOf>; type Props = Model.Props & { tools: p.Property[]>; visible: p.Property; active: p.Property; disabled: p.Property; }; } export interface ToolProxy extends ToolProxy.Attrs { } export declare class ToolProxy extends Model { properties: ToolProxy.Props; __view_type__: ToolView; constructor(attrs?: Partial>); do: Signal0; /** * Returns the first real tool this proxy maintains. */ get underlying(): T; tool_button(): ToolButton; menu_item(): MenuItem; get event_type(): EventType | EventType[] | undefined; get event_role(): EventRole; get event_types(): EventType[]; get default_order(): number; get tooltip(): string; get tool_name(): string; get computed_icon(): IconLike | undefined; get toggleable(): boolean; get group(): string | boolean; initialize(): void; connect_signals(): void; doit(): void; set_active(): void; get menu(): MenuItemLike[] | null; supports_auto(): boolean; } //# sourceMappingURL=tool_proxy.d.ts.map