import React from 'react';
import type { IPipelineTemplateV2 } from '../../../../domain';
import type { IModalComponentProps } from '../../../../presentation';
import './ShowPipelineTemplateJsonModal.less';
export interface IShowPipelineTemplateJsonModalProps extends IModalComponentProps {
    template: IPipelineTemplateV2;
    editable?: boolean;
    modalHeading?: string;
    descriptionText?: string;
    saveTemplate?: (template: IPipelineTemplateV2) => PromiseLike<boolean>;
}
export interface IShowPipelineTemplateJsonModalState {
    template: IPipelineTemplateV2;
    saveError: Error;
    saving: boolean;
}
export declare class ShowPipelineTemplateJsonModal extends React.Component<IShowPipelineTemplateJsonModalProps, IShowPipelineTemplateJsonModalState> {
    static defaultProps: Partial<IShowPipelineTemplateJsonModalProps>;
    constructor(props: IShowPipelineTemplateJsonModalProps);
    private onChange;
    private onTemplateSaved;
    private saveTemplate;
    render(): JSX.Element;
}
