igniteui-webcomponents
Version:
Ignite UI for Web Components is a complete library of UI components, giving you the ability to build modern web applications using encapsulation and the concept of reusable components in a dependency-free approach.
68 lines (67 loc) • 2.29 kB
TypeScript
import { LitElement } from 'lit';
import type { Constructor } from '../common/mixins/constructor.js';
export interface IgcButtonGroupComponentEventMap {
igcSelect: CustomEvent<string | undefined>;
igcDeselect: CustomEvent<string | undefined>;
}
declare const IgcButtonGroupComponent_base: Constructor<import("../common/mixins/event-emitter.js").EventEmitterInterface<IgcButtonGroupComponentEventMap>> & Constructor<LitElement>;
/**
* The `igc-button-group` groups a series of `igc-toggle-button`s together, exposing features such as layout and selection.
*
* @element igc-button-group
*
* @slot - Renders `igc-toggle-button` component.
*
* @fires igcSelect - Emitted when a button is selected through user interaction.
* @fires igcDeselect - Emitted when a button is deselected through user interaction.
*
* @csspart group - The button group container.
*/
export default class IgcButtonGroupComponent extends IgcButtonGroupComponent_base {
static readonly tagName = "igc-button-group";
static styles: import("lit").CSSResult[];
static register(): void;
private get isMultiple();
private _selectedItems;
private _observerCallback;
private get _selectedButtons();
private toggleButtons;
/**
* Disables all buttons inside the group.
* @attr
*/
disabled: boolean;
/**
* Sets the orientation of the buttons in the group.
* @attr
*/
alignment: 'horizontal' | 'vertical';
/**
* Controls the mode of selection for the button group.
* @attr
*/
selection: 'single' | 'single-required' | 'multiple';
/**
* Gets/Sets the currently selected buttons (their values).
* @attr
*/
get selectedItems(): string[];
set selectedItems(values: string[]);
protected updateDisabledState(): void;
protected updateSelectionState(): void;
constructor();
protected firstUpdated(): void;
private handleClick;
private handleSingleSelection;
private handleMultipleSelection;
private emitSelectEvent;
private emitDeselectEvent;
private setSelection;
protected render(): import("lit-html").TemplateResult<1>;
}
declare global {
interface HTMLElementTagNameMap {
'igc-button-group': IgcButtonGroupComponent;
}
}
export {};