import { HighlightingManager } from "igniteui-react-core";
import { Base, Type, Point, INotifyPropertyChanged, IEnumerable, PropertyChangedEventArgs, EventArgs } from "igniteui-react-core";
import { TreemapHighlightingMode } from "./TreemapHighlightingMode";
import { DomRenderer } from "igniteui-react-core";
import { RenderingContext } from "igniteui-react-core";
import { FontInfo } from "igniteui-react-core";
import { Brush } from "igniteui-react-core";
import { Rect } from "igniteui-react-core";
import { TreemapVisualData } from "./TreemapVisualData";
import { List$1 } from "igniteui-react-core";
import { TreemapVisual } from "./TreemapVisual";
import { Pool$1 } from "igniteui-react-core";
import { IExecutionContext } from "igniteui-react-core";
import { HorizontalAlignment } from "igniteui-react-core";
import { VerticalAlignment } from "igniteui-react-core";
import { Thickness } from "igniteui-react-core";
import { HashSet$1 } from "igniteui-react-core";
import { TreemapOrientation } from "./TreemapOrientation";
import { Dictionary$2 } from "igniteui-react-core";
import { DoubleAnimator } from "igniteui-react-core";
import { BrushCollection } from "igniteui-react-core";
import { TreemapFillScaleMode } from "./TreemapFillScaleMode";
import { TreemapLabelVerticalFitMode } from "./TreemapLabelVerticalFitMode";
import { TreemapLabelHorizontalFitMode } from "./TreemapLabelHorizontalFitMode";
import { TreemapHeaderDisplayMode } from "./TreemapHeaderDisplayMode";
import { TreemapLayoutType } from "./TreemapLayoutType";
import { FastItemsSource } from "igniteui-react-core";
import { IFastItemColumn$1 } from "igniteui-react-core";
import { HighlightingInfo } from "igniteui-react-core";
import { IHighlightingManager } from "igniteui-react-core";
import { ObservableCollection$1 } from "igniteui-react-core";
import { FastItemsSourceEventAction } from "igniteui-react-core";
import { TreemapValueMappingMode } from "./TreemapValueMappingMode";
import { TreemapNodePointerEventArgs } from "./TreemapNodePointerEventArgs";
import { TreemapNodeStyleMappingTargetType } from "./TreemapNodeStyleMappingTargetType";
/**
 * @hidden
 */
export declare class TreemapHighlightingManager extends HighlightingManager {
    static $t: Type;
    isCrossContextHighlight(a: any): boolean;
}
/**
 * @hidden
 */
export declare class TreemapView extends Base {
    static $t: Type;
    constructor();
    protected b: TreemapViewRenderer;
    a: Treemap;
    ax(): void;
    a1(): void;
    private p;
    a2(): void;
    ag(): void;
    q(): boolean;
    private af;
    private m;
    private ad;
    private t;
    private s;
    private g;
    private ae;
    private w;
    ay(): void;
    au(a: DomRenderer): void;
    private al;
    ao(a: TreemapVisualData): void;
    private ak;
    private ac;
    ar(): void;
    private ah;
    private aj;
    private an;
    private am;
    private c;
    protected aq(): void;
    private u;
    private v;
    private a4;
    l(): Pool$1<TreemapVisual>;
    protected a3(): void;
    as(): void;
    ap(): void;
    private a0;
    private i;
    private h;
    aw(a: FontInfo): void;
    az(a: FontInfo): void;
    private r;
    private n;
    ai(a: List$1<TreemapVisual>): void;
    ab(a: string): number;
    z(a: string): number;
    x(a: FontInfo): number;
    aa(a: string): number;
    y(a: string): number;
    a7(): Brush;
    a9(): Brush;
    a8(): Brush;
    private a5;
    bf(): Brush;
    bb(): Brush;
    ba(): Brush;
    be(): Brush;
    a6(): Brush;
    private f;
    private e;
    k(): FontInfo;
    j(): FontInfo;
    bc(): Brush;
    bd(): Brush;
    private o;
    at(): void;
    av(): void;
    d(): IExecutionContext;
}
/**
 * @hidden
 */
