import * as i0 from '@angular/core'; import { TemplateRef, OnInit, AfterViewInit, OnChanges, ChangeDetectorRef, ElementRef, EventEmitter, SimpleChanges } from '@angular/core'; import { NgControl, NgForm, FormGroupDirective } from '@angular/forms'; import { ContextMenuComponent } from '@usitsdasdesign/dds-ng/context-menu'; import { DestroyCtor, I18nCtor, ResponsivenessCtor, FormAccessorCtor, ErrorStateCtor } from '@usitsdasdesign/dds-ng/core/common-behaviors'; import { LabelPosition, Size, ErrorState, PositionState } from '@usitsdasdesign/dds-ng/shared'; import { DdsConfigService } from '@usitsdasdesign/dds-ng/shared/dds-config'; import { I18nService, ITranslation } from '@usitsdasdesign/dds-ng/shared/i18n'; import { ResizeHandlerService } from '@usitsdasdesign/dds-ng/shared/resize-handler'; import { StickerDirective } from '@usitsdasdesign/dds-ng/sticker'; interface SelectOptions { list?: SelectItemOptions[] | string[]; label?: string; labelPosition?: LabelPosition | string; description?: string; placeholder?: string; icon?: string; customClass?: string; headingProp?: string; groupingListProp?: string; ariaLabel?: string; size?: Size | string; selectedItemTemplate?: TemplateRef; placeholderTemplate?: TemplateRef; optionsTemplate?: TemplateRef; errorState?: string | ErrorState; errorMessage?: string; isError?: boolean; disabled?: boolean; isInverse?: boolean; isResponsive?: boolean; isRequired?: boolean; isLoading?: boolean; isLoadingWithCounter?: boolean; loadingTemplate?: TemplateRef; stickerWidth?: number | string; stickerMaxHeight?: number | string; stickerCustomClass?: string; stickerIndent?: number; stickerShift?: number; stickerIsDisabled?: boolean; stickerPosition?: PositionState | string; stickerIsDynamic?: boolean; } interface SelectItemOptions { value?: any; heading?: string; customClass?: string; counter?: number; disabled?: boolean; [key: string]: any; } interface SelectGroupingOptions { items?: SelectItemOptions[]; [key: string]: any; } declare const SelectBase: DestroyCtor & I18nCtor & ResponsivenessCtor & FormAccessorCtor & ErrorStateCtor; declare class SelectComponent extends SelectBase implements OnInit, AfterViewInit, OnChanges { ngControl: NgControl; parentForm: NgForm; parentFormGroup: FormGroupDirective; cdr: ChangeDetectorRef; resizeService: ResizeHandlerService; i18n: I18nService; private ddsConfig; disabled: boolean | undefined; sticker: StickerDirective; selectBtn: ElementRef; label: string | undefined; description: string | undefined; placeholder: string | undefined; errorMessage: string | undefined; customClass: string | undefined; ariaLabel: string | undefined; ariaControls: string | undefined; icon: string | undefined; labelPosition: LabelPosition | string | undefined; size: Size | string | undefined; errorState: string | ErrorState | undefined; isResponsive: boolean | undefined; isError: boolean | undefined; headingProp: string | undefined; valueProp: string | undefined; groupingListProp: string | undefined; isInverse: boolean | undefined; isRequired: boolean | undefined; isLoading: boolean | undefined; isLoadingWithCounter: boolean | undefined; selectedItemTemplate: TemplateRef | undefined; placeholderTemplate: TemplateRef | undefined; optionsTemplate: TemplateRef | undefined; loadingTemplate: TemplateRef | undefined; stickerWidth: number | string | undefined; stickerMaxHeight: number | string | undefined; stickerCustomClass: string | undefined; stickerIndent: number | undefined; stickerShift: number | undefined; stickerIsDisabled: boolean | undefined; stickerPosition: PositionState | string | undefined; stickerIsDynamic: boolean | undefined; set list(list: any[] | undefined); get list(): any[] | undefined; set value(value: any | undefined); get value(): any | undefined; valueChanged: EventEmitter; stickerShown: EventEmitter; stickerHidden: EventEmitter; selectOpen: boolean; selectedItem: SelectItemOptions; isExternalLabel: boolean; isSizeLg: boolean; isSizeSm: boolean; popupAriaLabel: string; activeItemId: number; id: string; private _list; private _value; private firstChange; private keyboardTrigger; private contextMenu; get isExpandedText(): string; constructor(ngControl: NgControl, parentForm: NgForm, parentFormGroup: FormGroupDirective, cdr: ChangeDetectorRef, resizeService: ResizeHandlerService, i18n: I18nService, ddsConfig: DdsConfigService); ngOnInit(): void; ngOnChanges(changes: SimpleChanges): void; ngAfterViewInit(): void; toggleSelect(): void; onHidden(): void; onShown(el: HTMLElement): void; preventEvent(event: KeyboardEvent): void; handleKeydown(event: KeyboardEvent): void; handleKeydownMenu(event: KeyboardEvent): void; contextMenuInit(contextMenu: ContextMenuComponent): void; changeItem(item: SelectItemOptions): void; writeValue(value: any): void; setDisabledState(disabled: boolean): void; reset(): void; close(): void; private setActiveItemWithKeaboard; private setActiveItem; private checkLabelPosition; private checkSize; protected setI18nTexts(translation: ITranslation): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class SelectModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } export { SelectComponent, SelectModule }; export type { SelectGroupingOptions, SelectItemOptions, SelectOptions };