UNPKG

victory-create-container

Version:
402 lines 21.9 kB
import React from "react"; import { VictoryContainer, VictoryContainerProps } from "victory-core"; export type ContainerType = "zoom" | "selection" | "brush" | "cursor" | "voronoi"; type ContainerComponents = Record<ContainerType, React.ComponentType<any> & { defaultEvents: (props: any) => any[]; }>; export declare function makeCreateContainerFunction<TContainerComponents extends ContainerComponents>(containerComponents: TContainerComponents, VictoryContainerBase: typeof VictoryContainer): <TContainerA extends ContainerType | VictoryContainerProps, TContainerB extends ContainerType | VictoryContainerProps>(containerA: TContainerA extends ContainerType ? TContainerA : ContainerType, containerB: TContainerB extends ContainerType ? TContainerB : ContainerType) => { (props: TContainerA extends ContainerType ? TContainerB extends ContainerType ? React.ComponentProps<TContainerComponents[TContainerA]> & React.ComponentProps<TContainerComponents[TContainerB]> : TContainerA & TContainerB : TContainerA & TContainerB): JSX.Element; displayName: string; role: string; defaultEvents(props: TContainerA extends ContainerType ? TContainerB extends ContainerType ? React.ComponentProps<TContainerComponents[TContainerA]> & React.ComponentProps<TContainerComponents[TContainerB]> : TContainerA & TContainerB : TContainerA & TContainerB): ({ target: string; eventHandlers: any; } | null)[]; }; export declare const createContainer: <TContainerA extends ContainerType | VictoryContainerProps, TContainerB extends ContainerType | VictoryContainerProps>(containerA: TContainerA extends ContainerType ? TContainerA : ContainerType, containerB: TContainerB extends ContainerType ? TContainerB : ContainerType) => { (props: TContainerA extends ContainerType ? TContainerB extends ContainerType ? React.ComponentProps<{ zoom: { (initialProps: import("victory-zoom-container").VictoryZoomContainerProps): JSX.Element; role: string; defaultEvents(initialProps: import("victory-zoom-container").VictoryZoomContainerProps): { target: string; eventHandlers: { onMouseDown: import("victory-core").VictoryEventHandler; onTouchStart: import("victory-core").VictoryEventHandler; onMouseUp: import("victory-core").VictoryEventHandler; onTouchEnd: import("victory-core").VictoryEventHandler; onMouseLeave: import("victory-core").VictoryEventHandler; onTouchCancel: import("victory-core").VictoryEventHandler; onMouseMove: import("victory-core").VictoryEventHandler; onTouchMove: import("victory-core").VictoryEventHandler; onWheel: import("victory-core").VictoryEventHandler; }; }[]; }; selection: { (initialProps: import("victory-selection-container").VictorySelectionContainerProps): JSX.Element; role: string; defaultEvents(initialProps: import("victory-selection-container").VictorySelectionContainerProps): { target: string; eventHandlers: { onMouseDown: import("victory-core").VictoryEventHandler; onTouchStart: import("victory-core").VictoryEventHandler; onMouseMove: import("victory-core").VictoryEventHandler; onTouchMove: import("victory-core").VictoryEventHandler; onMouseUp: import("victory-core").VictoryEventHandler; onTouchEnd: import("victory-core").VictoryEventHandler; }; }[]; }; brush: { (initialProps: import("victory-brush-container").VictoryBrushContainerProps): JSX.Element; role: string; defaultEvents(initialProps: import("victory-brush-container").VictoryBrushContainerProps): { target: string; eventHandlers: { onMouseDown: import("victory-core").VictoryEventHandler; onTouchStart: import("victory-core").VictoryEventHandler; onGlobalMouseMove: import("victory-core").VictoryEventHandler; onGlobalTouchMove: import("victory-core").VictoryEventHandler; onGlobalMouseUp: import("victory-core").VictoryEventHandler; onGlobalTouchEnd: import("victory-core").VictoryEventHandler; onGlobalTouchCancel: import("victory-core").VictoryEventHandler; }; }[]; }; cursor: { (initialProps: import("victory-cursor-container").VictoryCursorContainerProps): JSX.Element; role: string; defaultEvents(initialProps: import("victory-cursor-container").VictoryCursorContainerProps): { target: string; eventHandlers: { onMouseLeave: import("victory-core").VictoryEventHandler; onMouseMove: import("victory-core").VictoryEventHandler; onTouchMove: import("victory-core").VictoryEventHandler; }; }[]; }; voronoi: { (initialProps: import("victory-voronoi-container").VictoryVoronoiContainerProps): JSX.Element; role: string; defaultEvents(initialProps: import("victory-voronoi-container").VictoryVoronoiContainerProps): ({ target: string; eventHandlers: { onMouseLeave: import("victory-core").VictoryEventHandler; onTouchCancel: import("victory-core").VictoryEventHandler; onMouseMove: import("victory-core").VictoryEventHandler; onTouchMove: import("victory-core").VictoryEventHandler; onMouseOver?: undefined; onMouseOut?: undefined; }; } | { target: string; eventHandlers: { onMouseLeave?: undefined; onTouchCancel?: undefined; onMouseMove?: undefined; onTouchMove?: undefined; onMouseOver?: undefined; onMouseOut?: undefined; } | { onMouseOver: () => null; onMouseOut: () => null; onMouseMove: () => null; onMouseLeave?: undefined; onTouchCancel?: undefined; onTouchMove?: undefined; }; })[]; }; }[TContainerA]> & React.ComponentProps<{ zoom: { (initialProps: import("victory-zoom-container").VictoryZoomContainerProps): JSX.Element; role: string; defaultEvents(initialProps: import("victory-zoom-container").VictoryZoomContainerProps): { target: string; eventHandlers: { onMouseDown: import("victory-core").VictoryEventHandler; onTouchStart: import("victory-core").VictoryEventHandler; onMouseUp: import("victory-core").VictoryEventHandler; onTouchEnd: import("victory-core").VictoryEventHandler; onMouseLeave: import("victory-core").VictoryEventHandler; onTouchCancel: import("victory-core").VictoryEventHandler; onMouseMove: import("victory-core").VictoryEventHandler; onTouchMove: import("victory-core").VictoryEventHandler; onWheel: import("victory-core").VictoryEventHandler; }; }[]; }; selection: { (initialProps: import("victory-selection-container").VictorySelectionContainerProps): JSX.Element; role: string; defaultEvents(initialProps: import("victory-selection-container").VictorySelectionContainerProps): { target: string; eventHandlers: { onMouseDown: import("victory-core").VictoryEventHandler; onTouchStart: import("victory-core").VictoryEventHandler; onMouseMove: import("victory-core").VictoryEventHandler; onTouchMove: import("victory-core").VictoryEventHandler; onMouseUp: import("victory-core").VictoryEventHandler; onTouchEnd: import("victory-core").VictoryEventHandler; }; }[]; }; brush: { (initialProps: import("victory-brush-container").VictoryBrushContainerProps): JSX.Element; role: string; defaultEvents(initialProps: import("victory-brush-container").VictoryBrushContainerProps): { target: string; eventHandlers: { onMouseDown: import("victory-core").VictoryEventHandler; onTouchStart: import("victory-core").VictoryEventHandler; onGlobalMouseMove: import("victory-core").VictoryEventHandler; onGlobalTouchMove: import("victory-core").VictoryEventHandler; onGlobalMouseUp: import("victory-core").VictoryEventHandler; onGlobalTouchEnd: import("victory-core").VictoryEventHandler; onGlobalTouchCancel: import("victory-core").VictoryEventHandler; }; }[]; }; cursor: { (initialProps: import("victory-cursor-container").VictoryCursorContainerProps): JSX.Element; role: string; defaultEvents(initialProps: import("victory-cursor-container").VictoryCursorContainerProps): { target: string; eventHandlers: { onMouseLeave: import("victory-core").VictoryEventHandler; onMouseMove: import("victory-core").VictoryEventHandler; onTouchMove: import("victory-core").VictoryEventHandler; }; }[]; }; voronoi: { (initialProps: import("victory-voronoi-container").VictoryVoronoiContainerProps): JSX.Element; role: string; defaultEvents(initialProps: import("victory-voronoi-container").VictoryVoronoiContainerProps): ({ target: string; eventHandlers: { onMouseLeave: import("victory-core").VictoryEventHandler; onTouchCancel: import("victory-core").VictoryEventHandler; onMouseMove: import("victory-core").VictoryEventHandler; onTouchMove: import("victory-core").VictoryEventHandler; onMouseOver?: undefined; onMouseOut?: undefined; }; } | { target: string; eventHandlers: { onMouseLeave?: undefined; onTouchCancel?: undefined; onMouseMove?: undefined; onTouchMove?: undefined; onMouseOver?: undefined; onMouseOut?: undefined; } | { onMouseOver: () => null; onMouseOut: () => null; onMouseMove: () => null; onMouseLeave?: undefined; onTouchCancel?: undefined; onTouchMove?: undefined; }; })[]; }; }[TContainerB]> : TContainerA & TContainerB : TContainerA & TContainerB): JSX.Element; displayName: string; role: string; defaultEvents(props: TContainerA extends ContainerType ? TContainerB extends ContainerType ? React.ComponentProps<{ zoom: { (initialProps: import("victory-zoom-container").VictoryZoomContainerProps): JSX.Element; role: string; defaultEvents(initialProps: import("victory-zoom-container").VictoryZoomContainerProps): { target: string; eventHandlers: { onMouseDown: import("victory-core").VictoryEventHandler; onTouchStart: import("victory-core").VictoryEventHandler; onMouseUp: import("victory-core").VictoryEventHandler; onTouchEnd: import("victory-core").VictoryEventHandler; onMouseLeave: import("victory-core").VictoryEventHandler; onTouchCancel: import("victory-core").VictoryEventHandler; onMouseMove: import("victory-core").VictoryEventHandler; onTouchMove: import("victory-core").VictoryEventHandler; onWheel: import("victory-core").VictoryEventHandler; }; }[]; }; selection: { (initialProps: import("victory-selection-container").VictorySelectionContainerProps): JSX.Element; role: string; defaultEvents(initialProps: import("victory-selection-container").VictorySelectionContainerProps): { target: string; eventHandlers: { onMouseDown: import("victory-core").VictoryEventHandler; onTouchStart: import("victory-core").VictoryEventHandler; onMouseMove: import("victory-core").VictoryEventHandler; onTouchMove: import("victory-core").VictoryEventHandler; onMouseUp: import("victory-core").VictoryEventHandler; onTouchEnd: import("victory-core").VictoryEventHandler; }; }[]; }; brush: { (initialProps: import("victory-brush-container").VictoryBrushContainerProps): JSX.Element; role: string; defaultEvents(initialProps: import("victory-brush-container").VictoryBrushContainerProps): { target: string; eventHandlers: { onMouseDown: import("victory-core").VictoryEventHandler; onTouchStart: import("victory-core").VictoryEventHandler; onGlobalMouseMove: import("victory-core").VictoryEventHandler; onGlobalTouchMove: import("victory-core").VictoryEventHandler; onGlobalMouseUp: import("victory-core").VictoryEventHandler; onGlobalTouchEnd: import("victory-core").VictoryEventHandler; onGlobalTouchCancel: import("victory-core").VictoryEventHandler; }; }[]; }; cursor: { (initialProps: import("victory-cursor-container").VictoryCursorContainerProps): JSX.Element; role: string; defaultEvents(initialProps: import("victory-cursor-container").VictoryCursorContainerProps): { target: string; eventHandlers: { onMouseLeave: import("victory-core").VictoryEventHandler; onMouseMove: import("victory-core").VictoryEventHandler; onTouchMove: import("victory-core").VictoryEventHandler; }; }[]; }; voronoi: { (initialProps: import("victory-voronoi-container").VictoryVoronoiContainerProps): JSX.Element; role: string; defaultEvents(initialProps: import("victory-voronoi-container").VictoryVoronoiContainerProps): ({ target: string; eventHandlers: { onMouseLeave: import("victory-core").VictoryEventHandler; onTouchCancel: import("victory-core").VictoryEventHandler; onMouseMove: import("victory-core").VictoryEventHandler; onTouchMove: import("victory-core").VictoryEventHandler; onMouseOver?: undefined; onMouseOut?: undefined; }; } | { target: string; eventHandlers: { onMouseLeave?: undefined; onTouchCancel?: undefined; onMouseMove?: undefined; onTouchMove?: undefined; onMouseOver?: undefined; onMouseOut?: undefined; } | { onMouseOver: () => null; onMouseOut: () => null; onMouseMove: () => null; onMouseLeave?: undefined; onTouchCancel?: undefined; onTouchMove?: undefined; }; })[]; }; }[TContainerA]> & React.ComponentProps<{ zoom: { (initialProps: import("victory-zoom-container").VictoryZoomContainerProps): JSX.Element; role: string; defaultEvents(initialProps: import("victory-zoom-container").VictoryZoomContainerProps): { target: string; eventHandlers: { onMouseDown: import("victory-core").VictoryEventHandler; onTouchStart: import("victory-core").VictoryEventHandler; onMouseUp: import("victory-core").VictoryEventHandler; onTouchEnd: import("victory-core").VictoryEventHandler; onMouseLeave: import("victory-core").VictoryEventHandler; onTouchCancel: import("victory-core").VictoryEventHandler; onMouseMove: import("victory-core").VictoryEventHandler; onTouchMove: import("victory-core").VictoryEventHandler; onWheel: import("victory-core").VictoryEventHandler; }; }[]; }; selection: { (initialProps: import("victory-selection-container").VictorySelectionContainerProps): JSX.Element; role: string; defaultEvents(initialProps: import("victory-selection-container").VictorySelectionContainerProps): { target: string; eventHandlers: { onMouseDown: import("victory-core").VictoryEventHandler; onTouchStart: import("victory-core").VictoryEventHandler; onMouseMove: import("victory-core").VictoryEventHandler; onTouchMove: import("victory-core").VictoryEventHandler; onMouseUp: import("victory-core").VictoryEventHandler; onTouchEnd: import("victory-core").VictoryEventHandler; }; }[]; }; brush: { (initialProps: import("victory-brush-container").VictoryBrushContainerProps): JSX.Element; role: string; defaultEvents(initialProps: import("victory-brush-container").VictoryBrushContainerProps): { target: string; eventHandlers: { onMouseDown: import("victory-core").VictoryEventHandler; onTouchStart: import("victory-core").VictoryEventHandler; onGlobalMouseMove: import("victory-core").VictoryEventHandler; onGlobalTouchMove: import("victory-core").VictoryEventHandler; onGlobalMouseUp: import("victory-core").VictoryEventHandler; onGlobalTouchEnd: import("victory-core").VictoryEventHandler; onGlobalTouchCancel: import("victory-core").VictoryEventHandler; }; }[]; }; cursor: { (initialProps: import("victory-cursor-container").VictoryCursorContainerProps): JSX.Element; role: string; defaultEvents(initialProps: import("victory-cursor-container").VictoryCursorContainerProps): { target: string; eventHandlers: { onMouseLeave: import("victory-core").VictoryEventHandler; onMouseMove: import("victory-core").VictoryEventHandler; onTouchMove: import("victory-core").VictoryEventHandler; }; }[]; }; voronoi: { (initialProps: import("victory-voronoi-container").VictoryVoronoiContainerProps): JSX.Element; role: string; defaultEvents(initialProps: import("victory-voronoi-container").VictoryVoronoiContainerProps): ({ target: string; eventHandlers: { onMouseLeave: import("victory-core").VictoryEventHandler; onTouchCancel: import("victory-core").VictoryEventHandler; onMouseMove: import("victory-core").VictoryEventHandler; onTouchMove: import("victory-core").VictoryEventHandler; onMouseOver?: undefined; onMouseOut?: undefined; }; } | { target: string; eventHandlers: { onMouseLeave?: undefined; onTouchCancel?: undefined; onMouseMove?: undefined; onTouchMove?: undefined; onMouseOver?: undefined; onMouseOut?: undefined; } | { onMouseOver: () => null; onMouseOut: () => null; onMouseMove: () => null; onMouseLeave?: undefined; onTouchCancel?: undefined; onTouchMove?: undefined; }; })[]; }; }[TContainerB]> : TContainerA & TContainerB : TContainerA & TContainerB): ({ target: string; eventHandlers: any; } | null)[]; }; export {}; //# sourceMappingURL=create-container.d.ts.map