import * as i0 from '@angular/core'; import { EventEmitter, AfterContentInit, QueryList, OnInit, OnDestroy, AfterViewInit, Injector } from '@angular/core'; import { TFormFieldSize, FormFieldControlBaseComponent, FormFieldControl } from '@talenra/ngx-base/form-field'; import { ControlValueAccessor } from '@angular/forms'; import { ScrollStrategy } from '@angular/cdk/overlay'; /** * `` is used to display a chip with a label and a close button in a multiselect. * The close button emits an event when clicked. * * The label is displayed in the chip and the value is emitted when the close button is clicked. * * @internal */ declare class ChipComponent { value: string; label: string; disabled: boolean; size: i0.InputSignal; closeClicked: EventEmitter; protected closeClick($event: MouseEvent): void; private get hostClass(); static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } /** @internal */ interface OptionDimensions { offsetHeight: number; offsetTop: number; } /** * Option represents a single option in the context of a Select. Each Option has a value property that can be used to * set the value that will be selected if the user chooses this option. The content of the Option is displayed in the * Select's dropdown list. * * #### Reactive form * * ```typescript * // Component class * sampleForm: FormGroup = new FormGroup({ * size: new FormControl('m'), * }); * ``` * * ```html * *
* * * S * M * L * * *
* ``` * * ### Import * * ```typescript * import { SelectModule } from '@talenra/ngx-base/select'; * ``` * * ../../#/select * * @see {@link FormFieldComponent} * @see {@link SelectComponent} */ declare class OptionComponent implements AfterContentInit { /** * The option's value. Might differ from the label shown to the user. */ value: any; /** * The icon to be displayed beside the label. * * See `@talenra/icons` for a list of available icons. */ icon?: string; /** * Label displayed to the user * * @internal */ label: string; /** * The option's index in the containing `SelectComponent`'s options array. * * @internal */ index?: number; /** * Determines whether the option is shown in the UI. Used to hide options when they do not match filter. * * @internal */ get isHidden(): boolean; /** @internal */ set isHidden(value: boolean); private _isHidden; /** @internal */ get isSelected(): boolean; /** @internal */ set isSelected(value: boolean); private _isSelected; /** @internal */ get isSelectedForMultiselect(): boolean; /** @internal */ set isSelectedForMultiselect(value: boolean); private _isSelectedForMultiselect; /** @internal */ get hasFocus(): boolean; /** @internal */ set hasFocus(value: boolean); private _hasFocus; private elementRef; private changeDetector; private select; /** @internal */ ngAfterContentInit(): void; /** * Returns the height and the vertical offset relative to the options list. * * @internal */ get dimensions(): OptionDimensions; private selectOption; private handleMouseEvent; private get hostClass(); static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } /** * OptionGroup is a container for single options in the context of a Select. * * #### Reactive form * * ```typescript * // Component class * sampleForm: FormGroup = new FormGroup({ * animalia: new FormControl(), * }); * ``` * * ```html * *
* * * * Ant * Bee * * * Cat * Cow * Dog * * * *
* ``` * * ### Import * * ```typescript * import { SelectModule } from '@talenra/ngx-base/select'; * ``` * * ../../#/select * * @see {@link FormFieldComponent} * @see {@link SelectComponent} */ declare class OptionGroupComponent { /** Label to be displayed for the option group */ label: string; /** * Determines whether the option is shown in the UI. Used to hide options when they do not match filter. * * @internal */ get isHidden(): boolean; /** @internal */ set isHidden(value: boolean); private _isHidden; /** * The options associated with this option group * * @internal */ options?: QueryList; private select; private changeDetector; private get hostClass(); static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } /** * Values accepted by the `Select`'s `kind` property. * * ```html * * * * ``` * * ### Import * * ```typescript * import { SelectKind } from '@talenra/ngx-base/select'; * ``` * * @see {@link SelectComponent} */ declare const SelectKind: { readonly Ghost: "ghost"; readonly Primary: "primary"; }; /** * Type of values accepted by the `SelectComponent`'s `kind` property. * * ### Import * * ```typescript * import { TSelectKind } from '@talenra/ngx-base/select'; * ``` * * @see {@link SelectComponent} */ type TSelectKind = (typeof SelectKind)[keyof typeof SelectKind]; /** * Event emitted when the user has changed the select's value. * * ### Import * * ```typescript * import { SelectChange } from '@talenra/ngx-base/select'; * ``` * * @see {@link SelectComponent} */ interface SelectChange { /** Reference to the emitting select component */ source: SelectComponent; /** Current value of the emitting select component */ value: any; } /** @internal */ interface Option { value: string; label: string; } /** * Select is a form control for selecting a value from a set of options, similar to the native `