import * as PopupRedux from '../../../Redux/ActionsReducers/PopupRedux';
import { BaseProps } from './BaseProps';
import { AdaptableColumn } from '../../../AdaptableState/Common/AdaptableColumn';
import { ModuleInfo } from '../../../Strategy/Interface/IModule';
import { AdaptableObject } from '../../../types';
export interface ModuleViewPopupProps<View> extends BaseProps<View> {
    popupParams?: ModuleParams;
    onClearPopupParams: () => PopupRedux.PopupClearParamAction;
    teamSharingActivated: boolean;
    onClosePopup: () => void;
    moduleInfo: ModuleInfo;
    onSuspend?: (entity: AdaptableObject) => void;
    onUnSuspend?: (entity: AdaptableObject) => void;
}
export interface ModuleParams {
    column?: AdaptableColumn;
    action?: 'New' | 'Edit' | 'Clone';
    value?: any;
    primaryKeyValues?: any[];
    maxWidth?: number;
    source: 'Toolbar' | 'ModuleMenu' | 'ColumnMenu' | 'ContextMenu' | 'ModuleButton' | 'Other';
    config?: {
        [key: string]: any;
    };
}