export declare class TreemapViewRenderer extends Base {
    static $t: Type;
    constructor();
    b: Pool$1<TreemapVisual>;
    protected c: List$1<TreemapVisual>;
    a(): TreemapVisual;
    g(a: TreemapVisual): void;
    i(a: TreemapVisual): void;
    h(a: TreemapVisual): void;
    j: Brush;
    private d;
    f(a: RenderingContext, b: Rect, c: List$1<TreemapVisual>, d: number): void;
    e(a: TreemapVisualData, b: List$1<TreemapVisual>, c: TreemapView): void;
}
/**
 * @hidden
 */
export declare abstract class TreemapLayoutCalculator extends Base {
    static $t: Type;
    abstract d(a: TreemapFrame, b: TreemapLayoutSettings): void;
    protected static c(a: TreemapTreeNode, b: Rect, c: number, d: TreemapLayoutSettings): boolean;
    protected static a(a: HashSet$1<TreemapTreeNode>, b: TreemapFrame, c: List$1<TreemapTreeNode>, d: Rect, e: TreemapLayoutSettings): boolean;
    protected static b(a: Rect, b: TreemapLayoutSettings): boolean;
    protected h(a: TreemapFrame, b: TreemapTreeNode, c: TreemapLayoutSettings): Rect;
    protected i(a: TreemapFrame, b: TreemapTreeNode, c: TreemapLayoutSettings): Rect;
    protected g(a: TreemapFrame, b: TreemapTreeNode, c: Rect, d: TreemapLayoutSettings): void;
    protected f(a: HashSet$1<TreemapTreeNode>, b: TreemapFrame, c: List$1<TreemapTreeNode>, d: number, e: Rect, f: TreemapLayoutSettings): void;
    protected e(a: HashSet$1<TreemapTreeNode>, b: TreemapFrame, c: List$1<TreemapTreeNode>, d: number, e: Rect, f: TreemapLayoutSettings): void;
}
/**
 * @hidden
 */
export declare class StrippedCalculator extends TreemapLayoutCalculator {
    static $t: Type;
    d(a: TreemapFrame, b: TreemapLayoutSettings): void;
    private q;
    protected o(a: TreemapFrame, b: TreemapTreeNode, c: Rect, d: TreemapLayoutSettings, e: number): void;
    private m;
    private l;
    private n;
    private static j;
    private static k;
    private static p;
}
/**
 * @hidden
 */
export declare class SliceAndDiceCalculator extends TreemapLayoutCalculator {
    static $t: Type;
    d(a: TreemapFrame, b: TreemapLayoutSettings): void;
    private o;
    protected m(a: TreemapFrame, b: TreemapTreeNode, c: Rect, d: TreemapLayoutSettings, e: number): void;
    static j(a: TreemapTreeNode, b: TreemapLayoutSettings, c: number): TreemapOrientation;
    private static k;
    private static n;
    static l: any;
}
/**
 * @hidden
 */
export declare class TreemapLayoutSettings extends Base {
    static $t: Type;
    constructor();
    a: TreemapOrientation;
    h: Rect;
    b: TreemapTreeData;
    j: Thickness;
    i: Thickness;
    e: number;
    f: number;
    g: number;
    c: TreemapTreeNode;
    d: boolean;
}
/**
 * @hidden
 */
export declare class SquarifiedCalculator extends TreemapLayoutCalculator {
    static $t: Type;
    protected n(a: TreemapFrame, b: TreemapTreeNode, c: Rect, d: TreemapLayoutSettings, e: number): void;
    private o;
    private static j;
    private l;
    private m;
    private k;
    d(a: TreemapFrame, b: TreemapLayoutSettings): void;
}
/**
 * @hidden
 */
export declare class TreemapTreeData extends Base {
    static $t: Type;
    constructor();
    a: TreemapTreeNode;
    b: Dictionary$2<string, TreemapTreeNode>;
    d: List$1<string>;
    c: Dictionary$2<string, List$1<TreemapTreeNode>>;
    e(a: TreemapTreeNode): void;
    private g;
    f(): void;
}
/**
 * @hidden
 */
