import { L10n } from '@syncfusion/ej2-base'; /** @private */ export interface ButtonGroupItem { label: string; type?: 'button' | 'submit' | 'reset'; style?: 'primary' | 'flat' | 'information' | 'error' | 'success' | 'warning'; iconCss?: string; iconPosition?: 'Left' | 'Right'; disabled?: boolean; } /** @private */ export interface ButtonGroupEditorOptions { host: HTMLElement; buttons: ButtonGroupItem[]; l10n: L10n; onChange: (value: ButtonGroupItem[]) => void; enableRtl?: boolean; } /** @private */ export declare class ButtonGroupEditor { private host; private buttons; private l10n; private onChange; private rows; private nextId; private grid; private destroyed; private gridHost; private addButton; private addButtonListener; private templateId; private textBoxInstances; private dropDownInstances; private checkBoxInstances; private textBoxKeydownListeners; private deleteButtonKeydownListeners; private props; constructor(opts: ButtonGroupEditorOptions); /** @private */ render(): void; private onGridDataBound; /** @private */ destroy(): void; private clearListeners; private normalizeRows; private updateButtons; private handleAddRow; private handleDeleteRow; private handleLabelChange; private handleTypeChange; private handleStyleChange; private handleIconCssChange; private handleIconPositionChange; private handleDisabledChange; }