import { BasicTableComponentInterface } from './BasicTable';
import { Component, ComponentType } from './Component/types';
import { ComponentInterface, ComponentInterfaceConfig } from './ComponentInterface/types';
declare function getComponentInterface(type: 'custom', config?: ComponentInterfaceConfig): ComponentInterface<Component.CustomViewAttributes>;
declare function getComponentInterface(type: 'pieChart', config?: ComponentInterfaceConfig): ComponentInterface<Component.PieChartAttributes>;
declare function getComponentInterface(type: 'bubbleChart', config?: ComponentInterfaceConfig): ComponentInterface<Component.BubbleChartAttributes>;
declare function getComponentInterface(type: 'bubbleChartV2', config?: ComponentInterfaceConfig): ComponentInterface<Component.BubbleChartV2Attributes>;
declare function getComponentInterface(type: 'scatterChartV2', config?: ComponentInterfaceConfig): ComponentInterface<Component.ScatterChartV2Attributes>;
declare function getComponentInterface(type: 'sunburstChart', config?: ComponentInterfaceConfig): ComponentInterface<Component.SunburstChartAttributes>;
declare function getComponentInterface(type: 'scatterChart', config?: ComponentInterfaceConfig): ComponentInterface<Component.ScatterChartAttributes>;
declare function getComponentInterface(type: 'mercatorMap', config?: ComponentInterfaceConfig): ComponentInterface<Component.MercatorMapAttributes>;
declare function getComponentInterface(type: 'singleStat', config?: ComponentInterfaceConfig): ComponentInterface<Component.SingleStatAttributes>;
declare function getComponentInterface(type: 'progress', config?: ComponentInterfaceConfig): ComponentInterface<Component.ProgressAttributes>;
declare function getComponentInterface(type: 'comboChart', config?: ComponentInterfaceConfig): ComponentInterface<Component.ComboChartAttributes>;
declare function getComponentInterface(type: 'dataTable', config?: ComponentInterfaceConfig): ComponentInterface<Component.DataTableAttributes>;
declare function getComponentInterface(type: 'basicTable', config?: ComponentInterfaceConfig): BasicTableComponentInterface;
declare function getComponentInterface(type: 'horizontalBarChart', config?: ComponentInterfaceConfig): ComponentInterface<Component.HorizontalBarChartAttributes>;
declare function getComponentInterface(type: 'areaChart', config?: ComponentInterfaceConfig): ComponentInterface<Component.AreaChartAttributes>;
declare function getComponentInterface(type: 'lineChart', config?: ComponentInterfaceConfig): ComponentInterface<Component.LineChartAttributes>;
declare function getComponentInterface(type: 'lineChartV2', config?: ComponentInterfaceConfig): ComponentInterface<Component.LineChartV2Attributes>;
declare function getComponentInterface(type: 'barChartV2', config?: ComponentInterfaceConfig): ComponentInterface<Component.BarChartV2Attributes>;
declare function getComponentInterface(type: 'areaChartV2', config?: ComponentInterfaceConfig): ComponentInterface<Component.AreaChartV2Attributes>;
declare function getComponentInterface(type: 'comboChartV2', config?: ComponentInterfaceConfig): ComponentInterface<Component.ComboChartV2Attributes>;
declare function getComponentInterface(type: 'barChart', config?: ComponentInterfaceConfig): ComponentInterface<Component.BarChartAttributes>;
declare function getComponentInterface(type: 'funnelChart', config?: ComponentInterfaceConfig): ComponentInterface<Component.FunnelChartAttributes>;
declare function getComponentInterface(type: 'waterfallChart', config?: ComponentInterfaceConfig): ComponentInterface<Component.WaterfallChartAttributes>;
declare function getComponentInterface(type: 'radarChart', config?: ComponentInterfaceConfig): ComponentInterface<Component.RadarChartAttributes>;
declare function getComponentInterface(type: ComponentType, config?: ComponentInterfaceConfig): ComponentInterface<Component.Attributes>;
export default getComponentInterface;
