forked from mui/mui-x
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathChartPremiumApi.ts
More file actions
26 lines (24 loc) · 1.29 KB
/
Copy pathChartPremiumApi.ts
File metadata and controls
26 lines (24 loc) · 1.29 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import type { ProPluginsPerSeriesType } from '@mui/x-charts-pro/internals';
import type { ChartAnyPluginSignature, ChartPublicAPI } from '@mui/x-charts/internals';
import type { BarChartPremiumPluginSignatures } from '../BarChartPremium/BarChartPremium.plugins';
import type { AllPluginSignatures } from '../internals/plugins/allPlugins';
import type { GeoPremiumPluginSignatures } from '../ChartsGeoDataProviderPremium/ChartsGeoDataProviderPremium.plugins';
export type PremiumPluginsPerSeriesType = Omit<ProPluginsPerSeriesType, 'bar'> & {
bar: BarChartPremiumPluginSignatures;
rangeBar: BarChartPremiumPluginSignatures;
mapShape: GeoPremiumPluginSignatures;
};
/**
* The API of the chart `apiRef` object.
* The chart type can be passed as the first generic parameter to narrow down the API to the specific chart type.
* @example ChartProApi<'bar'>
* If the chart is being created using composition, the `composition` value can be used.
* @example ChartProApi<'composition'>
*/
export type ChartPremiumApi<
ChartType extends keyof PremiumPluginsPerSeriesType | undefined = undefined,
Signatures extends readonly ChartAnyPluginSignature[] =
ChartType extends keyof PremiumPluginsPerSeriesType
? PremiumPluginsPerSeriesType[ChartType]
: AllPluginSignatures,
> = ChartPublicAPI<Signatures>;