﻿/**
* DevExpress HTML/JS Reporting (designer\helpers\reportParameterHelper.d.ts)
* Version:  26.1.3
* Build date: Jun 16, 2026
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
* License: https://www.devexpress.com/Support/EULAs/universal.xml
*/
import * as ko from 'knockout';
import { ParameterHelper } from '../../viewer/parameters/parameterHelper';
import { GroupLayoutItem, IParameterContainer, ParameterPanelLayoutItem, SeparatorLayoutItem } from '../dataObjects/parameters/layoutItems';
import { IEnumType } from '../../common/customTypes';
import { IReportDesignerParameterEditingSettings, IReportDesignerParametersCustomizationHandler } from '../utils/inititalizer';
import { Parameter } from '../dataObjects/parameters/parameter';
import { ISerializationInfoArray } from '@devexpress/analytics-core/analytics-utils';
export type LayoutItemType = 'Parameter' | 'Group' | 'Separator';
export declare class ReportParameterHelper extends ParameterHelper {
    container: IParameterContainer;
    allLayoutItems: ko.Computed<ParameterPanelLayoutItem[]>;
    _parameterEditingSettings: IReportDesignerParameterEditingSettings;
    private _customizeParameterProperties;
    get parameters(): ko.ObservableArray<Parameter>;
    get parameterPanelLayoutItems(): ko.ObservableArray<ParameterPanelLayoutItem>;
    initialize(knownEnums?: IEnumType[], callbacks?: IReportDesignerParametersCustomizationHandler, _parameterEditingSettings?: IReportDesignerParameterEditingSettings): void;
    getAllLayoutItems(items: ParameterPanelLayoutItem[]): Array<any>;
    constructor(container: IParameterContainer);
    addParameterPanelLayoutItem(item: ParameterPanelLayoutItem): void;
    startEditing(): void;
    endEditing(): void;
    syncLayoutToParameters(): void;
    updateParameterLayoutItems(): void;
    clearLayoutItems(): void;
    getParameterLayoutItem(parameter: Parameter): ParameterPanelLayoutItem;
    removeParameterModel(parameter: Parameter): void;
    private _disableParameterProperties;
    customizeParameterProperties(model: Parameter | GroupLayoutItem | SeparatorLayoutItem, editors: ISerializationInfoArray, parameterPanelLayoutItem: {
        layoutItemType: LayoutItemType;
        name: string;
    }): void;
}
