import React from 'react';
import type { Application } from '../application';
import type { IFunction } from '../domain';
import type { IFunctionUpsertCommand } from './function.write.service';
import type { IModalComponentProps } from '../presentation';
export interface IFunctionModalProps extends IModalComponentProps {
    className?: string;
    dialogClassName?: string;
    app: Application;
    forPipelineConfig?: boolean;
    functionDef: IFunction;
    command?: IFunctionUpsertCommand;
    closeModal?: (functionCommand: IFunctionUpsertCommand) => void;
    dismissModal?: (rejectReason?: any) => void;
}
export interface ICreateFunctionButtonProps {
    app: Application;
}
export interface ICreateFunctionButtonState {
    isDisabled: boolean;
}
export declare class CreateFunctionButton extends React.Component<ICreateFunctionButtonProps, ICreateFunctionButtonState> {
    constructor(props: ICreateFunctionButtonProps);
    private createFunction;
    render(): JSX.Element;
}
