import React from 'react';
import { TwForm } from 'src/install';
export interface UserData {
    id?: number;
    name: string;
    email: string;
    department: string;
    status: number;
}
export default class TableCRUDTest extends React.Component<any, any> {
    state: {
        tableData: {
            id: number;
            name: string;
            email: string;
            department: string;
            status: number;
        }[];
        dialogVisible: boolean;
        dialogTitle: string;
        currentEditId: number | null;
        formValues: {};
    };
    fields: ({
        name: string;
        label: string;
        width: number;
        twview?: undefined;
        options?: undefined;
        optionstype?: undefined;
        columnSearch?: undefined;
    } | {
        name: string;
        label: string;
        width: number;
        twview: string;
        options: {
            label: string;
            value: number;
        }[];
        optionstype: string;
        columnSearch?: undefined;
    } | {
        name: string;
        label: string;
        width: number;
        columnSearch: null;
        twview?: undefined;
        options?: undefined;
        optionstype?: undefined;
    })[];
    formFields: ({
        name: string;
        label: string;
        twview: string;
        required: boolean;
        options?: undefined;
        optionstype?: undefined;
    } | {
        name: string;
        label: string;
        twview: string;
        options: {
            label: string;
            value: number;
        }[];
        optionstype: string;
        required?: undefined;
    })[];
    formRef: React.RefObject<TwForm>;
    handleAdd: () => void;
    handleEdit: (row: UserData) => void;
    handleDelete: (row: UserData) => void;
    handleDialogClose: () => void;
    handleSubmit: () => void;
    getOperation: () => ({
        label: string;
        click: (row: UserData) => void;
        color?: undefined;
        twview?: undefined;
    } | {
        label: string;
        color: string;
        twview: string;
        click: (row: UserData) => void;
    })[];
    render(): React.JSX.Element;
}
