/**
* DevExpress Analytics (core\tools\_actionListBase.d.ts)
* Version: 25.2.7
* Build date: May 5, 2026
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
* License: https://www.devexpress.com/Support/EULAs/universal.xml
*/
///
import { Observable, Computed } from 'knockout';
import { IShortcutActionList } from './_keyboardHelper';
import { IAction, IActionViewModel, IHotKey } from '../../widgets/utils';
import { BaseRenderingModel } from '../../serializer/native/models/base.model';
import { PropertyChangedEventArgs, ArrayPropertyChangedEventArgs } from '../../serializer/propertyChangedEvents';
import { IActionListBaseViewModel } from './_actionListBase.viewModel';
export declare class ActionListsBase extends BaseRenderingModel implements IShortcutActionList {
createViewModel(): IActionListBaseViewModel;
constructor(enabled?: () => boolean);
subscribeOnChanges(action: T, viewModelAction: IActionViewModel, propertyNames: Array): void;
subscribe(model: T, propertyName: keyof T, callback: (newValue?: any) => void): void;
createActionViewModel(action: IAction, index: number): IActionViewModel;
onPropertyChanged(args: PropertyChangedEventArgs | ArrayPropertyChangedEventArgs): void;
updateViewModel(args: PropertyChangedEventArgs | ArrayPropertyChangedEventArgs): void;
mapActionToViewModels(actions: IAction[]): IActionViewModel[];
getActions(): IAction[];
processShortcut(e: JQueryKeyEventObject): void;
shouldIgnoreProcessing(e: JQueryKeyEventObject): boolean;
enabled: () => boolean;
toolbarItems: IAction[] | Observable | Computed;
}
export declare class BaseAction extends BaseRenderingModel implements IAction {
constructor(model?: IAction);
onPropertyChanged(args: PropertyChangedEventArgs | ArrayPropertyChangedEventArgs): void;
createViewModel(parent?: ActionListsBase, index?: number): IActionViewModel;
getViewModel(parent?: ActionListsBase, index?: number): IActionViewModel;
imageClassName: string;
imageTemplateName: string;
disabled: boolean;
visible: boolean;
selected: boolean;
text: string;
textId: string;
id: string;
templateName: string;
hasSeparator: boolean;
contentData: any;
hotKey: IHotKey | IHotKey[];
clickAction: (model: any) => void;
displayExpr: (value: any) => string;
isVisible(): boolean;
isDisabled(): boolean;
}