/**-----------------------------------------------------------------------------------------
* Copyright © 2026 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { AfterViewInit, ChangeDetectorRef, ElementRef, Injector, NgZone, OnDestroy, QueryList, Renderer2 } from '@angular/core';
import { LocalizationService } from '@progress/kendo-angular-l10n';
import { PopupService } from '@progress/kendo-angular-popup';
import { AdaptiveService } from '@progress/kendo-angular-utils';
import { ComboBoxComponent } from './combobox.component';
import { ComboBoxColumnComponent } from './combobox-column/combobox-column.component';
import { DataService } from '../common/data.service';
import { DisabledItemsService } from '../common/disabled-items/disabled-items.service';
import { NavigationService } from '../common/navigation/navigation.service';
import { SelectionService } from '../common/selection/selection.service';
import { FilterableComponent } from '../common/filtering/filterable-component';
import * as i0 from "@angular/core";
/**
 * Represents the Kendo UI MultiColumnComboBox component for Angular.
 *
 * Use the `MultiColumnComboBoxComponent` to show a dropdown list with multiple columns.
 * [See example](https://www.telerik.com/kendo-angular-ui/components/dropdowns/multicolumncombobox).
 *
 * @example
 * ```html
 * <kendo-multicolumncombobox [data]="data" [columns]="columns"></kendo-multicolumncombobox>
 * ```
 *
 * @remarks
 * Supported children components are: {@link ComboBoxColumnComponent}, {@link CustomMessagesComponent}.
 */
export declare class MultiColumnComboBoxComponent extends ComboBoxComponent implements AfterViewInit, OnDestroy, FilterableComponent {
    hostElement: ElementRef;
    /**
     * @hidden
     */
    animationDuration: number;
    /**
     * @hidden
     */
    hostClasses: boolean;
    /**
     * @hidden
     */
    get isDisabled(): boolean;
    /**
     * Contains a query list of all declared `ComboBoxColumnComponent` columns.
     * Use this property to access and configure the columns displayed in the dropdown.
     */
    columns: QueryList<ComboBoxColumnComponent>;
    /**
     * @hidden
     */
    set header(header: ElementRef<HTMLElement>);
    /**
     * @hidden
     */
    set headerTable(headerTable: ElementRef<HTMLElement>);
    get headerTable(): ElementRef<HTMLElement>;
    /**
     * @hidden
     */
    set headerColumns(columns: QueryList<ElementRef>);
    /**
     * @hidden
     */
    rowWidth: number;
    /**
     * @hidden
     */
    headerColumnWidths: number[];
    /**
     * @hidden
     */
    totalColumnsWidth: number;
    protected get popupWidth(): {
        min: string;
        max: string;
    };
    private _headerTable;
    private removeWindowResizeListener;
    private columnsChangeSubscription;
    /**
     * @hidden
     */
    get tableSizeClass(): any;
    /**
     * @hidden
     */
    protected get listContainerClasses(): string[];
    constructor(localization: LocalizationService, popupService: PopupService, selectionService: SelectionService, navigationService: NavigationService, disabledItemsService: DisabledItemsService, dataService: DataService, zone: NgZone, changeDetector: ChangeDetectorRef, renderer: Renderer2, wrapper: ElementRef<HTMLElement>, injector: Injector, hostElement: ElementRef, adaptiveService: AdaptiveService);
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    /**
     * @hidden
     */
    textFrom(dataItem: any, field: string): string;
    /**
     * @hidden
     *
     * Adds or removes a padding value at the end of the header container equal to the size of the scrollbar.
     * As when the items container has a scrollbar, the column headers and the cells are misaligned.
     * When the container has a scrollbar, the padding style is added, and when there is none - it is removed.
     */
    updateHeaderPadding(header: HTMLElement): void;
    /**
     *
     * @hidden
     */
    getColumnWidth(index: any): number;
    protected verifySettings(): void;
    private addWindowResizeListener;
    private updateColumnsMediaState;
    private calculateRowWidth;
    static ɵfac: i0.ɵɵFactoryDeclaration<MultiColumnComboBoxComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<MultiColumnComboBoxComponent, "kendo-multicolumncombobox", never, {}, {}, ["columns"], never, true, never>;
}
