UNPKG

devextreme-react

Version:

DevExtreme React UI and Visualization Components

910 lines (908 loc) • 33.4 kB
/*! * devextreme-react * Version: 24.2.6 * Build date: Mon Mar 17 2025 * * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED * * This software may be modified and distributed under the terms * of the MIT license. See the LICENSE file in the root of the project for details. * * https://github.com/DevExpress/devextreme-react */ import * as React from "react"; import { Ref, ReactElement } from "react"; import dxFunnel, { Properties } from "devextreme/viz/funnel"; import { IHtmlOptions, NestedComponentMeta } from "./core/component"; import type { DisposingEvent, DrawnEvent, ExportedEvent, ExportingEvent, FileSavingEvent, IncidentOccurredEvent, InitializedEvent, ItemClickEvent, LegendClickEvent, dxFunnelItem, FunnelLegendItem } from "devextreme/viz/funnel"; import type { DashStyle, Font as ChartsFont, TextOverflow, WordWrap, HatchDirection, LabelPosition } from "devextreme/common/charts"; import type { ExportFormat, Format as CommonFormat, HorizontalAlignment, VerticalEdge, HorizontalEdge, Position, template, Orientation } from "devextreme/common"; import type { Format as LocalizationFormat } from "devextreme/common/core/localization"; type ReplaceFieldTypes<TSource, TReplacement> = { [P in keyof TSource]: P extends keyof TReplacement ? TReplacement[P] : TSource[P]; }; type IFunnelOptionsNarrowedEvents = { onDisposing?: ((e: DisposingEvent) => void); onDrawn?: ((e: DrawnEvent) => void); onExported?: ((e: ExportedEvent) => void); onExporting?: ((e: ExportingEvent) => void); onFileSaving?: ((e: FileSavingEvent) => void); onIncidentOccurred?: ((e: IncidentOccurredEvent) => void); onInitialized?: ((e: InitializedEvent) => void); onItemClick?: ((e: ItemClickEvent) => void); onLegendClick?: ((e: LegendClickEvent) => void); }; type IFunnelOptions = React.PropsWithChildren<ReplaceFieldTypes<Properties, IFunnelOptionsNarrowedEvents> & IHtmlOptions & { defaultLoadingIndicator?: Record<string, any>; onLoadingIndicatorChange?: (value: Record<string, any>) => void; }>; interface FunnelRef { instance: () => dxFunnel; } declare const Funnel: (props: React.PropsWithChildren<IFunnelOptions> & { ref?: Ref<FunnelRef>; }) => ReactElement | null; type IAdaptiveLayoutProps = React.PropsWithChildren<{ height?: number; keepLabels?: boolean; width?: number; }>; declare const AdaptiveLayout: ((props: IAdaptiveLayoutProps) => React.FunctionComponentElement<React.PropsWithChildren<{ height?: number | undefined; keepLabels?: boolean | undefined; width?: number | undefined; } & { children?: React.ReactNode; } & { elementDescriptor: import("./core/configuration/react/element").IElementDescriptor; }>>) & NestedComponentMeta; type IBorderProps = React.PropsWithChildren<{ color?: string | undefined; visible?: boolean | undefined; width?: number | undefined; dashStyle?: DashStyle; cornerRadius?: number; opacity?: number | undefined; }>; declare const Border: ((props: IBorderProps) => React.FunctionComponentElement<React.PropsWithChildren<{ color?: string | undefined; visible?: boolean | undefined; width?: number | undefined; dashStyle?: DashStyle | undefined; cornerRadius?: number | undefined; opacity?: number | undefined; } & { children?: React.ReactNode; } & { elementDescriptor: import("./core/configuration/react/element").IElementDescriptor; }>>) & NestedComponentMeta; type IConnectorProps = React.PropsWithChildren<{ color?: string | undefined; opacity?: number; visible?: boolean; width?: number; }>; declare const Connector: ((props: IConnectorProps) => React.FunctionComponentElement<React.PropsWithChildren<{ color?: string | undefined; opacity?: number | undefined; visible?: boolean | undefined; width?: number | undefined; } & { children?: React.ReactNode; } & { elementDescriptor: import("./core/configuration/react/element").IElementDescriptor; }>>) & NestedComponentMeta; type IExportProps = React.PropsWithChildren<{ backgroundColor?: string; enabled?: boolean; fileName?: string; formats?: Array<ExportFormat>; margin?: number; printingEnabled?: boolean; svgToCanvas?: ((svg: any, canvas: any) => any) | undefined; }>; declare const Export: ((props: IExportProps) => React.FunctionComponentElement<React.PropsWithChildren<{ backgroundColor?: string | undefined; enabled?: boolean | undefined; fileName?: string | undefined; formats?: ExportFormat[] | undefined; margin?: number | undefined; printingEnabled?: boolean | undefined; svgToCanvas?: ((svg: any, canvas: any) => any) | undefined; } & { children?: React.ReactNode; } & { elementDescriptor: import("./core/configuration/react/element").IElementDescriptor; }>>) & NestedComponentMeta; type IFontProps = React.PropsWithChildren<{ color?: string; family?: string; opacity?: number; size?: number | string; weight?: number; }>; declare const Font: ((props: IFontProps) => React.FunctionComponentElement<React.PropsWithChildren<{ color?: string | undefined; family?: string | undefined; opacity?: number | undefined; size?: string | number | undefined; weight?: number | undefined; } & { children?: React.ReactNode; } & { elementDescriptor: import("./core/configuration/react/element").IElementDescriptor; }>>) & NestedComponentMeta; type IFormatProps = React.PropsWithChildren<{ currency?: string; formatter?: ((value: number | Date) => string); parser?: ((value: string) => number | Date); precision?: number; type?: CommonFormat | string; useCurrencyAccountingStyle?: boolean; }>; declare const Format: ((props: IFormatProps) => React.FunctionComponentElement<React.PropsWithChildren<{ currency?: string | undefined; formatter?: ((value: number | Date) => string) | undefined; parser?: ((value: string) => number | Date) | undefined; precision?: number | undefined; type?: string | undefined; useCurrencyAccountingStyle?: boolean | undefined; } & { children?: React.ReactNode; } & { elementDescriptor: import("./core/configuration/react/element").IElementDescriptor; }>>) & NestedComponentMeta; type IFunnelTitleProps = React.PropsWithChildren<{ font?: ChartsFont; horizontalAlignment?: HorizontalAlignment; margin?: number | Record<string, any> | { bottom?: number; left?: number; right?: number; top?: number; }; placeholderSize?: number | undefined; subtitle?: Record<string, any> | string | { font?: ChartsFont; offset?: number; text?: string; textOverflow?: TextOverflow; wordWrap?: WordWrap; }; text?: string; textOverflow?: TextOverflow; verticalAlignment?: VerticalEdge; wordWrap?: WordWrap; }>; declare const FunnelTitle: ((props: IFunnelTitleProps) => React.FunctionComponentElement<React.PropsWithChildren<{ font?: ChartsFont | undefined; horizontalAlignment?: HorizontalAlignment | undefined; margin?: number | Record<string, any> | { bottom?: number | undefined; left?: number | undefined; right?: number | undefined; top?: number | undefined; } | undefined; placeholderSize?: number | undefined; subtitle?: string | Record<string, any> | { font?: ChartsFont | undefined; offset?: number | undefined; text?: string | undefined; textOverflow?: TextOverflow | undefined; wordWrap?: WordWrap | undefined; } | undefined; text?: string | undefined; textOverflow?: TextOverflow | undefined; verticalAlignment?: VerticalEdge | undefined; wordWrap?: WordWrap | undefined; } & { children?: React.ReactNode; } & { elementDescriptor: import("./core/configuration/react/element").IElementDescriptor; }>>) & NestedComponentMeta; type IFunnelTitleSubtitleProps = React.PropsWithChildren<{ font?: ChartsFont; offset?: number; text?: string; textOverflow?: TextOverflow; wordWrap?: WordWrap; }>; declare const FunnelTitleSubtitle: ((props: IFunnelTitleSubtitleProps) => React.FunctionComponentElement<React.PropsWithChildren<{ font?: ChartsFont | undefined; offset?: number | undefined; text?: string | undefined; textOverflow?: TextOverflow | undefined; wordWrap?: WordWrap | undefined; } & { children?: React.ReactNode; } & { elementDescriptor: import("./core/configuration/react/element").IElementDescriptor; }>>) & NestedComponentMeta; type IHatchingProps = React.PropsWithChildren<{ direction?: HatchDirection; opacity?: number; step?: number; width?: number; }>; declare const Hatching: ((props: IHatchingProps) => React.FunctionComponentElement<React.PropsWithChildren<{ direction?: HatchDirection | undefined; opacity?: number | undefined; step?: number | undefined; width?: number | undefined; } & { children?: React.ReactNode; } & { elementDescriptor: import("./core/configuration/react/element").IElementDescriptor; }>>) & NestedComponentMeta; type IHoverStyleProps = React.PropsWithChildren<{ border?: Record<string, any> | { color?: string | undefined; visible?: boolean | undefined; width?: number | undefined; }; hatching?: Record<string, any> | { direction?: HatchDirection; opacity?: number; step?: number; width?: number; }; }>; declare const HoverStyle: ((props: IHoverStyleProps) => React.FunctionComponentElement<React.PropsWithChildren<{ border?: Record<string, any> | { color?: string | undefined; visible?: boolean | undefined; width?: number | undefined; } | undefined; hatching?: Record<string, any> | { direction?: HatchDirection | undefined; opacity?: number | undefined; step?: number | undefined; width?: number | undefined; } | undefined; } & { children?: React.ReactNode; } & { elementDescriptor: import("./core/configuration/react/element").IElementDescriptor; }>>) & NestedComponentMeta; type IItemProps = React.PropsWithChildren<{ border?: Record<string, any> | { color?: string | undefined; visible?: boolean | undefined; width?: number | undefined; }; hoverStyle?: Record<string, any> | { border?: Record<string, any> | { color?: string | undefined; visible?: boolean | undefined; width?: number | undefined; }; hatching?: Record<string, any> | { direction?: HatchDirection; opacity?: number; step?: number; width?: number; }; }; selectionStyle?: Record<string, any> | { border?: Record<string, any> | { color?: string | undefined; visible?: boolean | undefined; width?: number | undefined; }; hatching?: Record<string, any> | { direction?: HatchDirection; opacity?: number; step?: number; width?: number; }; }; }>; declare const Item: ((props: IItemProps) => React.FunctionComponentElement<React.PropsWithChildren<{ border?: Record<string, any> | { color?: string | undefined; visible?: boolean | undefined; width?: number | undefined; } | undefined; hoverStyle?: Record<string, any> | { border?: Record<string, any> | { color?: string | undefined; visible?: boolean | undefined; width?: number | undefined; } | undefined; hatching?: Record<string, any> | { direction?: HatchDirection | undefined; opacity?: number | undefined; step?: number | undefined; width?: number | undefined; } | undefined; } | undefined; selectionStyle?: Record<string, any> | { border?: Record<string, any> | { color?: string | undefined; visible?: boolean | undefined; width?: number | undefined; } | undefined; hatching?: Record<string, any> | { direction?: HatchDirection | undefined; opacity?: number | undefined; step?: number | undefined; width?: number | undefined; } | undefined; } | undefined; } & { children?: React.ReactNode; } & { elementDescriptor: import("./core/configuration/react/element").IElementDescriptor; }>>) & NestedComponentMeta; type IItemBorderProps = React.PropsWithChildren<{ color?: string | undefined; visible?: boolean | undefined; width?: number | undefined; }>; declare const ItemBorder: ((props: IItemBorderProps) => React.FunctionComponentElement<React.PropsWithChildren<{ color?: string | undefined; visible?: boolean | undefined; width?: number | undefined; } & { children?: React.ReactNode; } & { elementDescriptor: import("./core/configuration/react/element").IElementDescriptor; }>>) & NestedComponentMeta; type ILabelProps = React.PropsWithChildren<{ backgroundColor?: string; border?: Record<string, any> | { color?: string; dashStyle?: DashStyle; visible?: boolean; width?: number; }; connector?: Record<string, any> | { color?: string | undefined; opacity?: number; visible?: boolean; width?: number; }; customizeText?: ((itemInfo: { item: dxFunnelItem; percent: number; percentText: string; value: number; valueText: string; }) => string); font?: ChartsFont; format?: LocalizationFormat | undefined; horizontalAlignment?: HorizontalEdge; horizontalOffset?: number; position?: LabelPosition; showForZeroValues?: boolean; textOverflow?: TextOverflow; visible?: boolean; wordWrap?: WordWrap; }>; declare const Label: ((props: ILabelProps) => React.FunctionComponentElement<React.PropsWithChildren<{ backgroundColor?: string | undefined; border?: Record<string, any> | { color?: string | undefined; dashStyle?: DashStyle | undefined; visible?: boolean | undefined; width?: number | undefined; } | undefined; connector?: Record<string, any> | { color?: string | undefined; opacity?: number | undefined; visible?: boolean | undefined; width?: number | undefined; } | undefined; customizeText?: ((itemInfo: { item: dxFunnelItem; percent: number; percentText: string; value: number; valueText: string; }) => string) | undefined; font?: ChartsFont | undefined; format?: LocalizationFormat | undefined; horizontalAlignment?: HorizontalEdge | undefined; horizontalOffset?: number | undefined; position?: LabelPosition | undefined; showForZeroValues?: boolean | undefined; textOverflow?: TextOverflow | undefined; visible?: boolean | undefined; wordWrap?: WordWrap | undefined; } & { children?: React.ReactNode; } & { elementDescriptor: import("./core/configuration/react/element").IElementDescriptor; }>>) & NestedComponentMeta; type ILabelBorderProps = React.PropsWithChildren<{ color?: string; dashStyle?: DashStyle; visible?: boolean; width?: number; }>; declare const LabelBorder: ((props: ILabelBorderProps) => React.FunctionComponentElement<React.PropsWithChildren<{ color?: string | undefined; dashStyle?: DashStyle | undefined; visible?: boolean | undefined; width?: number | undefined; } & { children?: React.ReactNode; } & { elementDescriptor: import("./core/configuration/react/element").IElementDescriptor; }>>) & NestedComponentMeta; type ILegendProps = React.PropsWithChildren<{ backgroundColor?: string | undefined; border?: Record<string, any> | { color?: string; cornerRadius?: number; dashStyle?: DashStyle; opacity?: number | undefined; visible?: boolean; width?: number; }; columnCount?: number; columnItemSpacing?: number; customizeHint?: ((itemInfo: { item: dxFunnelItem; text: string; }) => string); customizeItems?: ((items: Array<FunnelLegendItem>) => Array<FunnelLegendItem>); customizeText?: ((itemInfo: { item: dxFunnelItem; text: string; }) => string); font?: ChartsFont; horizontalAlignment?: HorizontalAlignment; itemsAlignment?: HorizontalAlignment | undefined; itemTextPosition?: Position | undefined; margin?: number | Record<string, any> | { bottom?: number; left?: number; right?: number; top?: number; }; markerSize?: number; markerTemplate?: ((legendItem: FunnelLegendItem, element: any) => string | any) | template | undefined; orientation?: Orientation | undefined; paddingLeftRight?: number; paddingTopBottom?: number; rowCount?: number; rowItemSpacing?: number; title?: Record<string, any> | string | { font?: ChartsFont; horizontalAlignment?: HorizontalAlignment | undefined; margin?: Record<string, any> | { bottom?: number; left?: number; right?: number; top?: number; }; placeholderSize?: number | undefined; subtitle?: Record<string, any> | string | { font?: ChartsFont; offset?: number; text?: string; }; text?: string; verticalAlignment?: VerticalEdge; }; verticalAlignment?: VerticalEdge; visible?: boolean; markerRender?: (...params: any) => React.ReactNode; markerComponent?: React.ComponentType<any>; }>; declare const Legend: ((props: ILegendProps) => React.FunctionComponentElement<React.PropsWithChildren<{ backgroundColor?: string | undefined; border?: Record<string, any> | { color?: string | undefined; cornerRadius?: number | undefined; dashStyle?: DashStyle | undefined; opacity?: number | undefined; visible?: boolean | undefined; width?: number | undefined; } | undefined; columnCount?: number | undefined; columnItemSpacing?: number | undefined; customizeHint?: ((itemInfo: { item: dxFunnelItem; text: string; }) => string) | undefined; customizeItems?: ((items: Array<FunnelLegendItem>) => Array<FunnelLegendItem>) | undefined; customizeText?: ((itemInfo: { item: dxFunnelItem; text: string; }) => string) | undefined; font?: ChartsFont | undefined; horizontalAlignment?: HorizontalAlignment | undefined; itemsAlignment?: HorizontalAlignment | undefined; itemTextPosition?: Position | undefined; margin?: number | Record<string, any> | { bottom?: number | undefined; left?: number | undefined; right?: number | undefined; top?: number | undefined; } | undefined; markerSize?: number | undefined; markerTemplate?: template | ((legendItem: FunnelLegendItem, element: any) => string | any) | undefined; orientation?: Orientation | undefined; paddingLeftRight?: number | undefined; paddingTopBottom?: number | undefined; rowCount?: number | undefined; rowItemSpacing?: number | undefined; title?: string | Record<string, any> | { font?: ChartsFont | undefined; horizontalAlignment?: HorizontalAlignment | undefined; margin?: Record<string, any> | { bottom?: number | undefined; left?: number | undefined; right?: number | undefined; top?: number | undefined; } | undefined; placeholderSize?: number | undefined; subtitle?: string | Record<string, any> | { font?: ChartsFont | undefined; offset?: number | undefined; text?: string | undefined; } | undefined; text?: string | undefined; verticalAlignment?: VerticalEdge | undefined; } | undefined; verticalAlignment?: VerticalEdge | undefined; visible?: boolean | undefined; markerRender?: ((...params: any) => React.ReactNode) | undefined; markerComponent?: React.ComponentType<any> | undefined; } & { children?: React.ReactNode; } & { elementDescriptor: import("./core/configuration/react/element").IElementDescriptor; }>>) & NestedComponentMeta; type ILegendBorderProps = React.PropsWithChildren<{ color?: string; cornerRadius?: number; dashStyle?: DashStyle; opacity?: number | undefined; visible?: boolean; width?: number; }>; declare const LegendBorder: ((props: ILegendBorderProps) => React.FunctionComponentElement<React.PropsWithChildren<{ color?: string | undefined; cornerRadius?: number | undefined; dashStyle?: DashStyle | undefined; opacity?: number | undefined; visible?: boolean | undefined; width?: number | undefined; } & { children?: React.ReactNode; } & { elementDescriptor: import("./core/configuration/react/element").IElementDescriptor; }>>) & NestedComponentMeta; type ILegendTitleProps = React.PropsWithChildren<{ font?: ChartsFont; horizontalAlignment?: HorizontalAlignment | undefined; margin?: Record<string, any> | { bottom?: number; left?: number; right?: number; top?: number; }; placeholderSize?: number | undefined; subtitle?: Record<string, any> | string | { font?: ChartsFont; offset?: number; text?: string; }; text?: string; verticalAlignment?: VerticalEdge; }>; declare const LegendTitle: ((props: ILegendTitleProps) => React.FunctionComponentElement<React.PropsWithChildren<{ font?: ChartsFont | undefined; horizontalAlignment?: HorizontalAlignment | undefined; margin?: Record<string, any> | { bottom?: number | undefined; left?: number | undefined; right?: number | undefined; top?: number | undefined; } | undefined; placeholderSize?: number | undefined; subtitle?: string | Record<string, any> | { font?: ChartsFont | undefined; offset?: number | undefined; text?: string | undefined; } | undefined; text?: string | undefined; verticalAlignment?: VerticalEdge | undefined; } & { children?: React.ReactNode; } & { elementDescriptor: import("./core/configuration/react/element").IElementDescriptor; }>>) & NestedComponentMeta; type ILegendTitleSubtitleProps = React.PropsWithChildren<{ font?: ChartsFont; offset?: number; text?: string; }>; declare const LegendTitleSubtitle: ((props: ILegendTitleSubtitleProps) => React.FunctionComponentElement<React.PropsWithChildren<{ font?: ChartsFont | undefined; offset?: number | undefined; text?: string | undefined; } & { children?: React.ReactNode; } & { elementDescriptor: import("./core/configuration/react/element").IElementDescriptor; }>>) & NestedComponentMeta; type ILoadingIndicatorProps = React.PropsWithChildren<{ backgroundColor?: string; enabled?: boolean; font?: ChartsFont; show?: boolean; text?: string; defaultShow?: boolean; onShowChange?: (value: boolean) => void; }>; declare const LoadingIndicator: ((props: ILoadingIndicatorProps) => React.FunctionComponentElement<React.PropsWithChildren<{ backgroundColor?: string | undefined; enabled?: boolean | undefined; font?: ChartsFont | undefined; show?: boolean | undefined; text?: string | undefined; defaultShow?: boolean | undefined; onShowChange?: ((value: boolean) => void) | undefined; } & { children?: React.ReactNode; } & { elementDescriptor: import("./core/configuration/react/element").IElementDescriptor; }>>) & NestedComponentMeta; type IMarginProps = React.PropsWithChildren<{ bottom?: number; left?: number; right?: number; top?: number; }>; declare const Margin: ((props: IMarginProps) => React.FunctionComponentElement<React.PropsWithChildren<{ bottom?: number | undefined; left?: number | undefined; right?: number | undefined; top?: number | undefined; } & { children?: React.ReactNode; } & { elementDescriptor: import("./core/configuration/react/element").IElementDescriptor; }>>) & NestedComponentMeta; type ISelectionStyleProps = React.PropsWithChildren<{ border?: Record<string, any> | { color?: string | undefined; visible?: boolean | undefined; width?: number | undefined; }; hatching?: Record<string, any> | { direction?: HatchDirection; opacity?: number; step?: number; width?: number; }; }>; declare const SelectionStyle: ((props: ISelectionStyleProps) => React.FunctionComponentElement<React.PropsWithChildren<{ border?: Record<string, any> | { color?: string | undefined; visible?: boolean | undefined; width?: number | undefined; } | undefined; hatching?: Record<string, any> | { direction?: HatchDirection | undefined; opacity?: number | undefined; step?: number | undefined; width?: number | undefined; } | undefined; } & { children?: React.ReactNode; } & { elementDescriptor: import("./core/configuration/react/element").IElementDescriptor; }>>) & NestedComponentMeta; type IShadowProps = React.PropsWithChildren<{ blur?: number; color?: string; offsetX?: number; offsetY?: number; opacity?: number; }>; declare const Shadow: ((props: IShadowProps) => React.FunctionComponentElement<React.PropsWithChildren<{ blur?: number | undefined; color?: string | undefined; offsetX?: number | undefined; offsetY?: number | undefined; opacity?: number | undefined; } & { children?: React.ReactNode; } & { elementDescriptor: import("./core/configuration/react/element").IElementDescriptor; }>>) & NestedComponentMeta; type ISizeProps = React.PropsWithChildren<{ height?: number | undefined; width?: number | undefined; }>; declare const Size: ((props: ISizeProps) => React.FunctionComponentElement<React.PropsWithChildren<{ height?: number | undefined; width?: number | undefined; } & { children?: React.ReactNode; } & { elementDescriptor: import("./core/configuration/react/element").IElementDescriptor; }>>) & NestedComponentMeta; type ISubtitleProps = React.PropsWithChildren<{ font?: ChartsFont; offset?: number; text?: string; textOverflow?: TextOverflow; wordWrap?: WordWrap; }>; declare const Subtitle: ((props: ISubtitleProps) => React.FunctionComponentElement<React.PropsWithChildren<{ font?: ChartsFont | undefined; offset?: number | undefined; text?: string | undefined; textOverflow?: TextOverflow | undefined; wordWrap?: WordWrap | undefined; } & { children?: React.ReactNode; } & { elementDescriptor: import("./core/configuration/react/element").IElementDescriptor; }>>) & NestedComponentMeta; type ITitleProps = React.PropsWithChildren<{ font?: ChartsFont; horizontalAlignment?: HorizontalAlignment | undefined; margin?: Record<string, any> | number | { bottom?: number; left?: number; right?: number; top?: number; }; placeholderSize?: number | undefined; subtitle?: Record<string, any> | string | { font?: ChartsFont; offset?: number; text?: string; textOverflow?: TextOverflow; wordWrap?: WordWrap; }; text?: string; verticalAlignment?: VerticalEdge; textOverflow?: TextOverflow; wordWrap?: WordWrap; }>; declare const Title: ((props: ITitleProps) => React.FunctionComponentElement<React.PropsWithChildren<{ font?: ChartsFont | undefined; horizontalAlignment?: HorizontalAlignment | undefined; margin?: number | Record<string, any> | { bottom?: number | undefined; left?: number | undefined; right?: number | undefined; top?: number | undefined; } | undefined; placeholderSize?: number | undefined; subtitle?: string | Record<string, any> | { font?: ChartsFont | undefined; offset?: number | undefined; text?: string | undefined; textOverflow?: TextOverflow | undefined; wordWrap?: WordWrap | undefined; } | undefined; text?: string | undefined; verticalAlignment?: VerticalEdge | undefined; textOverflow?: TextOverflow | undefined; wordWrap?: WordWrap | undefined; } & { children?: React.ReactNode; } & { elementDescriptor: import("./core/configuration/react/element").IElementDescriptor; }>>) & NestedComponentMeta; type ITooltipProps = React.PropsWithChildren<{ arrowLength?: number; border?: Record<string, any> | { color?: string; dashStyle?: DashStyle; opacity?: number | undefined; visible?: boolean; width?: number; }; color?: string; container?: any | string | undefined; contentTemplate?: ((info: { item: dxFunnelItem; percent: number; percentText: string; value: number; valueText: string; }, element: any) => string | any) | template | undefined; cornerRadius?: number; customizeTooltip?: ((info: { item: dxFunnelItem; percent: number; percentText: string; value: number; valueText: string; }) => Record<string, any>) | undefined; enabled?: boolean; font?: ChartsFont; format?: LocalizationFormat | undefined; opacity?: number | undefined; paddingLeftRight?: number; paddingTopBottom?: number; shadow?: Record<string, any> | { blur?: number; color?: string; offsetX?: number; offsetY?: number; opacity?: number; }; zIndex?: number | undefined; contentRender?: (...params: any) => React.ReactNode; contentComponent?: React.ComponentType<any>; }>; declare const Tooltip: ((props: ITooltipProps) => React.FunctionComponentElement<React.PropsWithChildren<{ arrowLength?: number | undefined; border?: Record<string, any> | { color?: string | undefined; dashStyle?: DashStyle | undefined; opacity?: number | undefined; visible?: boolean | undefined; width?: number | undefined; } | undefined; color?: string | undefined; container?: any | string | undefined; contentTemplate?: template | ((info: { item: dxFunnelItem; percent: number; percentText: string; value: number; valueText: string; }, element: any) => string | any) | undefined; cornerRadius?: number | undefined; customizeTooltip?: ((info: { item: dxFunnelItem; percent: number; percentText: string; value: number; valueText: string; }) => Record<string, any>) | undefined; enabled?: boolean | undefined; font?: ChartsFont | undefined; format?: LocalizationFormat | undefined; opacity?: number | undefined; paddingLeftRight?: number | undefined; paddingTopBottom?: number | undefined; shadow?: Record<string, any> | { blur?: number | undefined; color?: string | undefined; offsetX?: number | undefined; offsetY?: number | undefined; opacity?: number | undefined; } | undefined; zIndex?: number | undefined; contentRender?: ((...params: any) => React.ReactNode) | undefined; contentComponent?: React.ComponentType<any> | undefined; } & { children?: React.ReactNode; } & { elementDescriptor: import("./core/configuration/react/element").IElementDescriptor; }>>) & NestedComponentMeta; type ITooltipBorderProps = React.PropsWithChildren<{ color?: string; dashStyle?: DashStyle; opacity?: number | undefined; visible?: boolean; width?: number; }>; declare const TooltipBorder: ((props: ITooltipBorderProps) => React.FunctionComponentElement<React.PropsWithChildren<{ color?: string | undefined; dashStyle?: DashStyle | undefined; opacity?: number | undefined; visible?: boolean | undefined; width?: number | undefined; } & { children?: React.ReactNode; } & { elementDescriptor: import("./core/configuration/react/element").IElementDescriptor; }>>) & NestedComponentMeta; export default Funnel; export { Funnel, IFunnelOptions, FunnelRef, AdaptiveLayout, IAdaptiveLayoutProps, Border, IBorderProps, Connector, IConnectorProps, Export, IExportProps, Font, IFontProps, Format, IFormatProps, FunnelTitle, IFunnelTitleProps, FunnelTitleSubtitle, IFunnelTitleSubtitleProps, Hatching, IHatchingProps, HoverStyle, IHoverStyleProps, Item, IItemProps, ItemBorder, IItemBorderProps, Label, ILabelProps, LabelBorder, ILabelBorderProps, Legend, ILegendProps, LegendBorder, ILegendBorderProps, LegendTitle, ILegendTitleProps, LegendTitleSubtitle, ILegendTitleSubtitleProps, LoadingIndicator, ILoadingIndicatorProps, Margin, IMarginProps, SelectionStyle, ISelectionStyleProps, Shadow, IShadowProps, Size, ISizeProps, Subtitle, ISubtitleProps, Title, ITitleProps, Tooltip, ITooltipProps, TooltipBorder, ITooltipBorderProps }; import type * as FunnelTypes from 'devextreme/viz/funnel_types'; export { FunnelTypes };