import { Base, Type } from "./type";
import { IComponentRendererAdapter } from "./IComponentRendererAdapter";
import { TypeDescriptionContext } from "./TypeDescriptionContext";
import { ITypeDescriptionPropertyTransforms } from "./ITypeDescriptionPropertyTransforms";
import { IComponentRendererSerializationProvider } from "./IComponentRendererSerializationProvider";
import { Dictionary$2 } from "./Dictionary$2";
import { ComponentRendererReferenceResolverEventArgs } from "./ComponentRendererReferenceResolverEventArgs";
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 { ComponentRendererMethodHelperBuilder } from "./ComponentRendererMethodHelperBuilder";
import { TypeDescriptionMetadata } from "./TypeDescriptionMetadata";
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);
    v: ITypeDescriptionPropertyTransforms;
    w: TypeDescriptionCleanups;
    static platform: TypeDescriptionPlatform;
    constructor();
    private s;
    private t;
    get serializationProvider(): IComponentRendererSerializationProvider;
    set serializationProvider(a: IComponentRendererSerializationProvider);
    toJson(a: (arg1: any) => string): string;
    createObjectFromJson(a: string, b: any): any;
    private ap;
    private am;
    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 a9(): boolean;
    protected fk(a: boolean): void;
    private _allowNullForRemove;
    get allowNullForRemove(): boolean;
    set allowNullForRemove(a: boolean);
    private _cleanupUnusedOnRender;
    get cleanupUnusedOnRender(): boolean;
    set cleanupUnusedOnRender(a: boolean);
    private _skipSystemRefsClean;
    get skipSystemRefsClean(): number;
    set skipSystemRefsClean(a: number);
    private bz;
    private fd;
    hasErrors(): boolean;
    getErrors(): string[];
    clearErrors(): void;
    private fb;
    private fp;
    private fj;
    private fi;
    private fh;
    private fg;
    protected get ai(): boolean;
    private d5;
    private h;
    private e7;
    private ff;
    private bg;
    private bi;
    private bs;
    private fe;
    private c8;
    private ep;
    private fo;
    provideRefValueFromJson(a: any, b: string, c: string): void;
    private b1;
    addMemberPathTransformer(a: (memberPath: string) => string): void;
    removeMemberPathTransformer(a: (memberPath: string) => string): void;
    private b3;
    addReferenceResolver(a: (refName: string, args: ComponentRendererReferenceResolverEventArgs) => void): void;
    removeReferenceResolver(a: (refName: string, args: ComponentRendererReferenceResolverEventArgs) => void): void;
    private f;
    protected cb(): (arg1: string) => string;
    az(a: JsonDictionaryItem): boolean;
    ay(a: JsonDictionaryItem): boolean;
    av(a: JsonDictionaryItem): boolean;
    a3(a: JsonDictionaryItem): boolean;
    aw(a: JsonDictionaryItem): boolean;
    ax(a: JsonDictionaryItem): boolean;
    private d7;
    private e2;
    private e3;
    private ed;
    private ea;
    private a;
    private ag;
    private db;
    private gj;
    private d3;
    private gi;
    private d9;
    private ge;
    private fw;
    private e8;
    private da;
    private c1;
    private c2;
    private c3;
    private bm;
    private bn;
    private bo;
    private bl;
    private bj;
    private bk;
    private bf;
    private bt;
    get bx(): Dictionary$2<any, ContainerState>;
    private bp;
    private bh;
    private bd;
    private br;
    private bu;
    private bw;
    private bq;
    private be;
    private cd;
    cleanup(a: any, b: boolean): void;
    render(a: Description, b: any): void;
    private gc;
    private fl;
    private ga;
    getTargetValue(a: string, b: string, c: any): any;
    setTargetValue(a: string, b: string, c: any, d: any, e: any): void;
    createHandlerWithDescription(a: any, b: string, c: string, d: string, e: (arg1: Description) => void): void;
    createHandlerWithJSON(a: any, b: string, c: string, d: string, e: (arg1: string) => void): void;
    createHandlerWithRaw(a: any, b: string, c: string, d: string, e: (arg1: any) => void): void;
    private ev;
    waitForAnimationIdle(a: any, b: number, c: () => void): void;
    executeMethod(a: any, b: string, c: (arg1: string) => void): void;
    executeMethodWithBuilder(a: any, b: ComponentRendererMethodHelperBuilder, c: (arg1: string) => void): void;
    private dg;
    private dh;
    static b8(a: any): number;
    private dj;
    private i;
    private b7;
    private c4;
    private eb;
    private dp;
    private dw;
    private dn;
    private du;
    private dr;
    private dv;
    private ds;
    private dt;
    private dq;
    private dl;
    private dm;
    private dk;
    private m;
    private l;
    private n;
    private d4;
    private c7;
    private c0;
    private e6;
    g(a: any): ContainerState;
    private di;
    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 f8;
    clearRefValues(a: any): void;
    private an;
    queueForIdle(a: any, b: () => void): void;
    tryFlushIdleActions(a: any): void;
    private gb;
    private gh;
    private gn;
    private e1;
    private fm;
    private fn;
    private as;
    private a4;
    private bb;
    private bc;
    private d8;
    p(a: any, b: number): DescriptionTreeNode;
    q(a: any, b: number): DescriptionTreeNode;
    private d6;
    private ef;
    private ee;
    private a8;
    private c9;
    private cy;
    private cz;
    cx(a: DescriptionTreeAction): any;
    private cw;
    cv(a: DescriptionTreeAction): any;
    cs(a: DescriptionTreeAction): any;
    cu(a: DescriptionTreeAction): any;
    cr(a: DescriptionTreeAction): any;
    ct(a: DescriptionTreeAction): any;
    cq(a: DescriptionTreeAction): any;
    private cp;
    private b9;
    private co;
    j(a: string): DescriptionRef;
    private dz;
    private cn;
    private dy;
    private ck;
    private dx;
    private d0;
    protected d2(a: string): any;
    private cj;
    private ci;
    private ch;
    private cl;
    protected d1(a: string): any;
    private cg;
    private cf;
    private b5;
    addTargetPropertyUpdatingListener(a: (propertyPath: string, target: any, newValue: any) => boolean): void;
    removeTargetPropertyUpdatingListener(a: (propertyPath: string, target: any, newValue: any) => boolean): void;
    private bv;
    addPropertyUpdatingListener(a: string, b: (propertyName: string, target: any, newValue: any) => void): void;
    private b0;
    addReferenceLookupListener(a: (container: any, refType: string, id: string) => any): void;
    removeReferenceLookupListener(a: (container: any, refType: string, id: string) => any): void;
    private b4;
    addReferenceReverseLookupListener(a: (obj: any) => string): void;
    removeReferenceReverseLookupListener(a: (obj: any) => string): void;
    removePropertyUpdatingListener(a: string, b: (propertyName: string, target: any, newValue: any) => void): void;
    private b2;
    addNamespaceLookupListener(a: (container: any) => string): void;
    removeNamespaceLookupListener(a: (container: any) => string): void;
    private by;
    private o;
    addCleanupListener(a: (container: any, id: string) => void): void;
    removeCleanupListener(a: (container: any, id: string) => void): void;
    private ce;
    gk(a: any, b: ContainerState, c: string, d: TypeDescriptionMetadata, e: any, f: any, g: any): void;
    al(a: string): boolean;
    private _shouldNamespaceSystemRefValues;
    get shouldNamespaceSystemRefValues(): boolean;
    set shouldNamespaceSystemRefValues(a: boolean);
    private z;
    fr(a: any, b: string, c: any, d: boolean): void;
    removeRefValueCore(a: any, b: string, c: boolean): void;
    clearUserRefValues(): void;
    ak(a: DescriptionRef): boolean;
    dd(a: DescriptionRef): any;
    hasRef(a: string): boolean;
    k(a: string): DescriptionRef;
    getMissingRefs(): string[];
    getRefChangeInfos(a: string): DescriptionRefTargetInfo[];
    private de;
    private a2;
    private a7;
    private a1;
    private gd;
    private a6;
    ez(a: any, b: any, c: ContainerState): void;
    e0(a: any, b: any, c: ContainerState): void;
    cc(a: any, b: any, c: ContainerState): number;
    private a0;
    private fy;
    private a5;
    private au;
    private aa;
    private eh;
    private c5;
    private ao;
    private cm;
    protected ab(): boolean;
    private b6;
    private at;
    private er;
    private gl;
    private dc;
    private af;
    private ae;
    waitForFlush(a: any, b: () => void): void;
    registerFont(a: string, b: any): void;
    removeFont(a: string): void;
}
/**
 * @hidden
 */
export declare class TypeDescriptionCleanups extends Base {
    static $t: Type;
    private b;
    private a;
    constructor(a: ComponentRenderer);
    d(a: any, b: TypeDescriptionPlatform, c: any): void;
    private c;
}
/**
 * @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;
}
