import { Base, Type } from "./type";
import { CodeGeneratingRendererResult } from "./CodeGeneratingRendererResult";
import { CodeGeneratingCodeWriter } from "./CodeGeneratingCodeWriter";
import { CodeGenerationItemBuilderPropertyInfo } from "./CodeGenerationItemBuilderPropertyInfo";
import { CodeGenerationRendererOptions } from "./CodeGenerationRendererOptions";
import { List$1 } from "./List$1";
import { TypeDescriptionMetadata } from "./TypeDescriptionMetadata";
import { TypeDescriptionContext } from "./TypeDescriptionContext";
import { DescriptionRef } from "./DescriptionRef";
import { StringBuilder } from "./StringBuilder";
import { CodeGeneratingImportManager } from "./CodeGeneratingImportManager";
import { CodeGeneratingComponentRendererDataEmitter } from "./CodeGeneratingComponentRendererDataEmitter";
import { CodeGeneratingComponentRendererDataEmitterPropertyType } from "./CodeGeneratingComponentRendererDataEmitterPropertyType";
import { CodeGeneratingComponentRendererDataEmitterItemType } from "./CodeGeneratingComponentRendererDataEmitterItemType";
import { JsonDictionaryValue } from "./JsonDictionaryValue";
import { JsonDictionaryObject } from "./JsonDictionaryObject";
import { JsonDictionaryItem } from "./JsonDictionaryItem";
import { ComponentRenderer } from "./ComponentRenderer";
import { CodeGenerationTargetPlatforms } from "./CodeGenerationTargetPlatforms";
import { CodeGeneratingComponentRendererHandlerEmitter } from "./CodeGeneratingComponentRendererHandlerEmitter";
import { CodeGeneratingComponentRendererModuleEmitter } from "./CodeGeneratingComponentRendererModuleEmitter";
import { ICodeGenerationRendererTemplate } from "./ICodeGenerationRendererTemplate";
import { IComponentRendererAdapter } from "./IComponentRendererAdapter";
/**
 * @hidden
 */
export declare class CodeGeneratingComponentRendererCodeEmitter extends Base {
    static $t: Type;
    private k;
    private i;
    private r;
    protected a6(a: CodeGenerationItemBuilderPropertyInfo): void;
    protected readonly j: CodeGeneratingRendererResult;
    constructor(a: CodeGenerationRendererOptions, b: CodeGeneratingRendererResult);
    private d;
    protected readonly h: CodeGeneratingCodeWriter;
    private a;
    protected readonly e: CodeGeneratingCodeWriter;
    private c;
    protected readonly g: CodeGeneratingCodeWriter;
    private b;
    protected readonly f: CodeGeneratingCodeWriter;
    private s;
    protected ar(a: string): void;
    n(a: CodeGenerationItemBuilderPropertyInfo): boolean;
    private v;
    protected readonly ac: string;
    as(a: string): void;
    a5(): void;
    a0(a: string): void;
    ay(a: number, b: string, c: CodeGenerationItemBuilderPropertyInfo, d: TypeDescriptionContext): void;
    az(a: number, b: string, c: CodeGenerationItemBuilderPropertyInfo, d: TypeDescriptionContext): void;
    toString(): string;
    protected ak(): string;
    protected an(a: CodeGenerationItemBuilderPropertyInfo, b: boolean): string;
    protected ad(a: CodeGenerationItemBuilderPropertyInfo): string;
    protected w(a: CodeGenerationItemBuilderPropertyInfo): any;
    private am;
    protected al(a: CodeGenerationItemBuilderPropertyInfo): string;
    protected af(a: CodeGenerationItemBuilderPropertyInfo): string;
    private ai;
    protected ag(a: CodeGenerationItemBuilderPropertyInfo): string;
    protected aj(a: CodeGenerationItemBuilderPropertyInfo): string;
    protected ah(a: CodeGenerationItemBuilderPropertyInfo): string;
    protected get_p(): boolean;
    protected readonly p: boolean;
    protected aa(a: CodeGenerationItemBuilderPropertyInfo): string;
    protected z(a: any): string;
    protected y(a: CodeGenerationItemBuilderPropertyInfo): string;
    protected x(a: any): string;
    private t;
    private u;
    a4(a: string): void;
    a3(a: string): void;
    private ae;
    a1(): void;
    protected get_ap(): string;
    protected readonly ap: string;
    readonly ab: string;
    protected readonly o: boolean;
    protected readonly l: boolean;
    protected readonly m: boolean;
    ao: string;
    protected get_q(): boolean;
    readonly q: boolean;
    a2(): void;
    au(a: StringBuilder): void;
    ax(a: StringBuilder): void;
    at(a: StringBuilder): void;
    av(a: CodeGeneratingImportManager): void;
    protected aw(a: List$1<string>, b: CodeGeneratingImportManager): void;
}
/**
 * @hidden
 */
