import { Menu, StringKey, ToolBar as NativeToolbar, ToolBarItemType, Vec4 } from "ave-ui"; import { AveComponent, IComponentProps, IComponentStyle } from "./common"; interface IToolbarItemBase { type: ToolBarItemType; id?: number; strKey?: StringKey; name?: string; icon?: string; iconSize?: number; } export declare type IToolbarItem = IToolbarMenu | IToolbarButton; export interface IToolbarButton extends IToolbarItemBase { type: ToolBarItemType.Button; onClick?: (sender: Menu, id: number) => void; } export interface IToolbarMenu extends IToolbarItemBase { type: ToolBarItemType.Menu | ToolBarItemType.ButtonDrop; items: IToolbarMenuItem[]; defaultRadioId?: number; onClick?: (sender: Menu, id: number) => void; } export interface IToolbarMenuItem { id: number; name?: string; icon?: string; iconSize?: number; strKey?: StringKey; subMenu?: { children: IToolbarMenuItem[]; onClick?: (sender: Menu, id: number) => void; }; } export interface IToolbarStyle extends IComponentStyle { textColor?: Vec4; } export declare type ToolbarPosition = "left" | "right"; export interface IToolbarComponentProps extends IComponentProps { strKey?: StringKey; items?: IToolbarItem[]; withBackground?: boolean; style?: IToolbarStyle; position?: ToolbarPosition; onClick?: (sender: NativeToolbar, id: number) => void; } export declare class ToolbarComponent extends AveComponent { static tagName: string; private toolbar; private position; protected onCreateUI(): NativeToolbar; private createMenu; getPosition(): ToolbarPosition; protected onUpdateProp(propName: keyof IToolbarComponentProps, propValue: any): void; private setValueForStyles; } export declare const Toolbar: import("./common").ReactAveTag; export {};