import { EventEmitter, ChangeDetectorRef, OnDestroy, AfterViewInit, OnInit } from '@angular/core';
import { NgForm, FormGroup } from '@angular/forms';
import { SdFormControl } from '@sd-angular/core/common';
import 'jsoneditor';
import JSONEditor from 'jsoneditor';
import { SdLabelDefDirective } from '@sd-angular/core/common';
export declare class SdJsonEditor implements OnDestroy, OnInit, AfterViewInit {
    #private;
    ref: ChangeDetectorRef;
    id: string;
    editor: JSONEditor;
    set name(val: string);
    height: string;
    set form(val: NgForm | FormGroup);
    label: string;
    set model(value: any);
    modelChange: EventEmitter<any>;
    isRequired: boolean;
    set required(val: boolean | '');
    set disabled(val: boolean | '');
    tooltip: string | ((inputValue: string) => string);
    sdChange: EventEmitter<any>;
    sdLabelDef: SdLabelDefDirective;
    set container(container: HTMLElement);
    formControl: SdFormControl;
    constructor(ref: ChangeDetectorRef);
    ngOnInit(): void;
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    reValidate: () => void;
}