export declare class ReactMarkupCodeGeneratingComponentRendererCodeEmitter extends CodeGeneratingComponentRendererCodeEmitter {
    static $t: Type;
    constructor(a: CodeGenerationRendererOptions, b: CodeGeneratingRendererResult);
    protected ad(a: CodeGenerationItemBuilderPropertyInfo): string;
    protected get_p(): boolean;
    protected get_ap(): string;
    private a7;
    private a8;
    as(a: string): void;
    private ba;
    a5(): void;
    private a9;
    protected ah(a: CodeGenerationItemBuilderPropertyInfo): string;
    a0(a: string): void;
    ay(a: number, b: string, c: CodeGenerationItemBuilderPropertyInfo, d: TypeDescriptionContext): void;
    protected w(a: CodeGenerationItemBuilderPropertyInfo): any;
    protected ak(): string;
    protected af(a: CodeGenerationItemBuilderPropertyInfo): string;
    protected al(a: CodeGenerationItemBuilderPropertyInfo): string;
    az(a: number, b: string, c: CodeGenerationItemBuilderPropertyInfo, d: TypeDescriptionContext): void;
    protected aw(a: List$1<string>, b: CodeGeneratingImportManager): void;
}
/**
 * @hidden
 */
export declare class ReactCodeBehindCodeGeneratingComponentRendererCodeEmitter extends CodeGeneratingComponentRendererCodeEmitter {
    static $t: Type;
    constructor(a: CodeGenerationRendererOptions, b: CodeGeneratingRendererResult);
}
/**
 * @hidden
 */
export declare class WebComponentsMarkupCodeGeneratingComponentRendererCodeEmitter extends CodeGeneratingComponentRendererCodeEmitter {
    static $t: Type;
    constructor(a: CodeGenerationRendererOptions, b: CodeGeneratingRendererResult);
    protected ad(a: CodeGenerationItemBuilderPropertyInfo): string;
    protected get_p(): boolean;
    as(a: string): void;
    private ba;
    a5(): void;
    a0(a: string): void;
    private a9;
    private a7;
    private a8;
    protected get_ap(): string;
    protected aw(a: List$1<string>, b: CodeGeneratingImportManager): void;
    ay(a: number, b: string, c: CodeGenerationItemBuilderPropertyInfo, d: TypeDescriptionContext): void;
    protected w(a: CodeGenerationItemBuilderPropertyInfo): any;
    protected ak(): string;
    protected af(a: CodeGenerationItemBuilderPropertyInfo): string;
    protected al(a: CodeGenerationItemBuilderPropertyInfo): string;
    protected ah(a: CodeGenerationItemBuilderPropertyInfo): string;
    az(a: number, b: string, c: CodeGenerationItemBuilderPropertyInfo, d: TypeDescriptionContext): void;
}
/**
 * @hidden
 */
export declare class WebComponentsCodeBehindCodeGeneratingComponentRendererCodeEmitter extends CodeGeneratingComponentRendererCodeEmitter {
    static $t: Type;
    constructor(a: CodeGenerationRendererOptions, b: CodeGeneratingRendererResult);
}
/**
 * @hidden
 */
export declare class TSCodeGeneratingComponentRendererDataEmitter extends CodeGeneratingComponentRendererDataEmitter {
    static $t: Type;
    constructor(a: CodeGenerationRendererOptions, b: CodeGeneratingRendererResult);
    protected t(a: string, b?: boolean): string;
    protected s(a: string): string;
    protected al(a: string): string;
    protected get_q(): string;
    private ah;
    protected ag(a: string, b: string[], c: CodeGeneratingComponentRendererDataEmitterPropertyType[], d: CodeGeneratingCodeWriter, e: CodeGeneratingImportManager): void;
    protected ac(a: string): void;
    protected ad(a: string, b: JsonDictionaryValue): void;
    protected ae(a: string, b: string[], c: CodeGeneratingComponentRendererDataEmitterPropertyType[], d: JsonDictionaryObject): void;
    protected v(a: string, b: CodeGeneratingImportManager): void;
    protected w(a: string, b: CodeGeneratingImportManager): void;
    protected y(a: CodeGeneratingComponentRendererDataEmitterItemType, b: CodeGeneratingCodeWriter, c: CodeGeneratingImportManager): void;
    private ai;
    private ak;
    protected af(a: string, b: string[], c: CodeGeneratingComponentRendererDataEmitterPropertyType[], d: CodeGeneratingCodeWriter): void;
    protected u(a: string, b: string[], c: CodeGeneratingComponentRendererDataEmitterPropertyType[], d: JsonDictionaryItem, e: number, f: CodeGeneratingCodeWriter): void;
    private am;
    protected r(a: CodeGeneratingComponentRendererDataEmitterPropertyType, b: JsonDictionaryValue): string;
    protected aj(a: JsonDictionaryValue): string;
}
/**
 * @hidden
 */
