devextreme-angular
Version:
Angular UI and visualization components based on DevExtreme widgets
319 lines (242 loc) • 12.9 kB
TypeScript
/*!
* devextreme-angular
* Version: 25.2.3
* Build date: Fri Dec 12 2025
*
* Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
*
* This software may be modified and distributed under the terms
* of the MIT license. See the LICENSE file in the root of the project for details.
*
* https://github.com/DevExpress/devextreme-angular
*/
import { TransferState, ElementRef, NgZone, OnDestroy, EventEmitter, OnChanges, DoCheck, SimpleChanges, QueryList } from '@angular/core';
import { dxButtonGroupItem, ContentReadyEvent, DisposingEvent, InitializedEvent, ItemClickEvent, OptionChangedEvent, SelectionChangedEvent } from 'devextreme/ui/button_group';
import { SingleMultipleOrNone, ButtonStyle } from 'devextreme/common';
import DxButtonGroup from 'devextreme/ui/button_group';
import { DxComponent, DxTemplateHost, NestedOptionHost, IterableDifferHelper, WatcherHelper, CollectionNestedOption } from 'devextreme-angular/core';
import type * as DxButtonGroupTypes from "devextreme/ui/button_group_types";
import * as i0 from "@angular/core";
import * as i1 from "devextreme-angular/ui/nested";
import * as i2 from "devextreme-angular/ui/button-group/nested";
import * as i3 from "devextreme-angular/core";
/**
* The ButtonGroup is a UI component that contains a set of toggle buttons and can be used as a mode switcher.
*/
export declare class DxButtonGroupComponent extends DxComponent implements OnDestroy, OnChanges, DoCheck {
private _watcherHelper;
private _idh;
set _itemsContentChildren(value: QueryList<CollectionNestedOption>);
instance: DxButtonGroup;
/**
* Specifies the shortcut key that sets focus on the UI component.
*/
get accessKey(): string | undefined;
set accessKey(value: string | undefined);
/**
* Specifies whether the UI component changes its visual state as a result of user interaction.
*/
get activeStateEnabled(): boolean;
set activeStateEnabled(value: boolean);
/**
* Specifies a template for all the buttons in the group.
*/
get buttonTemplate(): any;
set buttonTemplate(value: any);
/**
* Specifies whether the UI component responds to user interaction.
*/
get disabled(): boolean;
set disabled(value: boolean);
/**
* Specifies the global attributes to be attached to the UI component's container element.
*/
get elementAttr(): Record<string, any>;
set elementAttr(value: Record<string, any>);
/**
*
*/
get focusStateEnabled(): boolean;
set focusStateEnabled(value: boolean);
/**
* Specifies the UI component's height.
*/
get height(): number | string | undefined;
set height(value: number | string | undefined);
/**
* Specifies text for a hint that appears when a user pauses on the UI component.
*/
get hint(): string | undefined;
set hint(value: string | undefined);
/**
*
*/
get hoverStateEnabled(): boolean;
set hoverStateEnabled(value: boolean);
/**
* Configures buttons in the group.
*/
get items(): Array<dxButtonGroupItem>;
set items(value: Array<dxButtonGroupItem>);
/**
* Specifies which data field provides keys used to distinguish between the selected buttons.
*/
get keyExpr(): Function | string;
set keyExpr(value: Function | string);
/**
* Switches the UI component to a right-to-left representation.
*/
get rtlEnabled(): boolean;
set rtlEnabled(value: boolean);
/**
* Contains keys of selected buttons and allows you to specify initial button selection state.
*/
get selectedItemKeys(): Array<any>;
set selectedItemKeys(value: Array<any>);
/**
* Contains the data objects that correspond to the selected buttons. The data objects are taken from the items array.
*/
get selectedItems(): Array<any>;
set selectedItems(value: Array<any>);
/**
* Specifies the button selection mode.
*/
get selectionMode(): SingleMultipleOrNone;
set selectionMode(value: SingleMultipleOrNone);
/**
* Specifies how buttons in the group are styled.
*/
get stylingMode(): ButtonStyle;
set stylingMode(value: ButtonStyle);
/**
* Specifies the number of the element when the Tab key is used for navigating.
*/
get tabIndex(): number;
set tabIndex(value: number);
/**
* Specifies whether the UI component is visible.
*/
get visible(): boolean;
set visible(value: boolean);
/**
* Specifies the UI component's width.
*/
get width(): number | string | undefined;
set width(value: number | string | undefined);
/**
* A function that is executed when the UI component is rendered and each time the component is repainted.
*/
onContentReady: EventEmitter<ContentReadyEvent>;
/**
* A function that is executed before the UI component is disposed of.
*/
onDisposing: EventEmitter<DisposingEvent>;
/**
* A function used in JavaScript frameworks to save the UI component instance.
*/
onInitialized: EventEmitter<InitializedEvent>;
/**
* A function that is executed when a button is clicked or tapped.
*/
onItemClick: EventEmitter<ItemClickEvent>;
/**
* A function that is executed after a UI component property is changed.
*/
onOptionChanged: EventEmitter<OptionChangedEvent>;
/**
* A function that is executed when a button is selected or selection is canceled.
*/
onSelectionChanged: EventEmitter<SelectionChangedEvent>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
accessKeyChange: EventEmitter<string | undefined>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
activeStateEnabledChange: EventEmitter<boolean>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
buttonTemplateChange: EventEmitter<any>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
disabledChange: EventEmitter<boolean>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
elementAttrChange: EventEmitter<Record<string, any>>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
focusStateEnabledChange: EventEmitter<boolean>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
heightChange: EventEmitter<number | string | undefined>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
hintChange: EventEmitter<string | undefined>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
hoverStateEnabledChange: EventEmitter<boolean>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
itemsChange: EventEmitter<Array<dxButtonGroupItem>>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
keyExprChange: EventEmitter<Function | string>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
rtlEnabledChange: EventEmitter<boolean>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
selectedItemKeysChange: EventEmitter<Array<any>>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
selectedItemsChange: EventEmitter<Array<any>>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
selectionModeChange: EventEmitter<SingleMultipleOrNone>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
stylingModeChange: EventEmitter<ButtonStyle>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
tabIndexChange: EventEmitter<number>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
visibleChange: EventEmitter<boolean>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
widthChange: EventEmitter<number | string | undefined>;
constructor(elementRef: ElementRef, ngZone: NgZone, templateHost: DxTemplateHost, _watcherHelper: WatcherHelper, _idh: IterableDifferHelper, optionHost: NestedOptionHost, transferState: TransferState, platformId: any);
protected _createInstance(element: any, options: any): DxButtonGroup;
ngOnDestroy(): void;
ngOnChanges(changes: SimpleChanges): void;
setupChanges(prop: string, changes: SimpleChanges): void;
ngDoCheck(): void;
_setOption(name: string, value: any): void;
static ɵfac: i0.ɵɵFactoryDeclaration<DxButtonGroupComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<DxButtonGroupComponent, "dx-button-group", never, { "accessKey": { "alias": "accessKey"; "required": false; }; "activeStateEnabled": { "alias": "activeStateEnabled"; "required": false; }; "buttonTemplate": { "alias": "buttonTemplate"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "elementAttr": { "alias": "elementAttr"; "required": false; }; "focusStateEnabled": { "alias": "focusStateEnabled"; "required": false; }; "height": { "alias": "height"; "required": false; }; "hint": { "alias": "hint"; "required": false; }; "hoverStateEnabled": { "alias": "hoverStateEnabled"; "required": false; }; "items": { "alias": "items"; "required": false; }; "keyExpr": { "alias": "keyExpr"; "required": false; }; "rtlEnabled": { "alias": "rtlEnabled"; "required": false; }; "selectedItemKeys": { "alias": "selectedItemKeys"; "required": false; }; "selectedItems": { "alias": "selectedItems"; "required": false; }; "selectionMode": { "alias": "selectionMode"; "required": false; }; "stylingMode": { "alias": "stylingMode"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "visible": { "alias": "visible"; "required": false; }; "width": { "alias": "width"; "required": false; }; }, { "onContentReady": "onContentReady"; "onDisposing": "onDisposing"; "onInitialized": "onInitialized"; "onItemClick": "onItemClick"; "onOptionChanged": "onOptionChanged"; "onSelectionChanged": "onSelectionChanged"; "accessKeyChange": "accessKeyChange"; "activeStateEnabledChange": "activeStateEnabledChange"; "buttonTemplateChange": "buttonTemplateChange"; "disabledChange": "disabledChange"; "elementAttrChange": "elementAttrChange"; "focusStateEnabledChange": "focusStateEnabledChange"; "heightChange": "heightChange"; "hintChange": "hintChange"; "hoverStateEnabledChange": "hoverStateEnabledChange"; "itemsChange": "itemsChange"; "keyExprChange": "keyExprChange"; "rtlEnabledChange": "rtlEnabledChange"; "selectedItemKeysChange": "selectedItemKeysChange"; "selectedItemsChange": "selectedItemsChange"; "selectionModeChange": "selectionModeChange"; "stylingModeChange": "stylingModeChange"; "tabIndexChange": "tabIndexChange"; "visibleChange": "visibleChange"; "widthChange": "widthChange"; }, ["_itemsContentChildren"], never, true, never>;
}
export declare class DxButtonGroupModule {
static ɵfac: i0.ɵɵFactoryDeclaration<DxButtonGroupModule, never>;
static ɵmod: i0.ɵɵNgModuleDeclaration<DxButtonGroupModule, never, [typeof DxButtonGroupComponent, typeof i1.DxiItemModule, typeof i2.DxiButtonGroupItemModule, typeof i3.DxIntegrationModule, typeof i3.DxTemplateModule], [typeof DxButtonGroupComponent, typeof i1.DxiItemModule, typeof i2.DxiButtonGroupItemModule, typeof i3.DxTemplateModule]>;
static ɵinj: i0.ɵɵInjectorDeclaration<DxButtonGroupModule>;
}
export * from 'devextreme-angular/ui/button-group/nested';
export { DxButtonGroupTypes };