import { IgPoint } from "igniteui-webcomponents-core";
import { Treemap } from "./Treemap";
import { IgcTreemapNodeStyleMappingComponent } from './igc-treemap-node-style-mapping-component';
import { IgcTreemapNodeStyleMappingCollection } from './igc-treemap-node-style-mapping-collection';
import { TreemapFillScaleMode } from "./TreemapFillScaleMode";
import { IgcTreemapNodeStylingEventArgs } from "./igc-treemap-node-styling-event-args";
import { TreemapOrientation } from './TreemapOrientation';
import { TreemapLayoutType } from './TreemapLayoutType';
import { IgcTreemapNodePointerEventArgs } from './igc-treemap-node-pointer-event-args';
import { TreemapHeaderDisplayMode } from './TreemapHeaderDisplayMode';
import { HorizontalAlignment } from "igniteui-webcomponents-core";
import { VerticalAlignment } from "igniteui-webcomponents-core";
import { TreemapLabelHorizontalFitMode } from './TreemapLabelHorizontalFitMode';
import { TreemapLabelVerticalFitMode } from './TreemapLabelVerticalFitMode';
import { TreemapHighlightingMode } from './TreemapHighlightingMode';
import { TreemapHighlightedValueDisplayMode } from './TreemapHighlightedValueDisplayMode';
import { IgcHTMLElement } from "igniteui-webcomponents-core";
export declare class IgcTreemapComponent extends IgcHTMLElement {
    private _height;
    private _width;
    set height(value: string);
    get height(): string;
    set width(value: string);
    get width(): string;
    private _container;
    contentStyleMappings: IgcTreemapNodeStyleMappingComponent[];
    /**
    * The style mappings actually present in the treemap. 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 style mappings from the manual style mappings collection on the styleMappings property.
    */
    actualStyleMappings: IgcTreemapNodeStyleMappingComponent[];
    private _styleMappings;
    private _styleMappingsAdapter;
    /**
     * A collection or manually added axes for the chart.
    */
    get styleMappings(): IgcTreemapNodeStyleMappingCollection;
    private _renderer;
    constructor();
    updateStyle(): void;
    destroy(): void;
    private updateContentStyleMappings;
    private _wrapper;
    protected createImplementation(): Treemap;
    private _treeMap;
    private _disconnected;
    disconnectedCallback(): void;
    connectedCallback(): void;
    afterContentInit(): void;
    protected _implementation: any;
    /**
     * @hidden
     */
    get i(): Treemap; /**
                                 * @hidden
                                 */
    static _createFromInternal(internal: any): IgcTreemapComponent;
    private _settingAttributes;
    protected _attached: boolean;
    private _queuedSetAttributes;
    protected _enqueueSetAttribute(attrName: string, attrValue: string): void;
    protected _flushQueuedAttributes(): void;
    protected _a(attrName: string, attrValue: any): void;
    private static _observedAttributesIgcTreemapComponent;
    static get observedAttributes(): string[];
    private _updatingFromAttribute;
    attributeChangedCallback(name: string, oldValue: string, newValue: string): void;
    static htmlTagName: string;
    protected static _isElementRegistered: boolean;
    static register(): void;
    /**
 * 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 the data to highlight.
    */
    get highlightedDataSource(): any[];
    set highlightedDataSource(v: any[]);
    /**
     * Gets or sets the highlighted value mapping property.
    */
    get highlightedValueMemberPath(): string;
    set highlightedValueMemberPath(v: string);
    /**
     * Gets or sets the opacity applied to the node underneath the highlighted value.
    */
    get highlightedValueOpacity(): number;
    set highlightedValueOpacity(v: number);
    /**
     * Gets or sets the display mode for highlighted values.
    */
    get highlightedValuesDisplayMode(): TreemapHighlightedValueDisplayMode;
    set highlightedValuesDisplayMode(v: TreemapHighlightedValueDisplayMode);
    /**
     * Gets or sets brushes to use for the fill scale.
    */
    get fillBrushes(): string[];
    set fillBrushes(v: string[]);
    /**
     * Gets or sets mode to use for the fill scale.
    */
    get fillScaleMode(): TreemapFillScaleMode;
    set fillScaleMode(v: TreemapFillScaleMode);
    /**
     * Gets or sets whether the fill scale is logarithmic.
    */
    get isFillScaleLogarithmic(): boolean;
    set isFillScaleLogarithmic(v: boolean);
    /**
     * Gets or sets the logarithm base to use if the fill scale is logarithmic.
    */
    get fillScaleLogarithmBase(): number;
    set fillScaleLogarithmBase(v: number);
    /**
     * Gets or sets the minimum value to use for the fill scale.
    */
    get fillScaleMinimumValue(): number;
    set fillScaleMinimumValue(v: number);
    /**
     * Gets or sets the maximum value to use for the fill scale.
    */
    get fillScaleMaximumValue(): number;
    set fillScaleMaximumValue(v: number);
    /**
     * Gets or sets the vertical fit mode to use for the node labels.
    */
    get labelVerticalFitMode(): TreemapLabelVerticalFitMode;
    set labelVerticalFitMode(v: TreemapLabelVerticalFitMode);
    /**
     * Gets or sets the horizontal fit mode to use for the node labels.
    */
    get labelHorizontalFitMode(): TreemapLabelHorizontalFitMode;
    set labelHorizontalFitMode(v: TreemapLabelHorizontalFitMode);
    /**
     * 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);
    /**
     * Gets or sets the left margin to use for the header.
    */
    get headerLabelLeftMargin(): number;
    set headerLabelLeftMargin(v: number);
    /**
     * Gets or sets the top margin to use for the header.
    */
    get headerLabelTopMargin(): number;
    set headerLabelTopMargin(v: number);
    /**
     * Gets or sets the right margin to use for the header.
    */
    get headerLabelRightMargin(): number;
    set headerLabelRightMargin(v: number);
    /**
     * Gets or sets the bottom margin to use for the header.
    */
    get headerLabelBottomMargin(): number;
    set headerLabelBottomMargin(v: number);
    /**
     * Gets or sets the left margin to use for the overlay header.
    */
    get overlayHeaderLabelLeftMargin(): number;
    set overlayHeaderLabelLeftMargin(v: number);
    /**
     * Gets or sets the top margin to use for the overlay header.
    */
    get overlayHeaderLabelTopMargin(): number;
    set overlayHeaderLabelTopMargin(v: number);
    /**
     * Gets or sets the right margin to use for the overlay header.
    */
    get overlayHeaderLabelRightMargin(): number;
    set overlayHeaderLabelRightMargin(v: number);
    /**
     * Gets or sets the bottom margin to use for the overlay header.
    */
    get overlayHeaderLabelBottomMargin(): number;
    set overlayHeaderLabelBottomMargin(v: number);
    /**
     * Gets or sets the left margin to use for the labels.
    */
    get labelLeftMargin(): number;
    set labelLeftMargin(v: number);
    /**
     * Gets or sets the top margin to use for the labels.
    */
    get labelTopMargin(): number;
    set labelTopMargin(v: number);
    /**
     * Gets or sets the right margin to use for the labels.
    */
    get labelRightMargin(): number;
    set labelRightMargin(v: number);
    /**
     * Gets or sets the bottom margin to use for the labels.
    */
    get labelBottomMargin(): number;
    set labelBottomMargin(v: number);
    /**
     * Gets or sets the left margin to use for the parent nodes.
    */
    get parentNodeLeftMargin(): number;
    set parentNodeLeftMargin(v: number);
    /**
     * Gets or sets the top margin to use for the parent nodes.
    */
    get parentNodeTopMargin(): number;
    set parentNodeTopMargin(v: number);
    /**
     * Gets or sets the right margin to use for the parent nodes.
    */
    get parentNodeRightMargin(): number;
    set parentNodeRightMargin(v: number);
    /**
     * Gets or sets the bottom margin to use for the parent nodes.
    */
    get parentNodeBottomMargin(): number;
    set parentNodeBottomMargin(v: number);
    /**
     * Gets or sets the left padding to use for the parent nodes.
    */
    get parentNodeLeftPadding(): number;
    set parentNodeLeftPadding(v: number);
    /**
     * Gets or sets the top padding to use for the parent nodes.
    */
    get parentNodeTopPadding(): number;
    set parentNodeTopPadding(v: number);
    /**
     * Gets or sets the right padding to use for the parent nodes.
    */
    get parentNodeRightPadding(): number;
    set parentNodeRightPadding(v: number);
    /**
     * Gets or sets the bottom padding to use for the parent nodes.
    */
    get parentNodeBottomPadding(): number;
    set parentNodeBottomPadding(v: number);
    /**
     * Gets or sets the horizontal alignment to use for the node labels.
    */
    get labelHorizontalAlignment(): HorizontalAlignment;
    set labelHorizontalAlignment(v: HorizontalAlignment);
    /**
     * Gets or sets the vertical alignment to use for the node labels.
    */
    get labelVerticalAlignment(): VerticalAlignment;
    set labelVerticalAlignment(v: VerticalAlignment);
    /**
     * Gets or sets the height to use for the header.
    */
    get headerHeight(): number;
    set headerHeight(v: number);
    /**
     * 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);
    /**
     * Gets or sets the opacity to use for the nodes.
    */
    get nodeOpacity(): number;
    set nodeOpacity(v: number);
    /**
     * Gets or sets the orientation to use for the stripped and slice and dice layout types.
    */
    get layoutOrientation(): TreemapOrientation;
    set layoutOrientation(v: TreemapOrientation);
    /**
     * Gets or sets the type of layout to use for the nodes.
    */
    get layoutType(): TreemapLayoutType;
    set layoutType(v: TreemapLayoutType);
    /**
     * Gets or sets the minimum size (width or height) to display a node.
    */
    get minimumDisplaySize(): number;
    set minimumDisplaySize(v: number);
    /**
     * Gets or sets the number of milliseconds over which changes to the gauge should be animated.
    */
    get transitionDuration(): number;
    set transitionDuration(v: number);
    /**
     * 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);
    get actualPixelScalingRatio(): number;
    set actualPixelScalingRatio(v: number);
    /**
     * 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);
    /**
     * 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);
    /**
     * Gets or sets the number of milliseconds over which the highlighting effect will render.
    */
    get highlightingTransitionDuration(): number;
    set highlightingTransitionDuration(v: number);
    /**
     * Gets or sets the highlighting mode to use.
    */
    get highlightingMode(): TreemapHighlightingMode;
    set highlightingMode(v: TreemapHighlightingMode);
    /**
     * Gets the actual highlighting mode used.
    */
    get actualHighlightingMode(): TreemapHighlightingMode;
    set actualHighlightingMode(v: TreemapHighlightingMode);
    /**
     * Gets or sets the opacity to use for nodes that are not highlighted when HighlightingMode is set to FadeOthers.
    */
    get highlightingFadeOpacity(): number;
    set highlightingFadeOpacity(v: number);
    get animating(): boolean;
    /**
     * 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;
    private _nodeStyling_wrapped;
    /**
     * Fired when a node is being styled. Provides an opportunity to customize node styling.
    */
    get nodeStyling(): (s: IgcTreemapComponent, e: IgcTreemapNodeStylingEventArgs) => void;
    set nodeStyling(ev: (s: IgcTreemapComponent, e: IgcTreemapNodeStylingEventArgs) => void);
    private _nodeRenderStyling;
    private _nodeRenderStyling_wrapped;
    /**
     * Fired before a node is rendered for last minute style changes.
    */
    get nodeRenderStyling(): (s: IgcTreemapComponent, e: IgcTreemapNodeStylingEventArgs) => void;
    set nodeRenderStyling(ev: (s: IgcTreemapComponent, e: IgcTreemapNodeStylingEventArgs) => void);
    private _nodePointerOver;
    private _nodePointerOver_wrapped;
    /**
     * Fired with the pointer is moving over a node.
    */
    get nodePointerOver(): (s: IgcTreemapComponent, e: IgcTreemapNodePointerEventArgs) => void;
    set nodePointerOver(ev: (s: IgcTreemapComponent, e: IgcTreemapNodePointerEventArgs) => void);
    private _nodePointerEnter;
    private _nodePointerEnter_wrapped;
    /**
     * Fired when the pointer enters a node.
    */
    get nodePointerEnter(): (s: IgcTreemapComponent, e: IgcTreemapNodePointerEventArgs) => void;
    set nodePointerEnter(ev: (s: IgcTreemapComponent, e: IgcTreemapNodePointerEventArgs) => void);
    private _nodePointerLeave;
    private _nodePointerLeave_wrapped;
    /**
     * Fired when the pointer leaved a node.
    */
    get nodePointerLeave(): (s: IgcTreemapComponent, e: IgcTreemapNodePointerEventArgs) => void;
    set nodePointerLeave(ev: (s: IgcTreemapComponent, e: IgcTreemapNodePointerEventArgs) => void);
    private _nodePointerPressed;
    private _nodePointerPressed_wrapped;
    /**
     * Fired when the pointer is pressed on a node.
    */
    get nodePointerPressed(): (s: IgcTreemapComponent, e: IgcTreemapNodePointerEventArgs) => void;
    set nodePointerPressed(ev: (s: IgcTreemapComponent, e: IgcTreemapNodePointerEventArgs) => void);
    private _nodePointerReleased;
    private _nodePointerReleased_wrapped;
    /**
     * Fired when the pointer is released on a node.
    */
    get nodePointerReleased(): (s: IgcTreemapComponent, e: IgcTreemapNodePointerEventArgs) => void;
    set nodePointerReleased(ev: (s: IgcTreemapComponent, e: IgcTreemapNodePointerEventArgs) => void);
}