export declare class TreemapTreeNode extends Base {
    static $t: Type;
    constructor();
    j: string;
    l: string;
    b: List$1<TreemapTreeNode>;
    c: List$1<TreemapNodeStyleMapping>;
    f: number;
    h: any;
    d: number;
    k: string;
    i: any;
    g: number;
    a: boolean;
    e(): number;
}
/**
 * @hidden
 */
export declare class Treemap extends Base implements INotifyPropertyChanged {
    static $t: Type;
    constructor();
    private g7;
    private g6;
    private h7;
    protected ha(a: FastItemsSourceEventAction, b: number, c: number, d: string): void;
    protected g: TreemapFrame;
    protected f: TreemapFrame;
    protected e: TreemapFrame;
    notifySizeChanged(): void;
    destroy(): void;
    av(): TreemapVisualData;
    e1(): string;
    protected hw(a: string, b: any, c: any): void;
    protected h1(a: string, b: any, c: any): void;
    private bk;
    private hq;
    ao: TreemapView;
    private je;
    get jg(): Rect;
    set jg(a: Rect);
    private g8;
    protected aw: DoubleAnimator;
    private er;
    get g3(): string;
    set g3(a: string);
    private eq;
    get gt(): string;
    set gt(a: string);
    private el;
    get ev(): string;
    set ev(a: string);
    private ep;
    get gh(): string;
    set gh(a: string);
    private eo;
    get fz(): string;
    set fz(a: string);
    private em;
    get ey(): string;
    set ey(a: string);
    private en;
    get fp(): string;
    set fp(a: string);
    private b0;
    get dataSource(): IEnumerable;
    set dataSource(a: IEnumerable);
    private a;
    get b(): BrushCollection;
    set b(a: BrushCollection);
    private ae;
    get styleMappings(): TreemapNodeStyleMappingCollection;
    private c;
    get d(): TreemapFillScaleMode;
    set d(a: TreemapFillScaleMode);
    private bl;
    get bq(): boolean;
    set bq(a: boolean);
    private eb;
    get ee(): number;
    set ee(a: number);
    private b8;
    get c6(): number;
    set c6(a: number);
    private b7;
    get c5(): number;
    set c5(a: number);
    private n;
    get p(): TreemapLabelVerticalFitMode;
    set p(a: TreemapLabelVerticalFitMode);
    private get o();
    private k;
    get m(): TreemapLabelHorizontalFitMode;
    set m(a: TreemapLabelHorizontalFitMode);
    private get l();
    private iq;
    get i2(): Brush;
    set i2(a: Brush);
    private ij;
    get iw(): Brush;
    set iw(a: Brush);
    private ih;
    get iu(): Brush;
    set iu(a: Brush);
    private ip;
    get i1(): Brush;
    set i1(a: Brush);
    private im;
    get iz(): Brush;
    set iz(a: Brush);
    private ii;
    get iv(): Brush;
    set iv(a: Brush);
    private ir;
    get jc(): Brush;
    set jc(a: Brush);
    private ig;
    get it(): Brush;
    set it(a: Brush);
    private il;
    get iy(): Brush;
    set iy(a: Brush);
    private ik;
    get ix(): Brush;
    set ix(a: Brush);
    private a1;
    get a4(): FontInfo;
    set a4(a: FontInfo);
    private a0;
    get a2(): FontInfo;
    set a2(a: FontInfo);
    private h;
    get j(): TreemapHeaderDisplayMode;
    set j(a: TreemapHeaderDisplayMode);
    private get i();
    private cb;
    get da(): number;
    set da(a: number);
    private cd;
    get dc(): number;
    set dc(a: number);
    private cc;
    get db(): number;
    set db(a: number);
    private ca;
    get c9(): number;
    set c9(a: number);
    private cm;
    get dl(): number;
    set dl(a: number);
    private co;
    get dn(): number;
    set dn(a: number);
    private cn;
    get dm(): number;
    set dm(a: number);
    private cl;
    get dk(): number;
    set dk(a: number);
    private cg;
    get df(): number;
    set df(a: number);
    private ci;
    get dh(): number;
    set dh(a: number);
    private ch;
    get dg(): number;
    set dg(a: number);
    private cf;
    get de(): number;
    set de(a: number);
    private cr;
    get dr(): number;
    set dr(a: number);
    private cv;
    get dv(): number;
    set dv(a: number);
    private ct;
    get dt(): number;
    set dt(a: number);
    private cp;
    get dp(): number;
    set dp(a: number);
    private cs;
    get ds(): number;
    set ds(a: number);
    private cw;
    get dw(): number;
    set dw(a: number);
    private cu;
    get du(): number;
    set du(a: number);
    private cq;
    get dq(): number;
    set dq(a: number);
    private ic;
    get id(): HorizontalAlignment;
    set id(a: HorizontalAlignment);
    private jh;
    get ji(): VerticalAlignment;
    set ji(a: VerticalAlignment);
    private b9;
    get c8(): number;
    set c8(a: number);
    private io;
    get i0(): Brush;
    set i0(a: Brush);
    private cy;
    get d8(): number;
    set d8(a: number);
    private ck;
    get dj(): number;
    set dj(a: number);
    private ai;
    get aj(): TreemapOrientation;
    set aj(a: TreemapOrientation);
    private r;
    get s(): TreemapLayoutType;
    set s(a: TreemapLayoutType);
    private cj;
    get di(): number;
    set di(a: number);
    private ed;
    get ei(): number;
    set ei(a: number);
    private cz;
    protected get d9(): number;
    protected set d9(a: number);
    private ea;
    private ay;
    get az(): FastItemsSource;
    set az(a: FastItemsSource);
    private ba;
    get bh(): IFastItemColumn$1<number>;
    set bh(a: IFastItemColumn$1<number>);
    private a6;
    get bb(): IFastItemColumn$1<any>;
    set bb(a: IFastItemColumn$1<any>);
    private a9;
    get be(): IFastItemColumn$1<any>;
    set be(a: IFastItemColumn$1<any>);
    private a7;
    get bc(): IFastItemColumn$1<any>;
    set bc(a: IFastItemColumn$1<any>);
    private a8;
    get bd(): IFastItemColumn$1<any>;
    set bd(a: IFastItemColumn$1<any>);
    private cx;
    get dx(): number;
    set dx(a: number);
    private b3;
    get c1(): number;
    set c1(a: number);
    private ce;
    get dd(): number;
    set dd(a: number);
    private b2;
    get c0(): number;
    set c0(a: number);
    private ec;
    get eg(): number;
    set eg(a: number);
    private ar;
    get au(): TreemapHighlightingMode;
    set au(a: TreemapHighlightingMode);
    private aq;
    get as(): TreemapHighlightingMode;
    set as(a: TreemapHighlightingMode);
    protected at(): TreemapHighlightingMode;
    private a5;
    ax: DoubleAnimator;
    private ap;
    get bi(): IHighlightingManager;
    private hc;
    private g9;
    private hf;
    ia(a: number): void;
    hi(a: TreemapNodeFrame, b: Point, c: boolean, d: boolean): void;
    private bj;
    protected bf(a: string): IFastItemColumn$1<number>;
    protected bg(a: string): IFastItemColumn$1<any>;
    hh(): void;
    protected bp: boolean;
    protected bs: boolean;
    protected bo: boolean;
    get bm(): boolean;
    private al;
    private ak;
    protected q: TreemapLayoutCalculator;
    protected h0(): void;
    private br;
    private d2;
    private d4;
    private d5;
    private d3;
    private ie;
    private jj;
    private dy;
    private d0;
    private d1;
    private dz;
    private b4;
    g1(a: TreemapTreeNode, b: string, c: number, d: number, e: number): string;
    private gs;
    private b6;
    private d7;
    private b5;
    private d6;
    propertyChanged: (sender: any, e: PropertyChangedEventArgs) => void;
    private i4;
    private i9;
    private i7;
    private a3;
    onDetachedFromUI(): void;
    onAttachedToUI(): void;
    private i5;
    private ja;
    private i6;
    private i8;
    private i3;
    private c7;
    private jb;
    protected h3(a: TreemapFrame): void;
    private eh;
    private c3;
    private is;
    private jf;
    private c2;
    protected bw(): boolean;
    h4(): void;
    private bn;
    private bv;
    private c4;
    private bt;
    u(a: Point): TreemapNodeFrame;
    private ef;
    v(a: Point): TreemapNodeFrame;
    private h6;
    private get bx();
    provideContainer(a: DomRenderer): void;
    he(): void;
    protected w: TreemapNodeFrame;
    private t;
    protected get x(): TreemapNodeFrame;
    protected set x(a: TreemapNodeFrame);
    private hd;
    private hg;
    private y;
    private ej;
    get ek(): any;
    set ek(a: any);
    protected an: TreemapTreeNode;
    protected am: TreemapTreeNode;
    hr(a: Point): void;
    hv(a: Point): void;
    private h8;
    private bu;
    hm(source_: any, a: number, b: any, c: any): void;
    hj(source_: any): void;
    private by;
    static bz(a: any, b: any): boolean;
    hk(source_: any, a: number, b: any): void;
    hl(source_: any, a: number, b: any): void;
    hs(a: Point): void;
    ht(a: Point): void;
    protected jd: Point;
    protected ib(a: Point): void;
    h5(a: Point): void;
    hu(a: Point): void;
    private h9;
    hx(a: Point): void;
    hy(a: Point): void;
    hz(a: TreemapNodeStyle): void;
    nodeStyling: (sender: any, args: TreemapNodeStylingEventArgs) => void;
    nodeRenderStyling: (sender: any, args: TreemapNodeStylingEventArgs) => void;
    nodePointerOver: (sender: any, args: TreemapNodePointerEventArgs) => void;
    nodePointerEnter: (sender: any, args: TreemapNodePointerEventArgs) => void;
    nodePointerLeave: (sender: any, args: TreemapNodePointerEventArgs) => void;
    nodePointerPressed: (sender: any, args: TreemapNodePointerEventArgs) => void;
    nodePointerReleased: (sender: any, args: TreemapNodePointerEventArgs) => void;
}
/**
 * @hidden
 */