export declare class AngularTemplateCodeGeneratingComponentRendererCodeEmitter extends CodeGeneratingComponentRendererCodeEmitter {
    static $t: Type;
    constructor(a: CodeGenerationRendererOptions, b: CodeGeneratingRendererResult);
    protected ad(a: CodeGenerationItemBuilderPropertyInfo): string;
    protected get_p(): boolean;
    protected get_ap(): string;
    as(a: string): void;
    private a7;
    a5(): void;
    a0(a: string): void;
    ay(a: number, b: string, c: CodeGenerationItemBuilderPropertyInfo, d: TypeDescriptionContext): void;
    protected ah(a: CodeGenerationItemBuilderPropertyInfo): string;
    protected w(a: CodeGenerationItemBuilderPropertyInfo): any;
    protected ak(): string;
    protected af(a: CodeGenerationItemBuilderPropertyInfo): string;
    protected al(a: CodeGenerationItemBuilderPropertyInfo): string;
    az(a: number, b: string, c: CodeGenerationItemBuilderPropertyInfo, d: TypeDescriptionContext): void;
}
/**
 * @hidden
 */
export declare class AngularCodeBehindCodeGeneratingComponentRendererCodeEmitter extends CodeGeneratingComponentRendererCodeEmitter {
    static $t: Type;
    constructor(a: CodeGenerationRendererOptions, b: CodeGeneratingRendererResult);
}
/**
 * @hidden
 */
export declare class DotNetCodeGeneratingComponentRendererDataEmitter extends CodeGeneratingComponentRendererDataEmitter {
    static $t: Type;
    constructor(a: CodeGenerationRendererOptions, b: CodeGeneratingRendererResult);
    protected w(a: string, b: CodeGeneratingImportManager): void;
    protected aa(a: CodeGeneratingCodeWriter): void;
    private ah;
    protected z(a: CodeGeneratingCodeWriter): void;
    protected t(a: string, b?: boolean): string;
    protected s(a: string): string;
    protected al(a: string): string;
    protected ag(a: string, b: string[], c: CodeGeneratingComponentRendererDataEmitterPropertyType[], d: CodeGeneratingCodeWriter, e: CodeGeneratingImportManager): void;
    protected ac(a: string): void;
    protected ad(a: string, b: JsonDictionaryValue): void;
    protected ae(a: string, b: string[], c: CodeGeneratingComponentRendererDataEmitterPropertyType[], d: JsonDictionaryObject): void;
    protected get_q(): string;
    protected y(a: CodeGeneratingComponentRendererDataEmitterItemType, b: CodeGeneratingCodeWriter, c: CodeGeneratingImportManager): void;
    private ai;
    private ak;
    protected af(a: string, b: string[], c: CodeGeneratingComponentRendererDataEmitterPropertyType[], d: CodeGeneratingCodeWriter): void;
    protected u(a: string, b: string[], c: CodeGeneratingComponentRendererDataEmitterPropertyType[], d: JsonDictionaryItem, e: number, f: CodeGeneratingCodeWriter): void;
    private am;
    protected r(a: CodeGeneratingComponentRendererDataEmitterPropertyType, b: JsonDictionaryValue): string;
    protected aj(a: JsonDictionaryValue): string;
}
/**
 * @hidden
 */
export declare class WPFXamlCodeGeneratingComponentRendererCodeEmitter extends CodeGeneratingComponentRendererCodeEmitter {
    static $t: Type;
    protected get_q(): boolean;
    constructor(a: CodeGenerationRendererOptions, b: CodeGeneratingRendererResult);
    protected ad(a: CodeGenerationItemBuilderPropertyInfo): string;
    as(a: string): void;
    a5(): void;
    a0(a: string): void;
    ay(a: number, b: string, c: CodeGenerationItemBuilderPropertyInfo, d: TypeDescriptionContext): void;
    protected w(a: CodeGenerationItemBuilderPropertyInfo): any;
    protected ak(): string;
    protected af(a: CodeGenerationItemBuilderPropertyInfo): string;
    private a7;
    protected al(a: CodeGenerationItemBuilderPropertyInfo): string;
    az(a: number, b: string, c: CodeGenerationItemBuilderPropertyInfo, d: TypeDescriptionContext): void;
    protected get_ap(): string;
}
/**
 * @hidden
 */
export declare class WPFCodeBehindCodeGeneratingComponentRendererCodeEmitter extends CodeGeneratingComponentRendererCodeEmitter {
    static $t: Type;
    protected get_q(): boolean;
    constructor(a: CodeGenerationRendererOptions, b: CodeGeneratingRendererResult);
}
/**
 * @hidden
 */
