﻿/**
* DevExpress HTML/JS Reporting (viewer\parameters\parameterPanelItemBase.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 { IControlPropertyStatus } from '@devexpress/analytics-core/analytics-internal-native';
import { ISerializationInfo } from '@devexpress/analytics-core/analytics-utils-native';
import { PreviewParameter } from './previewParameter';
import { PreviewParameterHelper } from './previewParameterHelper';
import { IReportParametersInfo } from './parametersPanelModelBase';
import { ArrayPropertyChangedEventArgs, IViewModel, PropertyChangedEventArgs, BaseRenderingModel, SubscribableProperty } from '@devexpress/analytics-core/analytics-serializer-native';
export interface IParameterPanelItemInfo {
    type: string;
    titleVisible?: boolean;
    title?: string;
    orientation?: string;
    borderVisible?: boolean;
    expanded?: boolean;
    showExpandButton?: boolean;
    layoutItems?: Array<any>;
}
export interface IParameterItemInfo {
    path: string;
    labelOrientation: string;
}
export declare class ParameterPanelItemBase<T extends IViewModel> extends BaseRenderingModel<T> {
    protected parameterHelper: PreviewParameterHelper;
    private _layoutInfo?;
    private _root?;
    deferredUpdateViewModel(): boolean;
    protected _parameters: PreviewParameter[];
    protected _separatorNames: string[];
    protected _groupLayoutItems: ParameterPanelItemBase<IViewModel>[];
    onPropertyChanged(args: PropertyChangedEventArgs<any> | ArrayPropertyChangedEventArgs<any>): void;
    constructor(parameterHelper: PreviewParameterHelper, _layoutInfo?: IParameterPanelItemInfo, _root?: ParameterPanelItemBase<T>);
    private _fixGroupPropertyName;
    private _getParameterByPath;
    private _proceedLayoutInfo;
    protected _add(parameter: PreviewParameter, parameterInfo: IParameterItemInfo): PreviewParameter;
    get groupLayoutItems(): ParameterPanelItemBase<IViewModel<unknown>>[];
    isPropertyDisabled(name: string): boolean;
    isPropertyVisible(name: string): boolean;
    getPropertyDependencies(name: string, status: IControlPropertyStatus): SubscribableProperty<PreviewParameter>[];
    initialize(originalParametersInfo: IReportParametersInfo, parameters?: PreviewParameter[]): void;
    setParameterValueByPath(parameterPath: string, value: any): void;
    isEmpty: boolean;
    _getInfo: ISerializationInfo[];
    getInfo: () => ISerializationInfo[];
}
