import { SelectButtonPassThrough, SelectButtonOptionClickEvent, SelectButtonChangeEvent, SelectButtonItemTemplateContext } from 'primeng/types/selectbutton'; export * from 'primeng/types/selectbutton'; import * as i0 from '@angular/core'; import { AfterViewChecked, EventEmitter, TemplateRef, QueryList } from '@angular/core'; import * as i2 from 'primeng/api'; import { PrimeTemplate } from 'primeng/api'; import { BaseEditableHolder } from 'primeng/baseeditableholder'; import * as i1 from 'primeng/bind'; import { Bind } from 'primeng/bind'; import { BaseStyle } from 'primeng/base'; /** * * SelectButton is used to choose single or multiple items from a list using buttons. * * [Live Demo](https://www.primeng.org/selectbutton/) * * @module selectbuttonstyle * */ declare enum SelectButtonClasses { /** * Class name of the root element */ root = "p-selectbutton" } declare class SelectButtonStyle extends BaseStyle { name: string; style: string; classes: { root: ({ instance }: { instance: any; }) => (string | { 'p-invalid': any; 'p-selectbutton-fluid': any; })[]; }; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } interface SelectButtonStyle extends BaseStyle { } declare const SELECTBUTTON_VALUE_ACCESSOR: any; /** * SelectButton is used to choose single or multiple items from a list using buttons. * @group Components */ declare class SelectButton extends BaseEditableHolder implements AfterViewChecked { /** * An array of selectitems to display as the available options. * @group Props */ options: any[] | undefined; /** * Name of the label field of an option. * @group Props */ optionLabel: string | undefined; /** * Name of the value field of an option. * @group Props */ optionValue: string | undefined; /** * Name of the disabled field of an option. * @group Props */ optionDisabled: string | undefined; /** * Whether selection can be cleared. * @group Props */ get unselectable(): boolean; private _unselectable; set unselectable(value: boolean); /** * Index of the element in tabbing order. * @group Props */ tabindex: number; /** * When specified, allows selecting multiple values. * @group Props */ multiple: boolean | undefined; /** * Whether selection can not be cleared. * @group Props */ allowEmpty: boolean; /** * Style class of the component. * @group Props */ styleClass: string | undefined; /** * Establishes relationships between the component and label(s) where its value should be one or more element IDs. * @group Props */ ariaLabelledBy: string | undefined; /** * A property to uniquely identify a value in options. * @group Props */ dataKey: string | undefined; /** * When present, it specifies that the component should automatically get focus on load. * @group Props */ autofocus: boolean | undefined; /** * Specifies the size of the component. * @defaultValue undefined * @group Props */ size: i0.InputSignal<"large" | "small" | undefined>; /** * Spans 100% width of the container when enabled. * @defaultValue undefined * @group Props */ fluid: i0.InputSignalWithTransform; /** * Callback to invoke on input click. * @param {SelectButtonOptionClickEvent} event - Custom click event. * @group Emits */ onOptionClick: EventEmitter; /** * Callback to invoke on selection change. * @param {SelectButtonChangeEvent} event - Custom change event. * @group Emits */ onChange: EventEmitter; /** * Custom item template. * @param {SelectButtonItemTemplateContext} context - item context. * @see {@link SelectButtonItemTemplateContext} * @group Templates */ itemTemplate: TemplateRef | undefined; _itemTemplate: TemplateRef | undefined; get equalityKey(): string | null | undefined; value: any; focusedIndex: number; _componentStyle: SelectButtonStyle; $pcSelectButton: SelectButton | undefined; bindDirectiveInstance: Bind; onAfterViewChecked(): void; getAllowEmpty(): boolean; getOptionLabel(option: any): any; getOptionValue(option: any): any; isOptionDisabled(option: any): any; onOptionSelect(event: any, option: any, index: any): void; changeTabIndexes(event: any, direction: any): void; onFocus(event: Event, index: number): void; onBlur(): void; removeOption(option: any): void; isSelected(option: any): boolean; templates: QueryList | undefined; onAfterContentInit(): void; /** * @override * * @see {@link BaseEditableHolder.writeControlValue} * Writes the value to the control. */ writeControlValue(value: any, setModelValue: (value: any) => void): void; get dataP(): string | undefined; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; static ngAcceptInputType_unselectable: unknown; static ngAcceptInputType_tabindex: unknown; static ngAcceptInputType_multiple: unknown; static ngAcceptInputType_allowEmpty: unknown; static ngAcceptInputType_autofocus: unknown; } declare class SelectButtonModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } export { SELECTBUTTON_VALUE_ACCESSOR, SelectButton, SelectButtonClasses, SelectButtonModule, SelectButtonStyle };