export declare class TreemapNodeStyle extends Base implements INotifyPropertyChanged {
    static $t: Type;
    a: Treemap;
    protected a3(a: string, b: any, c: any): void;
    private e;
    a2(): void;
    d(a: string): boolean;
    protected a4(a: string, b: any, c: any): void;
    private a9;
    get bg(): Brush;
    set bg(a: Brush);
    private a8;
    get bf(): Brush;
    set bf(a: Brush);
    private bb;
    get bi(): Brush;
    set bi(a: Brush);
    private ad;
    get aq(): string;
    set aq(a: string);
    private bd;
    get bk(): Brush;
    set bk(a: Brush);
    private ba;
    get bh(): Brush;
    set bh(a: Brush);
    private i;
    get u(): number;
    set u(a: number);
    private k;
    get w(): number;
    set w(a: number);
    private j;
    get v(): number;
    set v(a: number);
    private h;
    get t(): number;
    set t(a: number);
    private m;
    get y(): number;
    set y(a: number);
    private o;
    get aa(): number;
    set aa(a: number);
    private n;
    get z(): number;
    set z(a: number);
    private l;
    get x(): number;
    set x(a: number);
    private g;
    get s(): number;
    set s(a: number);
    private a5;
    get a6(): HorizontalAlignment;
    set a6(a: HorizontalAlignment);
    private bl;
    get bm(): VerticalAlignment;
    set bm(a: VerticalAlignment);
    private a7;
    get be(): Brush;
    set be(a: Brush);
    private bc;
    get bj(): Brush;
    set bj(a: Brush);
    private q;
    get ac(): number;
    set ac(a: number);
    private p;
    get ab(): number;
    set ab(a: number);
    private f;
    get r(): number;
    set r(a: number);
    private b;
    get c(): boolean;
    set c(a: boolean);
    propertyChanged: (sender: any, e: PropertyChangedEventArgs) => void;
}
/**
 * @hidden
 */
