import React, { Component, MouseEventHandler, ReactNode } from 'react';
import { AbstractTooltipProps, RenderFunction } from '../tooltip';
import { ButtonType } from '../button/Button';
import { ConfigContextValue } from '../config-provider/ConfigContext';
export interface PopconfirmProps extends AbstractTooltipProps {
    title: ReactNode | RenderFunction;
    onConfirm?: MouseEventHandler<any>;
    onCancel?: MouseEventHandler<any>;
    okText?: ReactNode;
    okType?: ButtonType;
    cancelText?: ReactNode;
}
export interface PopconfirmState {
    visible?: boolean;
}
export interface PopconfirmLocale {
    okText: string;
    cancelText: string;
}
export default class Popconfirm extends Component<PopconfirmProps, PopconfirmState> {
    static displayName: string;
    static get contextType(): React.Context<ConfigContextValue>;
    static defaultProps: {
        transitionName: string;
        placement: string;
        trigger: string;
        okType: string;
    };
    context: ConfigContextValue;
    private tooltip;
    constructor(props: PopconfirmProps);
    componentWillReceiveProps(nextProps: PopconfirmProps): void;
    getPopupDomNode(): any;
    onConfirm: MouseEventHandler<HTMLButtonElement>;
    onCancel: MouseEventHandler<HTMLButtonElement>;
    onVisibleChange: (visible: boolean) => void;
    setVisible(visible: boolean): void;
    saveTooltip: (node: any) => void;
    renderOverlayWithLocale: (popconfirmLocale: PopconfirmLocale) => JSX.Element;
    renderLocale: () => JSX.Element;
    getPrefixCls(): string;
    render(): JSX.Element;
}
