import { BaseControlProperty } from '../../../property-panel';
export declare class ModalProperty extends BaseControlProperty {
    private numberEditor;
    private buttonProperty;
    constructor(componentId: string, designerHostService: any);
    getPropertyConfig(propertyData: any): {
        type: string;
        categories: {};
    };
    private getToDataSource;
    private getModalButtons;
    private setModalButtons;
    getDialogPropertyConfig(propertyData: any): {
        description: string;
        title: string;
        parentPropertyID: string;
        properties: {
            showHeader: {
                description: string;
                title: string;
                type: string;
                refreshPanelAfterChanged: boolean;
            };
            title: {
                description: string;
                title: string;
                type: string;
                visible: boolean;
            };
            width: {
                description: string;
                title: string;
                type: string;
                editor: {
                    min: number;
                    max: number;
                    type: string;
                    useThousands: boolean;
                };
            };
            height: {
                description: string;
                title: string;
                type: string;
                editor: {
                    min: number;
                    max: number;
                    type: string;
                    useThousands: boolean;
                };
            };
            resizeable: {
                description: string;
                title: string;
                type: string;
                visible: boolean;
            };
            enableEsc: {
                description: string;
                title: string;
                type: string;
                visible: boolean;
            };
            showMaxButton: {
                description: string;
                title: string;
                type: string;
                visible: boolean;
            };
            showCloseButton: {
                description: string;
                title: string;
                type: string;
                visible: boolean;
            };
            mapFields: {
                description: string;
                title: string;
                type: string;
                visible: boolean;
                editor: {
                    type: string;
                    modalWidth: number;
                    modalHeight: number;
                    editable: boolean;
                    beforeOpen: ({ fromDataSource, toDataSource, gridColumns, repository }: {
                        fromDataSource: any;
                        toDataSource: any;
                        gridColumns: any;
                        repository: any;
                    }) => true | {
                        open: boolean;
                        messager: string;
                    };
                    fromData: {
                        editable: boolean;
                        formatter: (cell: any, data: any) => string;
                        idField: string;
                        textField: string;
                        valueField: string;
                        searchFields: string[];
                        repositoryToken: symbol;
                        displayFormatter: (items: []) => string;
                    };
                    toData: {
                        editable: boolean;
                        idField: string;
                        textField: string;
                        valueField: string;
                        searchFields: string[];
                        formatter: (cell: any, data: any) => string;
                        displayFormatter: (items: []) => string;
                    };
                };
            };
            showButtons: {
                description: string;
                title: string;
                type: string;
                refreshPanelAfterChanged: boolean;
                visible: boolean;
            };
            buttons: {
                description: string;
                title: string;
                type: string;
                defaultValue: string;
                visible: boolean;
                $converter: {
                    convertFrom: () => string;
                };
                editor: {
                    type: string;
                    editable: boolean;
                    enableClear: boolean;
                    buttonContent: string;
                    onClear: () => void;
                    onClickButton: () => void;
                };
            };
        };
    };
    private getEventPropConfig;
}