export declare class TreemapNodeStyleMapping extends TreemapNodeStyle {
    static $t: Type;
    private bn;
    get bo(): TreemapNodeStyleMappingTargetType;
    set bo(a: TreemapNodeStyleMappingTargetType);
    private bx;
    get b1(): string;
    set b1(a: string);
    private bs;
    get bu(): number;
    set bu(a: number);
    private br;
    get bt(): number;
    set bt(a: number);
    private bv;
    get bw(): any;
    set bw(a: any);
    private bp;
    get bq(): TreemapValueMappingMode;
    set bq(a: TreemapValueMappingMode);
}
/**
 * @hidden
 */
export declare class TreemapNodeStyleMappingCollection extends ObservableCollection$1<TreemapNodeStyleMapping> {
    static $t: Type;
    constructor();
    collectionResetting: (sender: any, e: EventArgs) => void;
    protected p(): void;
}
/**
 * @hidden
 */
export declare class TreemapNodeStylingEventArgs extends EventArgs {
    static $t: Type;
    private _value;
    get value(): number;
    set value(a: number);
    private _sum;
    get sum(): number;
    set sum(a: number);
    private _customValue;
    get customValue(): any;
    set customValue(a: any);
    private _item;
    get item(): any;
    set item(a: any);
    private _parentItem;
    get parentItem(): any;
    set parentItem(a: any);
    private _label;
    get label(): string;
    set label(a: string);
    private _parentValue;
    get parentValue(): number;
    set parentValue(a: number);
    private _parentLabel;
    get parentLabel(): string;
    set parentLabel(a: string);
    private _parentSum;
    get parentSum(): number;
    set parentSum(a: number);
    private _isParent;
    get isParent(): boolean;
    set isParent(a: boolean);
    private _style;
    get style(): TreemapNodeStyle;
    set style(a: TreemapNodeStyle);
    private _highlightingInfo;
    get highlightingInfo(): HighlightingInfo;
    set highlightingInfo(a: HighlightingInfo);
    private _highlightingHandled;
    get highlightingHandled(): boolean;
    set highlightingHandled(a: boolean);
    private _isHighlightInProgress;
    get isHighlightInProgress(): boolean;
    set isHighlightInProgress(a: boolean);
    private _totalHighlightProgress;
    get totalHighlightProgress(): number;
    set totalHighlightProgress(a: number);
}
/**
 * @hidden
 */
