import type { FormikProps } from 'formik';
import React from 'react';
import type { Application } from '../../application';
import { TaskMonitor } from '../monitor/TaskMonitor';
import type { IModalComponentProps } from '../../presentation';
import type { ITaskCommand } from '../taskExecutor';
interface ITaskMonitorModalProps<T> extends IModalComponentProps {
    application: Application;
    title: string;
    description: string;
    render: (props: FormikProps<T>) => React.ReactNode;
    mapValuesToTask: (values: T) => ITaskCommand;
    initialValues: T;
}
interface ITaskMonitorModalState {
    taskMonitor: TaskMonitor;
    isSubmitting: boolean;
}
export declare class TaskMonitorModal<T> extends React.Component<ITaskMonitorModalProps<T>, ITaskMonitorModalState> {
    constructor(props: ITaskMonitorModalProps<T>);
    private close;
    private submitTask;
    render(): JSX.Element;
}
export {};
