import { Base, Type } from "./type";
import { IComponentRendererAdapter } from "./IComponentRendererAdapter";
import { TypeDescriptionContext } from "./TypeDescriptionContext";
import { ITypeDescriptionPropertyTransforms } from "./ITypeDescriptionPropertyTransforms";
import { TypeDescriptionCleanups } from "./TypeDescriptionCleanups";
import { Dictionary$2 } from "./Dictionary$2";
import { Description } from "./Description";
import { DescriptionTreeNode } from "./DescriptionTreeNode";
import { DescriptionTreeAction } from "./DescriptionTreeAction";
import { DescriptionRef } from "./DescriptionRef";
import { TypeDescriptionPlatform } from "./TypeDescriptionPlatform";
import { JsonDictionaryItem } from "./JsonDictionaryItem";
import { DescriptionRefTargetInfo } from "./DescriptionRefTargetInfo";
/**
 * @hidden
 */
export declare class ComponentRenderer extends Base {
    static $t: Type;
    private static _defaultInstance;
    static get defaultInstance(): ComponentRenderer;
    static set defaultInstance(a: ComponentRenderer);
    private _adapter;
    get adapter(): IComponentRendererAdapter;
    set adapter(a: IComponentRendererAdapter);
    private _context;
    get context(): TypeDescriptionContext;
    set context(a: TypeDescriptionContext);
    private _isProceedOnErrorEnabled;
    get isProceedOnErrorEnabled(): boolean;
    set isProceedOnErrorEnabled(a: boolean);
    j: ITypeDescriptionPropertyTransforms;
    k: TypeDescriptionCleanups;
    static platform: TypeDescriptionPlatform;
    constructor();
    private i;
    toJson(a: (arg1: any) => string): string;
    private eg;
    private eh;
    private z;
    private w;
    private ef;
    private q;
    createObjectFromJson(a: string, b: any): any;
    loadJson(a: string, b: (arg1: string) => any): void;
    loadJsonOverlay(a: string, b: (arg1: string) => any, c: (arg1: string) => any): void;
    loadJsonDelta(a: string, b: (arg1: string) => any, c: boolean): void;
    private _preserveKeyOrder;
    get preserveKeyOrder(): boolean;
    set preserveKeyOrder(a: boolean);
    protected as(): boolean;
    protected dp(a: boolean): void;
    private _allowNullForRemove;
    get allowNullForRemove(): boolean;
    set allowNullForRemove(a: boolean);
    private dm;
    provideRefValueFromJson(a: any, b: string, c: string): void;
    private be;
    addMemberPathTransformer(a: (memberPath: string) => string): void;
    removeMemberPathTransformer(a: (memberPath: string) => string): void;
    protected bj(): (arg1: string) => string;
    ai(a: JsonDictionaryItem): boolean;
    af(a: JsonDictionaryItem): boolean;
    am(a: JsonDictionaryItem): boolean;
    ag(a: JsonDictionaryItem): boolean;
    ah(a: JsonDictionaryItem): boolean;
    private cw;
    private dg;
    private dh;
    private c1;
    private cy;
    private a;
    private b5;
    private a1;
    private a2;
    private a3;
    private a0;
    private ay;
    private az;
    private aw;
    private a7;
    get bb(): Dictionary$2<any, ContainerState>;
    private a4;
    private ax;
    private av;
    private a6;
    private a8;
    private ba;
    private a5;
    private bl;
    cleanup(a: any, b: boolean): void;
    render(a: Description, b: any): void;
    private ea;
    private dq;
    private d8;
    getTargetValue(a: string, b: string, c: any): any;
    setTargetValue(a: string, b: string, c: any, d: any, e: any): void;
    executeMethod(a: any, b: string, c: (arg1: string) => void): void;
    private ce;
    static bi(a: any): number;
    private cz;
    private cj;
    private cn;
    private ci;
    private cl;
    private cm;
    private ck;
    private cg;
    private ch;
    private cf;
    private g;
    private cu;
    private b8;
    private b4;
    private dj;
    resolveRefValue(a: any, b: string, c: (arg1: any) => void): void;
    resolveRefName(a: any, b: any, c: (arg1: string) => void): void;
    provideRefValue(a: any, b: string, c: any): void;
    removeRefValue(a: any, b: string): void;
    private d6;
    clearRefValues(a: any): void;
    private x;
    queueForIdle(a: any, b: () => void): void;
    tryFlushIdleActions(a: any): void;
    private d9;
    private ee;
    private el;
    private df;
    private dr;
    private ds;
    private ac;
    private an;
    private au;
    private cx;
    private cv;
    private c2;
    private ar;
    private b9;
    private b2;
    private b3;
    b1(a: DescriptionTreeAction): any;
    private b0;
    bz(a: DescriptionTreeAction): any;
    by(a: DescriptionTreeAction): any;
    bx(a: DescriptionTreeAction): any;
    private bw;
    e(a: string): DescriptionRef;
    private cq;
    private bv;
    private cp;
    private bs;
    private co;
    private cr;
    protected ct(a: string): any;
    private br;
    private bq;
    private bp;
    private bt;
    protected cs(a: string): any;
    private bo;
    private bn;
    private bg;
    addTargetPropertyUpdatingListener(a: (propertyPath: string, target: any, newValue: any) => boolean): void;
    removeTargetPropertyUpdatingListener(a: (propertyPath: string, target: any, newValue: any) => boolean): void;
    private a9;
    addPropertyUpdatingListener(a: string, b: (propertyName: string, target: any, newValue: any) => void): void;
    private bd;
    addReferenceLookupListener(a: (container: any, refType: string, id: string) => any): void;
    removeReferenceLookupListener(a: (container: any, refType: string, id: string) => any): void;
    removePropertyUpdatingListener(a: string, b: (propertyName: string, target: any, newValue: any) => void): void;
    private bf;
    addNamespaceLookupListener(a: (container: any) => string): void;
    removeNamespaceLookupListener(a: (container: any) => string): void;
    private bc;
    addCleanupListener(a: (container: any, id: string) => void): void;
    removeCleanupListener(a: (container: any, id: string) => void): void;
    private bm;
    private ei;
    v(a: string): boolean;
    private _shouldNamespaceSystemRefValues;
    get shouldNamespaceSystemRefValues(): boolean;
    set shouldNamespaceSystemRefValues(a: boolean);
    du(a: any, b: string, c: any, d: boolean): void;
    removeRefValueCore(a: any, b: string, c: boolean): void;
    clearUserRefValues(): void;
    u(a: DescriptionRef): boolean;
    cb(a: DescriptionRef): any;
    hasRef(a: string): boolean;
    f(a: string): DescriptionRef;
    getMissingRefs(): string[];
    getRefChangeInfos(a: string): DescriptionRefTargetInfo[];
    private cc;
    private al;
    private aq;
    private ak;
    private eb;
    private ap;
    de(a: any, b: any, c: ContainerState): void;
    private bk;
    private aj;
    private dy;
    private ao;
    private ae;
    private n;
    private c4;
    private b6;
    private y;
    private bu;
    protected o(): boolean;
    private bh;
    private ad;
    private db;
    private ej;
    private ca;
    private s;
    private r;
}
/**
 * @hidden
 */
export declare class ContainerState extends Base {
    static $t: Type;
    i: any;
    private e;
    private f;
    private d;
    private g;
    private c;
    k(a: any, b: number, c: any, d: DescriptionTreeNode, e: (arg1: any, arg2: string, arg3: any, arg4: boolean) => void, f: number): void;
    a(a: number): boolean;
    b(a: any): boolean;
    j(a: number): any;
    l(a: ComponentRenderer, b: any, c: number, d: (arg1: any, arg2: string, arg3: boolean) => void): void;
    h(a: any): number;
}