export declare class TreemapFrame extends Base {
    static $t: Type;
    constructor();
    private d;
    e: List$1<string>;
    h(a: number, b: TreemapFrame, c: TreemapFrame): void;
    private i;
    private j;
    private k;
    m(a: TreemapTreeNode, b: Rect): void;
    n(a: TreemapTreeNode, b: boolean): void;
    b(a: TreemapTreeNode): boolean;
    o(a: TreemapTreeNode): Rect;
    l(a: TreemapTreeNode, b: string, c: Brush, d: Brush, e: Brush, f: Brush, g: number, h: number, i: TreemapHeaderDisplayMode, j: number, k: number, l: number, m: number, n: number, o: number, p: number, q: number, r: number, s: number, t: HorizontalAlignment, u: VerticalAlignment): void;
    g(): void;
    c(a: string): boolean;
    a(a: string): TreemapNodeFrame;
    f(a: TreemapTreeNode, b: TreemapNodeStyle, c: (arg1: TreemapTreeNode, arg2: Brush, arg3: Brush) => Brush): void;
}
/**
 * @hidden
 */
export declare class TreemapNodeFrame extends Base {
    static $t: Type;
    constructor();
    ac: Rect;
    e: TreemapTreeNode;
    u: string;
    static b(a: number, b: TreemapNodeFrame, c: TreemapNodeFrame): TreemapNodeFrame;
    static d(a: number, b: TreemapNodeFrame): TreemapNodeFrame;
    static c(a: number, b: TreemapNodeFrame): TreemapNodeFrame;
    f(a: any): HighlightingInfo;
    w(a: TreemapTreeNode, b: TreemapNodeStyle, c: (arg1: TreemapTreeNode, arg2: Brush, arg3: Brush) => Brush): void;
    v: string;
    y: Brush;
    ab: Brush;
    t: number;
    s: number;
    h: number;
    k: number;
    m: number;
    l: number;
    j: number;
    p: number;
    r: number;
    q: number;
    o: number;
    aa: Brush;
    z: Brush;
    a: TreemapHeaderDisplayMode;
    n: number;
    i: number;
    x: HorizontalAlignment;
    ad: VerticalAlignment;
    g: boolean;
}
