/**
 * 组件名    form 通用布局文件
 * 作者      Alex
 * 创建日期  2017-03-30
 */
/// <reference types="react" />
import { AlertProps } from '../alert/alert';
import FormGenerator, { FormGeneratorProps } from './form-generator';
import { UkeComponent } from '../utils/uke-component';
import { ButtonProps } from '../button/button-basic';
export interface FormLayoutBtn extends ButtonProps {
    /** 点击按钮的回调 */
    action?: (formRef: FormGenerator, actingRef?: string) => void;
    /** 记录该按钮的状态 */
    actingRef?: string;
    /** 该按钮是否需要预检查 */
    preCheck?: boolean;
    /** className */
    className?: string;
}
export declare type FormLayoutBtnsConfig = FormLayoutBtn[];
export interface FormLayoutProps extends FormGeneratorProps {
    /** 只有一个按钮时传入的按钮 text */
    btnText?: string;
    /** FormLayout 的 className */
    className?: string;
    /** 是否已准备好渲染 */
    ready?: boolean;
    /** 传入 Alert 控件的参数 */
    tipInfo?: AlertProps;
    /** 表单操作按钮 */
    formBtns?: FormLayoutBtnsConfig;
    /** 已改名为 formBtns */
    btnConfig?: FormLayoutBtnsConfig;
    /** 操作的返回是否有错误 */
    hasErr?: boolean;
    /** 操作返回的消息 */
    resDesc?: string;
    /** 在 form 之前插入的 children */
    childrenBeforeForm?: any;
    /** 在 form 之后插入的 children */
    childrenAfterForm?: any;
    /** 在 form 的 children 前插入按钮 */
    childrenBeforeBtn?: any;
}
export default class FormLayout extends UkeComponent<FormLayoutProps> {
    private __changedDesc;
    toast: any;
    formHelper: FormGenerator;
    clearValue: any;
    shouldComponentUpdate(nextProps: any, nextState: any, nextContext: any): boolean;
    showResDesc(resInfo: any): void;
    showDesc(resInfo: any): void;
    preCheck(): boolean;
    _handleClickBtn: (formBtns: any) => void;
    saveFormRef: (e: FormGenerator) => void;
    getDefaultBtn: () => FormLayoutBtn;
    render(): JSX.Element;
}
