import { EventEmitter, ViewContainerRef, Injector, ComponentFactoryResolver, AfterContentInit, Renderer2, QueryList, NgZone } from '@angular/core';
import { IgPoint } from "igniteui-angular-core";
import { Treemap } from "./Treemap";
import { IgxTreemapNodeStyleMappingComponent } from './igx-treemap-node-style-mapping-component';
import { IgxTreemapNodeStyleMappingCollection } from './igx-treemap-node-style-mapping-collection';
import { TreemapFillScaleMode } from "./TreemapFillScaleMode";
import { IgxTreemapNodeStylingEventArgs } from "./igx-treemap-node-styling-event-args";
import { TreemapOrientation } from './TreemapOrientation';
import { TreemapLayoutType } from './TreemapLayoutType';
import { IgxTreemapNodePointerEventArgs } from './igx-treemap-node-pointer-event-args';
import { TreemapHeaderDisplayMode } from './TreemapHeaderDisplayMode';
import { HorizontalAlignment } from "igniteui-angular-core";
import { VerticalAlignment } from "igniteui-angular-core";
import { TreemapLabelHorizontalFitMode } from './TreemapLabelHorizontalFitMode';
import { TreemapLabelVerticalFitMode } from './TreemapLabelVerticalFitMode';
import * as i0 from "@angular/core";
export declare class IgxTreemapComponent implements AfterContentInit {
    private renderer;
    private _elRef;
    private ngZone;
    private injector;
    private componentFactoryResolver;
    container: Element;
    private _height;
    private _width;
    set height(value: string);
    get height(): string;
    set width(value: string);
    get width(): string;
    _dynamicContent: ViewContainerRef;
    contentStyleMappings: QueryList<IgxTreemapNodeStyleMappingComponent>;
    /**
    * The style mappings actually present in the chart. Do not directly modify this array.
    * This array's contents can be modified by causing Angular to reproject the child content.
    * Or adding and removing stye mappings from the manual style mapping collection on the styleMappings property.
    */
    actualStyleMappings: IgxTreemapNodeStyleMappingComponent[];
    private _styleMappings;
    private _styleMappingsAdapter;
    /**
     * A collection or manually added axes for the chart.
    */
    get styleMappings(): IgxTreemapNodeStyleMappingCollection;
    private _wrapper;
    private _root;
    constructor(renderer: Renderer2, _elRef: ViewContainerRef, ngZone: NgZone, injector: Injector, componentFactoryResolver: ComponentFactoryResolver);
    updateStyle(): void;
    ngOnDestroy(): void;
    private _implementation;
    ngAfterContentInit(): void;
    protected createImplementation(): Treemap;
    get i(): Treemap;
    private _treeMap;
    /**
 * Gets or sets path to use to get the values from the items.
*/
    get valueMemberPath(): string;
    set valueMemberPath(v: string);
    /**
     * Gets or sets the root title to use for breadcrumbs.
    */
    get rootTitle(): string;
    set rootTitle(v: string);
    /**
     * Gets or sets the root title to use for breadcrumbs.
    */
    get breadcrumbSequence(): string;
    set breadcrumbSequence(v: string);
    /**
     * Gets or sets the path to use to get the Parent of the items.
    */
    get parentIdMemberPath(): string;
    set parentIdMemberPath(v: string);
    /**
     * Gets or sets the path to use to get the Label of the items.
    */
    get labelMemberPath(): string;
    set labelMemberPath(v: string);
    /**
     * Gets or sets the path to use to get the custom value of the items.
    */
    get customValueMemberPath(): string;
    set customValueMemberPath(v: string);
    /**
     * Gets or sets the path to use to get the id of the items.
    */
    get idMemberPath(): string;
    set idMemberPath(v: string);
    /**
     * Gets or sets the (possibly hierarchical) data to assign to the TreeMap.
    */
    get dataSource(): any[];
    set dataSource(v: any[]);
    /**
     * Gets or sets brushes to use for the fill scale.
    */
    get fillBrushes(): string[];
    set fillBrushes(v: string[]);
    static ngAcceptInputType_fillBrushes: string[] | string;
    /**
     * Gets or sets mode to use for the fill scale.
    */
    get fillScaleMode(): TreemapFillScaleMode;
    set fillScaleMode(v: TreemapFillScaleMode);
    static ngAcceptInputType_fillScaleMode: TreemapFillScaleMode | string;
    /**
     * Gets or sets whether the fill scale is logarithmic.
    */
    get isFillScaleLogarithmic(): boolean;
    set isFillScaleLogarithmic(v: boolean);
    static ngAcceptInputType_isFillScaleLogarithmic: boolean | string;
    /**
     * Gets or sets the logarithm base to use if the fill scale is logarithmic.
    */
    get fillScaleLogarithmBase(): number;
    set fillScaleLogarithmBase(v: number);
    static ngAcceptInputType_fillScaleLogarithmBase: number | string;
    /**
     * Gets or sets the minimum value to use for the fill scale.
    */
    get fillScaleMinimumValue(): number;
    set fillScaleMinimumValue(v: number);
    static ngAcceptInputType_fillScaleMinimumValue: number | string;
    /**
     * Gets or sets the maximum value to use for the fill scale.
    */
    get fillScaleMaximumValue(): number;
    set fillScaleMaximumValue(v: number);
    static ngAcceptInputType_fillScaleMaximumValue: number | string;
    /**
     * Gets or sets the vertical fit mode to use for the node labels.
    */
    get labelVerticalFitMode(): TreemapLabelVerticalFitMode;
    set labelVerticalFitMode(v: TreemapLabelVerticalFitMode);
    static ngAcceptInputType_labelVerticalFitMode: TreemapLabelVerticalFitMode | string;
    /**
     * Gets or sets the horizontal fit mode to use for the node labels.
    */
    get labelHorizontalFitMode(): TreemapLabelHorizontalFitMode;
    set labelHorizontalFitMode(v: TreemapLabelHorizontalFitMode);
    static ngAcceptInputType_labelHorizontalFitMode: TreemapLabelHorizontalFitMode | string;
    /**
     * Gets or sets the background to use for the overlay header when it is hovered.
    */
    get overlayHeaderHoverBackground(): string;
    set overlayHeaderHoverBackground(v: string);
    /**
     * Gets or sets the background to use for the header when it is hovered.
    */
    get headerHoverBackground(): string;
    set headerHoverBackground(v: string);
    /**
     * Gets or sets the background to use for the header.
    */
    get headerBackground(): string;
    set headerBackground(v: string);
    /**
     * Gets or sets the background to use for the overlay header.
    */
    get overlayHeaderBackground(): string;
    set overlayHeaderBackground(v: string);
    /**
     * Gets or sets the text color to use for the header.
    */
    get headerTextColor(): string;
    set headerTextColor(v: string);
    /**
     * Gets or sets the dark text color to use for the header.
    */
    get headerDarkTextColor(): string;
    set headerDarkTextColor(v: string);
    /**
     * Gets or sets the text color to use for the nodes.
    */
    get textColor(): string;
    set textColor(v: string);
    /**
     * Gets or sets the dark text color to use for the nodes.
    */
    get darkTextColor(): string;
    set darkTextColor(v: string);
    /**
     * Gets or sets the text color to use for the header.
    */
    get headerHoverTextColor(): string;
    set headerHoverTextColor(v: string);
    /**
     * Gets or sets the dark text color to use for the header when hovered.
    */
    get headerHoverDarkTextColor(): string;
    set headerHoverDarkTextColor(v: string);
    /**
     * Gets or sets the font to use for content nodes
    */
    get textStyle(): string;
    set textStyle(v: string);
    /**
     * Gets or sets the font to use for header nodes
    */
    get headerTextStyle(): string;
    set headerTextStyle(v: string);
    /**
     * Gets or sets the font to use for header nodes
    */
    get headerDisplayMode(): TreemapHeaderDisplayMode;
    set headerDisplayMode(v: TreemapHeaderDisplayMode);
    static ngAcceptInputType_headerDisplayMode: TreemapHeaderDisplayMode | string;
    /**
     * Gets or sets the left margin to use for the header.
    */
    get headerLabelLeftMargin(): number;
    set headerLabelLeftMargin(v: number);
    static ngAcceptInputType_headerLabelLeftMargin: number | string;
    /**
     * Gets or sets the top margin to use for the header.
    */
    get headerLabelTopMargin(): number;
    set headerLabelTopMargin(v: number);
    static ngAcceptInputType_headerLabelTopMargin: number | string;
    /**
     * Gets or sets the right margin to use for the header.
    */
    get headerLabelRightMargin(): number;
    set headerLabelRightMargin(v: number);
    static ngAcceptInputType_headerLabelRightMargin: number | string;
    /**
     * Gets or sets the bottom margin to use for the header.
    */
    get headerLabelBottomMargin(): number;
    set headerLabelBottomMargin(v: number);
    static ngAcceptInputType_headerLabelBottomMargin: number | string;
    /**
     * Gets or sets the left margin to use for the overlay header.
    */
    get overlayHeaderLabelLeftMargin(): number;
    set overlayHeaderLabelLeftMargin(v: number);
    static ngAcceptInputType_overlayHeaderLabelLeftMargin: number | string;
    /**
     * Gets or sets the top margin to use for the overlay header.
    */
    get overlayHeaderLabelTopMargin(): number;
    set overlayHeaderLabelTopMargin(v: number);
    static ngAcceptInputType_overlayHeaderLabelTopMargin: number | string;
    /**
     * Gets or sets the right margin to use for the overlay header.
    */
    get overlayHeaderLabelRightMargin(): number;
    set overlayHeaderLabelRightMargin(v: number);
    static ngAcceptInputType_overlayHeaderLabelRightMargin: number | string;
    /**
     * Gets or sets the bottom margin to use for the overlay header.
    */
    get overlayHeaderLabelBottomMargin(): number;
    set overlayHeaderLabelBottomMargin(v: number);
    static ngAcceptInputType_overlayHeaderLabelBottomMargin: number | string;
    /**
     * Gets or sets the left margin to use for the labels.
    */
    get labelLeftMargin(): number;
    set labelLeftMargin(v: number);
    static ngAcceptInputType_labelLeftMargin: number | string;
    /**
     * Gets or sets the top margin to use for the labels.
    */
    get labelTopMargin(): number;
    set labelTopMargin(v: number);
    static ngAcceptInputType_labelTopMargin: number | string;
    /**
     * Gets or sets the right margin to use for the labels.
    */
    get labelRightMargin(): number;
    set labelRightMargin(v: number);
    static ngAcceptInputType_labelRightMargin: number | string;
    /**
     * Gets or sets the bottom margin to use for the labels.
    */
    get labelBottomMargin(): number;
    set labelBottomMargin(v: number);
    static ngAcceptInputType_labelBottomMargin: number | string;
    /**
     * Gets or sets the left margin to use for the parent nodes.
    */
    get parentNodeLeftMargin(): number;
    set parentNodeLeftMargin(v: number);
    static ngAcceptInputType_parentNodeLeftMargin: number | string;
    /**
     * Gets or sets the top margin to use for the parent nodes.
    */
    get parentNodeTopMargin(): number;
    set parentNodeTopMargin(v: number);
    static ngAcceptInputType_parentNodeTopMargin: number | string;
    /**
     * Gets or sets the right margin to use for the parent nodes.
    */
    get parentNodeRightMargin(): number;
    set parentNodeRightMargin(v: number);
    static ngAcceptInputType_parentNodeRightMargin: number | string;
    /**
     * Gets or sets the bottom margin to use for the parent nodes.
    */
    get parentNodeBottomMargin(): number;
    set parentNodeBottomMargin(v: number);
    static ngAcceptInputType_parentNodeBottomMargin: number | string;
    /**
     * Gets or sets the left padding to use for the parent nodes.
    */
    get parentNodeLeftPadding(): number;
    set parentNodeLeftPadding(v: number);
    static ngAcceptInputType_parentNodeLeftPadding: number | string;
    /**
     * Gets or sets the top padding to use for the parent nodes.
    */
    get parentNodeTopPadding(): number;
    set parentNodeTopPadding(v: number);
    static ngAcceptInputType_parentNodeTopPadding: number | string;
    /**
     * Gets or sets the right padding to use for the parent nodes.
    */
    get parentNodeRightPadding(): number;
    set parentNodeRightPadding(v: number);
    static ngAcceptInputType_parentNodeRightPadding: number | string;
    /**
     * Gets or sets the bottom padding to use for the parent nodes.
    */
    get parentNodeBottomPadding(): number;
    set parentNodeBottomPadding(v: number);
    static ngAcceptInputType_parentNodeBottomPadding: number | string;
    /**
     * Gets or sets the horizontal alignment to use for the node labels.
    */
    get labelHorizontalAlignment(): HorizontalAlignment;
    set labelHorizontalAlignment(v: HorizontalAlignment);
    static ngAcceptInputType_labelHorizontalAlignment: HorizontalAlignment | string;
    /**
     * Gets or sets the vertical alignment to use for the node labels.
    */
    get labelVerticalAlignment(): VerticalAlignment;
    set labelVerticalAlignment(v: VerticalAlignment);
    static ngAcceptInputType_labelVerticalAlignment: VerticalAlignment | string;
    /**
     * Gets or sets the height to use for the header.
    */
    get headerHeight(): number;
    set headerHeight(v: number);
    static ngAcceptInputType_headerHeight: number | string;
    /**
     * Gets or sets the outline to use for the nodes.
    */
    get outline(): string;
    set outline(v: string);
    /**
     * Gets or sets the stroke thickness to use for the node outline.
    */
    get strokeThickness(): number;
    set strokeThickness(v: number);
    static ngAcceptInputType_strokeThickness: number | string;
    /**
     * Gets or sets the orientation to use for the stripped and slice and dice layout types.
    */
    get layoutOrientation(): TreemapOrientation;
    set layoutOrientation(v: TreemapOrientation);
    static ngAcceptInputType_layoutOrientation: TreemapOrientation | string;
    /**
     * Gets or sets the type of layout to use for the nodes.
    */
    get layoutType(): TreemapLayoutType;
    set layoutType(v: TreemapLayoutType);
    static ngAcceptInputType_layoutType: TreemapLayoutType | string;
    /**
     * Gets or sets the minimum size (width or height) to display a node.
    */
    get minimumDisplaySize(): number;
    set minimumDisplaySize(v: number);
    static ngAcceptInputType_minimumDisplaySize: number | string;
    /**
     * Gets or sets the number of milliseconds over which changes to the gauge should be animated.
    */
    get transitionDuration(): number;
    set transitionDuration(v: number);
    static ngAcceptInputType_transitionDuration: number | string;
    /**
     * Gets or sets the scaling value used to affect the pixel density of the control.
     * A higher scaling ratio will produce crisper visuals at the expense of memory.  Lower values will cause the control
     * to appear blurry.
    */
    get pixelScalingRatio(): number;
    set pixelScalingRatio(v: number);
    static ngAcceptInputType_pixelScalingRatio: number | string;
    get actualPixelScalingRatio(): number;
    set actualPixelScalingRatio(v: number);
    static ngAcceptInputType_actualPixelScalingRatio: number | string;
    /**
     * Gets or sets the scaling value used to affect the pixel density of the control while it is animating.
     * A higher scaling ratio will produce crisper visuals at the expense of memory.  Lower values will cause the control
     * to appear blurry.
    */
    get interactionPixelScalingRatio(): number;
    set interactionPixelScalingRatio(v: number);
    static ngAcceptInputType_interactionPixelScalingRatio: number | string;
    /**
     * Gets or sets the resolved scaling value used to affect the pixel density of the control while it is animating.
     * A higher scaling ratio will produce crisper visuals at the expense of memory.  Lower values will cause the control
     * to appear blurry.
    */
    get actualInteractionPixelScalingRatio(): number;
    set actualInteractionPixelScalingRatio(v: number);
    static ngAcceptInputType_actualInteractionPixelScalingRatio: number | string;
    get animating(): boolean;
    static ngAcceptInputType_animating: boolean | string;
    /**
     * Gets or sets the item to drill to in the treemap.
    */
    get focusItem(): any;
    set focusItem(v: any);
    findByName(name: string): any;
    protected __p: string;
    protected _hasUserValues: Set<string>;
    protected get hasUserValues(): Set<string>;
    protected __m(propertyName: string): void;
    protected _stylingContainer: any;
    protected _stylingParent: any;
    protected _inStyling: boolean;
    protected _styling(container: any, component: any, parent?: any): void;
    notifySizeChanged(): void;
    /**
     * Returns visuals as a serialized string.
    
    */
    exportSerializedVisualData(): string;
    markDirty(): void;
    onDetachedFromUI(): void;
    onAttachedToUI(): void;
    flush(): void;
    notifySetItem(source_: any, index: number, oldItem: any, newItem: any): void;
    /**
     * Manually notifies the treemap's data source that the data it has bound to has been cleared and needs to be re-examined.
     * This should not be called if the data that the pie chart is bound to is already observable.
    
    * @param source_  * The data source.
    */
    notifyClearItems(source_: any): void;
    notifyInsertItem(source_: any, index: number, newItem: any): void;
    notifyRemoveItem(source_: any, index: number, oldItem: any): void;
    simulateHover(point: IgPoint): void;
    private _nodeStyling;
    /**
     * Fired when a node is being styled. Provides an opportunity to customize node styling.
    */
    get nodeStyling(): EventEmitter<{
        sender: any;
        args: IgxTreemapNodeStylingEventArgs;
    }>;
    private _nodePointerOver;
    /**
     * Fired with the pointer is moving over a node.
    */
    get nodePointerOver(): EventEmitter<{
        sender: any;
        args: IgxTreemapNodePointerEventArgs;
    }>;
    private _nodePointerEnter;
    /**
     * Fired when the pointer enters a node.
    */
    get nodePointerEnter(): EventEmitter<{
        sender: any;
        args: IgxTreemapNodePointerEventArgs;
    }>;
    private _nodePointerLeave;
    /**
     * Fired when the pointer leaved a node.
    */
    get nodePointerLeave(): EventEmitter<{
        sender: any;
        args: IgxTreemapNodePointerEventArgs;
    }>;
    private _nodePointerPressed;
    /**
     * Fired when the pointer is pressed on a node.
    */
    get nodePointerPressed(): EventEmitter<{
        sender: any;
        args: IgxTreemapNodePointerEventArgs;
    }>;
    private _nodePointerReleased;
    /**
     * Fired when the pointer is released on a node.
    */
    get nodePointerReleased(): EventEmitter<{
        sender: any;
        args: IgxTreemapNodePointerEventArgs;
    }>;
    protected _zoneRunner: (act: () => void) => void;
    protected _runInZone(act: () => void): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<IgxTreemapComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<IgxTreemapComponent, "igx-treemap", never, { "height": "height"; "width": "width"; "valueMemberPath": "valueMemberPath"; "rootTitle": "rootTitle"; "breadcrumbSequence": "breadcrumbSequence"; "parentIdMemberPath": "parentIdMemberPath"; "labelMemberPath": "labelMemberPath"; "customValueMemberPath": "customValueMemberPath"; "idMemberPath": "idMemberPath"; "dataSource": "dataSource"; "fillBrushes": "fillBrushes"; "fillScaleMode": "fillScaleMode"; "isFillScaleLogarithmic": "isFillScaleLogarithmic"; "fillScaleLogarithmBase": "fillScaleLogarithmBase"; "fillScaleMinimumValue": "fillScaleMinimumValue"; "fillScaleMaximumValue": "fillScaleMaximumValue"; "labelVerticalFitMode": "labelVerticalFitMode"; "labelHorizontalFitMode": "labelHorizontalFitMode"; "overlayHeaderHoverBackground": "overlayHeaderHoverBackground"; "headerHoverBackground": "headerHoverBackground"; "headerBackground": "headerBackground"; "overlayHeaderBackground": "overlayHeaderBackground"; "headerTextColor": "headerTextColor"; "headerDarkTextColor": "headerDarkTextColor"; "textColor": "textColor"; "darkTextColor": "darkTextColor"; "headerHoverTextColor": "headerHoverTextColor"; "headerHoverDarkTextColor": "headerHoverDarkTextColor"; "textStyle": "textStyle"; "headerTextStyle": "headerTextStyle"; "headerDisplayMode": "headerDisplayMode"; "headerLabelLeftMargin": "headerLabelLeftMargin"; "headerLabelTopMargin": "headerLabelTopMargin"; "headerLabelRightMargin": "headerLabelRightMargin"; "headerLabelBottomMargin": "headerLabelBottomMargin"; "overlayHeaderLabelLeftMargin": "overlayHeaderLabelLeftMargin"; "overlayHeaderLabelTopMargin": "overlayHeaderLabelTopMargin"; "overlayHeaderLabelRightMargin": "overlayHeaderLabelRightMargin"; "overlayHeaderLabelBottomMargin": "overlayHeaderLabelBottomMargin"; "labelLeftMargin": "labelLeftMargin"; "labelTopMargin": "labelTopMargin"; "labelRightMargin": "labelRightMargin"; "labelBottomMargin": "labelBottomMargin"; "parentNodeLeftMargin": "parentNodeLeftMargin"; "parentNodeTopMargin": "parentNodeTopMargin"; "parentNodeRightMargin": "parentNodeRightMargin"; "parentNodeBottomMargin": "parentNodeBottomMargin"; "parentNodeLeftPadding": "parentNodeLeftPadding"; "parentNodeTopPadding": "parentNodeTopPadding"; "parentNodeRightPadding": "parentNodeRightPadding"; "parentNodeBottomPadding": "parentNodeBottomPadding"; "labelHorizontalAlignment": "labelHorizontalAlignment"; "labelVerticalAlignment": "labelVerticalAlignment"; "headerHeight": "headerHeight"; "outline": "outline"; "strokeThickness": "strokeThickness"; "layoutOrientation": "layoutOrientation"; "layoutType": "layoutType"; "minimumDisplaySize": "minimumDisplaySize"; "transitionDuration": "transitionDuration"; "pixelScalingRatio": "pixelScalingRatio"; "actualPixelScalingRatio": "actualPixelScalingRatio"; "interactionPixelScalingRatio": "interactionPixelScalingRatio"; "actualInteractionPixelScalingRatio": "actualInteractionPixelScalingRatio"; "focusItem": "focusItem"; }, { "nodeStyling": "nodeStyling"; "nodePointerOver": "nodePointerOver"; "nodePointerEnter": "nodePointerEnter"; "nodePointerLeave": "nodePointerLeave"; "nodePointerPressed": "nodePointerPressed"; "nodePointerReleased": "nodePointerReleased"; }, ["contentStyleMappings"], never>;
}
