import { WorkflowParamTypes, NumberParam, StringParam, ParamTypes } from '../models/parameters'; import * as React from 'react'; import * as Immutable from 'immutable'; export declare namespace ParamComponent { interface IDispatchProps { onValueChange: (v: any) => void; } interface IDataProps { param: T; } interface IProps extends IDispatchProps, IDataProps { } interface IState { } } declare abstract class ParamComponent extends React.Component, ParamComponent.IState> { abstract render(): any; } export declare class NumberParamComponent extends ParamComponent { private onChange; render(): JSX.Element; } export declare class StringParamComponent extends ParamComponent { private onChange; render(): JSX.Element; } export declare namespace ParamListComponent { interface IDataProps { params: WorkflowParamTypes[]; nodeId: string; } interface IDispatchProps { onValueChange: (v: any, paramId: string) => void; onParameterChange: (paramId: string, param: WorkflowParamTypes) => void; onParameterAdd: (nodeId: string, paramId: string, param: WorkflowParamTypes) => void; onParameterDelete: (nodeId: string, paramId: string) => void; } interface IProps extends IDataProps, IDispatchProps { } interface IState { editingIds: Immutable.Set; } } export declare class ParamListComponent extends React.Component { state: { editingIds: Immutable.Set; }; _getComponent(p: WorkflowParamTypes): JSX.Element; handleParamSave(id: string, paramType: ParamTypes, paramName: string): void; _buildParameter(id: string, paramType: ParamTypes, paramName: string): WorkflowParamTypes; render(): JSX.Element; handleAddClick(): void; handleOnEditClick(id: string): void; } export {};