import { Reducer } from '@dineug/r-html';
import { EngineContext } from '../../context';
import { RootState } from '../../state';
import { ValuesType } from '../../../internal-types';
export declare const ActionType: {
readonly addColumn: "column.add";
readonly removeColumn: "column.remove";
readonly changeColumnName: "column.changeName";
readonly changeColumnComment: "column.changeComment";
readonly changeColumnDataType: "column.changeDataType";
readonly changeColumnDefault: "column.changeDefault";
readonly changeColumnAutoIncrement: "column.changeAutoIncrement";
readonly changeColumnPrimaryKey: "column.changePrimaryKey";
readonly changeColumnUnique: "column.changeUnique";
readonly changeColumnNotNull: "column.changeNotNull";
readonly moveColumn: "column.move";
};
export type ActionType = ValuesType;
export type ActionMap = {
[ActionType.addColumn]: {
id: string;
tableId: string;
};
[ActionType.removeColumn]: {
id: string;
tableId: string;
};
[ActionType.changeColumnName]: ChangeColumnValuePayload;
[ActionType.changeColumnComment]: ChangeColumnValuePayload;
[ActionType.changeColumnDataType]: ChangeColumnValuePayload;
[ActionType.changeColumnDefault]: ChangeColumnValuePayload;
[ActionType.changeColumnAutoIncrement]: ChangeColumnOptionPayload;
[ActionType.changeColumnPrimaryKey]: ChangeColumnOptionPayload;
[ActionType.changeColumnUnique]: ChangeColumnOptionPayload;
[ActionType.changeColumnNotNull]: ChangeColumnOptionPayload;
[ActionType.moveColumn]: {
id: string;
tableId: string;
targetId: string;
};
};
export type ReducerType = Reducer;
export type ChangeColumnValuePayload = {
tableId: string;
id: string;
value: string;
};
type ChangeColumnOptionPayload = {
tableId: string;
id: string;
value: boolean;
};
export {};