export declare class CodeGeneratingComponentRenderer extends ComponentRenderer {
    static $t: Type;
    loadCodeJson(a: string): void;
    static dm(a: string): string;
    static dn(a: string): string;
    static dp(a: string): string;
    protected aj(): boolean;
    y(a: JsonDictionaryItem): boolean;
    ad(a: JsonDictionaryItem): boolean;
    z(a: JsonDictionaryItem): boolean;
    db(a: CodeGenerationItemBuilder, b: CodeGenerationRendererOptions, c: CodeGeneratingRendererResult): CodeGeneratingComponentRendererCodeEmitter;
    dc(a: CodeGenerationRendererOptions, b: CodeGeneratingRendererResult): CodeGeneratingComponentRendererDataEmitter;
    dd(a: CodeGenerationRendererOptions, b: CodeGeneratingRendererResult): CodeGeneratingComponentRendererHandlerEmitter;
    de(a: CodeGenerationRendererOptions, b: CodeGeneratingRendererResult): CodeGeneratingComponentRendererModuleEmitter;
    emitCode(a: ICodeGenerationRendererTemplate): CodeGeneratingRendererResult;
    private dt;
    protected a3(): (arg1: string) => string;
    private dq;
    private dr;
    private dg;
    private dh;
    private di;
    private dj;
    private dk;
    constructor(a: CodeGenerationTargetPlatforms, b: CodeGenerationRendererOptions);
    private static dl;
}
/**
 * @hidden
 */
export declare class CodeGenerationContainer extends Base {
    static $t: Type;
    private _id;
    id: string;
    constructor();
    a: List$1<CodeGenerationItemBuilder>;
    c(a: CodeGeneratingRendererResult, b: CodeGeneratingComponentRenderer, c: CodeGenerationRendererOptions): void;
}
/**
 * @hidden
 */
export declare class CodeGenerationItemBuilder extends Base {
    static $t: Type;
    private g;
    private f;
    private c;
    private b;
    private j;
    private h;
    constructor(a: CodeGenerationTargetPlatforms, b: string, c: TypeDescriptionContext, d: any);
    a(a: string): CodeGenerationItemBuilder;
    private o;
    s(a: string, b: TypeDescriptionMetadata, c: any, d: DescriptionRef): void;
    q(a: string, b: TypeDescriptionMetadata, c: DescriptionRef): void;
    r(a: string, b: TypeDescriptionMetadata): void;
    i(a: string): any;
    p(a: CodeGeneratingComponentRendererCodeEmitter, b: boolean): void;
    protected e(a: CodeGeneratingComponentRendererCodeEmitter): boolean;
    private d;
    private m;
    private n;
    protected get_k(): string;
    protected readonly k: string;
    protected get_l(): string;
    protected readonly l: string;
}
/**
 * @hidden
 */
export declare class CodeGenerationRendererAdapter extends Base implements IComponentRendererAdapter {
    static $t: Type;
    private a;
    private b;
    constructor(a: CodeGenerationTargetPlatforms, b: IComponentRendererAdapter);
    createColorCollection(a: any[]): any;
    createBrushCollection(a: any[]): any;
    createObject(a: string, b: any, c: TypeDescriptionContext): any;
    coerceToEnum(a: string, b: TypeDescriptionContext, c: string): any;
    onUIThread(a: any, b: () => void): void;
    setOrUpdateCollectionOnTarget(a: any, b: string, c: TypeDescriptionMetadata, d: TypeDescriptionContext, e: any, f: any): void;
    private c;
    onPendingRef(a: any, b: string, c: TypeDescriptionMetadata, d: DescriptionRef): void;
    setPropertyValue(a: any, b: string, c: TypeDescriptionMetadata, d: any, e: any, f: DescriptionRef): void;
    getPropertyValue(a: any, b: string): any;
    getRootObject(a: any): any;
    clearContainer(a: any, b: TypeDescriptionContext, c: (arg1: boolean) => void): void;
    forPropertyValueItem(a: any, b: string, c: (arg1: any) => void): void;
    clearCollection(a: any, b: string, c: TypeDescriptionMetadata): void;
    addItemToCollection(a: string, b: TypeDescriptionMetadata, c: any, d: number, e: any): void;
    resetPropertyOnTarget(a: any, b: string, c: TypeDescriptionMetadata, d: any): void;
    replaceItemInCollection(a: string, b: TypeDescriptionMetadata, c: any, d: number, e: any): void;
    replaceRootItem(a: any, b: string, c: TypeDescriptionContext, d: (arg1: boolean) => void): void;
    removeItemFromCollection(a: string, b: TypeDescriptionMetadata, c: any, d: number): void;
    removeRootItem(a: any, b: TypeDescriptionContext, c: (arg1: boolean) => void): void;
    flushChanges(a: any): void;
}
