import * as DM from '../../../data/Data.module';
import { IBaseProps } from './IBaseProps';
export interface IWidgetTableProps extends IBaseProps {
    indexWidget?: number | null;
    originalPerformance?: boolean | null;
    idTable?: string | null;
    dataViewName?: string | null;
    dataTableName?: string | null;
    dataTableJson?: string | null;
    dataViewJson?: string | null;
}
export interface IResizeColumn extends IBaseProps {
    indexColumn: number;
    width: number;
}
export interface ICreateViewTableProps extends IWidgetTableProps {
    originalPerformance: boolean | null;
}
export interface IRenameChangeTableProps extends IBaseProps {
    newName: string;
    oldName: string;
    originalPerformance?: boolean;
}
export interface IRenameChangeColumnProps extends IBaseProps {
    indexColumn: number;
    guidColumn: string;
    newName: string;
    oldName: string;
}
export interface IApplyFilter extends IBaseProps {
    filter: DM.FilterExprestionItem[];
    oldFilter: DM.FilterExprestionItem[] | null;
}
export interface IRemoveColumnProps extends IBaseProps {
    indexColumn: number;
    nameColumn: string;
    dataType?: DM.DataType;
    data?: any[];
}
export interface IChangeTypeColumnProps extends IBaseProps {
    indexColumn: number;
    newType: DM.DataType;
    oldType: DM.DataType;
}
export interface ISortColumnProps extends IBaseProps {
    sort: DM.SortInfo[];
    oldSort: DM.SortInfo[];
}
export interface IRemoveRowProps extends IBaseProps {
    indexRow: number;
    data: DM.DataItem[];
}
export interface IStateRowProps extends IBaseProps {
    indexRow: number;
    newState: DM.DataRowState;
    oldState: DM.DataRowState;
}
export interface ICreateViewProps extends IBaseProps {
    nameTable: string;
    nameView: string;
}
export interface IAddRowProps extends IBaseProps {
    data: DM.DataItem[];
    indexRow: number;
}
export interface IInsertRowProps extends IBaseProps {
    indexRow: number;
    data?: DM.DataItem[];
}
export interface ISelectProps extends IBaseProps {
    value?: string;
    name?: string;
    color?: string;
    indexColumn: number;
}
export interface IInsertColumnProps extends IBaseProps {
    indexColumn: number;
    nameColumn: string;
    dataType?: DM.DataType;
    data?: DM.DataItem[];
}
export interface IAddColumnProps extends IBaseProps {
    nameColumn: string;
    dataType: DM.DataType;
    indexColumn: number;
}
export interface ISetCellValueProps extends IBaseProps {
    oldValue: DM.DataItem;
    newValue: DM.DataItem;
    rowIndex: number;
    columnIndex: number;
}
