import { OnInit, EventEmitter, ChangeDetectorRef } from '@angular/core';
import { SdModal } from '@sd-angular/core/modal';
import { SdNotifyService } from '@sd-angular/core/notify';
import { SdTableOption } from '../../models/table-option.model';
import { SdTableConfigurationResult, SdTableConfiguration } from '../../models/table-option-config.model';
import { SdTableConfigurationService } from '../../services/table-configuration.service';
import { MatTable } from '@angular/material/table';
import { CdkDragDrop } from '@angular/cdk/drag-drop';
import { SdTableColumn } from '../../models/table-column.model';
export declare class SdPopupConfiguration implements OnInit {
    #private;
    private ref;
    private notifyService;
    private gridConfigurationService;
    gridOption: SdTableOption;
    modal: SdModal;
    table: MatTable<SdTableColumn>;
    readonly changes: EventEmitter<SdTableConfigurationResult>;
    configuration: SdTableConfiguration;
    isCreatingColumn: boolean;
    selected: {
        [key: string]: boolean;
    };
    disabledDrag: boolean;
    constructor(ref: ChangeDetectorRef, notifyService: SdNotifyService, gridConfigurationService: SdTableConfigurationService);
    ngOnInit(): void;
    mouseUp(event: any): void;
    open: () => Promise<void>;
    onSave: () => void;
    onReset: () => Promise<void>;
    dropTable(event: CdkDragDrop<SdTableColumn[]>): void;
    handleMouseDown(): void;
    handleMouseUp(): void;
}
