import 'brace/mode/json';
import React from 'react';
import type { IPipeline, IPipelineLock } from '../../../../domain';
import type { IModalComponentProps } from '../../../../presentation';
export interface IEditPipelineJsonModalProps extends IModalComponentProps {
    pipeline: IPipeline;
    plan: IPipeline;
}
export interface IEditPipelineJsonModalState {
    errorMessage?: string;
    pipelineJSON: string;
    pipelinePlanJSON?: string;
    locked: IPipelineLock;
    isStrategy: boolean;
    activeTab: mode;
}
declare type mode = 'pipeline' | 'renderedPipeline';
export declare class EditPipelineJsonModal extends React.Component<IEditPipelineJsonModalProps, IEditPipelineJsonModalState> {
    static defaultProps: Partial<IEditPipelineJsonModalProps>;
    constructor(props: IEditPipelineJsonModalProps);
    private removeImmutableFields;
    private validatePipeline;
    private updatePipeline;
    private setActiveTab;
    private updateJson;
    private onValidate;
    render(): JSX.Element;
}
export {};
