declare module "racing-bars/shared/index" {
    import { type Data, type WideData, type Options, type Race } from "racing-bars";
    export function processProps(props: any, elementId: string): {
        dataPromise: Promise<Data[]> | Promise<WideData[]>;
        options: Partial<Partial<import("lib").Options>>;
        callback: any;
        className: any;
        style: any;
    };
    export type Props = Partial<Options & {
        data: Data[] | WideData[];
        dataUrl: string;
        dataType: 'json' | 'csv' | 'tsv' | 'xml';
        elementId: string;
        className: string;
        style: Record<string, string>;
        callback: (racer: Race, data: Data[] | WideData[]) => void;
    }>;
    export const defaultProps: Props;
}
declare module "racing-bars/lib/container/container.models" {
    import type { Action } from "racing-bars/lib/store/index";
    export interface ContainerAction extends Action {
        payload: HTMLElement;
    }
    export interface ContainerState {
        element: HTMLElement;
    }
}
declare module "racing-bars/lib/container/container.actions" {
    import type { ContainerState, ContainerAction } from "racing-bars/lib/container/container.models";
    export const actionTypes: {
        setContainer: string;
    };
    export const setContainer: (containerState: ContainerState) => ContainerAction;
}
declare module "racing-bars/lib/container/container.reducer" {
    import type { Reducer } from "racing-bars/lib/store/index";
    import type { ContainerAction, ContainerState } from "racing-bars/lib/container/container.models";
    export const containerReducer: Reducer<ContainerState, ContainerAction>;
}
declare module "racing-bars/lib/container/index" {
    export * from "racing-bars/lib/container/container.actions";
    export * from "racing-bars/lib/container/container.models";
    export * from "racing-bars/lib/container/container.reducer";
}
declare module "racing-bars/lib/options/options.models" {
    import type { Action } from "racing-bars/lib/store/index";
    import type { Data, WideData } from "racing-bars/lib/data/index";
    export interface OptionsAction extends Action {
        payload: Partial<Options>;
    }
    export interface Options {
        dataShape: 'long' | 'wide' | 'auto';
        dataType: 'json' | 'csv' | 'tsv' | 'xml' | 'auto';
        dataTransform: null | ((data: Data[] | WideData[]) => Data[] | WideData[]);
        valueDecimals: 'preserve' | number;
        fillDateGapsInterval: null | 'year' | 'month' | 'day';
        fillDateGapsValue: 'last' | 'interpolate';
        labelsPosition: 'inside' | 'outside' | 'none';
        controlButtons: 'all' | 'play' | 'none';
        overlays: 'all' | 'play' | 'repeat' | 'none';
        makeCumulative: boolean;
        loop: boolean;
        showIcons: boolean;
        showGroups: boolean;
        mouseControls: boolean;
        keyboardControls: boolean;
        autorun: boolean;
        injectStyles: boolean;
        fixedScale: boolean;
        highlightBars: boolean;
        selectBars: boolean;
        labelsWidth: number;
        tickDuration: number;
        topN: number;
        minHeight: number;
        minWidth: number;
        marginTop: number;
        marginRight: number;
        marginBottom: number;
        marginLeft: number;
        startDate: string;
        endDate: string;
        theme: string;
        colorSeed: number | string;
        inputHeight: number | string;
        inputWidth: number | string;
        height: number | string;
        width: number | string;
        title: string | ((currentDate: string, dateSlice: Data[], allDates: string[]) => string);
        subTitle: string | ((currentDate: string, dateSlice: Data[], allDates: string[]) => string);
        dateCounter: string | ((currentDate: string, dateSlice: Data[], allDates: string[]) => string);
        caption: string | ((currentDate: string, dateSlice: Data[], allDates: string[]) => string);
        colorMap: {
            [key: string]: string;
        } | string[];
        fixedOrder: string[];
    }
    export type TransformFn = (data: Data[] | WideData[]) => Data[] | WideData[];
    export type ParamFunction = (currentDate: string, dateSlice: Data[], allDates: string[]) => string;
}
declare module "racing-bars/lib/options/options.actions" {
    import type { Options, OptionsAction } from "racing-bars/lib/options/options.models";
    export const actionTypes: {
        loadOptions: string;
        changeOptions: string;
    };
    export const loadOptions: (options: Partial<Options>) => OptionsAction;
    export const changeOptions: (options: Partial<Options>) => OptionsAction;
}
declare module "racing-bars/lib/d3" {
    export type { Axis, ScaleLinear, Timer } from 'd3';
    export { axisTop, csv, easeLinear, format, hsl, interpolate, interpolateRound, interval, json, max, scaleLinear, select, selectAll, timeYear, timeMonth, timeDay, tsv, xml, } from 'd3';
}
declare module "racing-bars/lib/load-data" {
    import type { Options, Data, WideData } from "racing-bars/lib/index";
    export function loadData(url: string, type?: Options['dataType']): Promise<Data[]> | Promise<WideData[]>;
}
declare module "racing-bars/lib/utils/utils" {
    import type { Data } from "racing-bars/lib/data/index";
    import type { ParamFunction } from "racing-bars/lib/options/index";
    import type { Store } from "racing-bars/lib/store/index";
    export function getColor(d: Data, store: Store): string | import("d3-color").HSLColor;
    export function getIconID(d: Data): string;
    export function zeroPad(n: string, w: number): string;
    export const countDecimals: (n: number) => number;
    export function random(InputSeed: string | number): number;
    export function shuffle(arr: string[], seed: number): string[];
    export function generateId(prefix?: string, n?: number): string;
    export function getHeight(element: HTMLElement, minHeight: number, height?: string): number;
    export function getWidth(element: HTMLElement, minWidth: number, width?: string): number;
    export function getElement(root: HTMLElement | HTMLDocument, className: string): HTMLElement | undefined;
    export function showElement(root: HTMLElement, className: string, useVisibility?: boolean): void;
    export function hideElement(root: HTMLElement, className: string, useVisibility?: boolean): void;
    export function removeElement(root: HTMLElement, className: string): void;
    export function getText(param: string | ParamFunction, currentDate: string, dateSlice: Data[], dates: string[], isDate?: boolean): string;
    export function safeName(name: string): string;
    export function toggleClass(root: HTMLElement, selector: string, className: string): void;
    export const getClicks: (_clicks: MouseEvent, _Fn: (clicks: MouseEvent) => void) => void;
    export const pipe: (...fns: Function[]) => Function;
    export function getBaseUrl(): string;
    export const getWorkerDataURL: (url: string) => string;
    export const toDataUrl: (content: string, type?: string) => string;
    export const createWorkerFromContent: (content: string) => Worker;
}
declare module "racing-bars/lib/utils/dates" {
    import type { Data } from "racing-bars/lib/data/index";
    export const getDates: (data: Data[]) => string[];
    export function getDateString(inputDate: string | Date): string;
    export function formatDate(dateStr: string, format?: string): string;
    export function getDateRange(date1: Date, date2: Date, interval: 'year' | 'month' | 'day'): Date[];
    export function getNextDate(dates: string[], currentDate: string): string;
}
declare module "racing-bars/lib/utils/data" {
    import type { Data, WideData } from "racing-bars/lib/data/index";
    import { type Store } from "racing-bars/lib/store/index";
    export function prepareData(data: Data[] | WideData[] | Promise<Data[]> | Promise<WideData[]> | string, store: Store, changingOptions?: boolean): Promise<Data[]>;
    export function getDateSlice(date: string, data: Data[], store: Store): Data[];
    export function computeNextDateSubscriber(data: Data[], store: Store): () => void;
}
declare module "racing-bars/lib/utils/index" {
    export * from "racing-bars/lib/utils/data";
    export * from "racing-bars/lib/utils/dates";
    export * from "racing-bars/lib/utils/utils";
}
declare module "racing-bars/lib/options/options.reducer" {
    import type { Reducer } from "racing-bars/lib/store/index";
    import type { Options, OptionsAction } from "racing-bars/lib/options/options.models";
    export const defaultOptions: Options;
    export const optionsReducer: Reducer<Options, OptionsAction>;
}
declare module "racing-bars/lib/options/validate-options" {
    import type { Options } from "racing-bars/lib/options/index";
    export function validateOptions(options: Partial<Options>): Partial<Options>;
}
declare module "racing-bars/lib/options/index" {
    export * from "racing-bars/lib/options/options.actions";
    export * from "racing-bars/lib/options/options.models";
    export * from "racing-bars/lib/options/options.reducer";
    export * from "racing-bars/lib/options/validate-options";
}
declare module "racing-bars/lib/ticker/ticker.models" {
    import type { Action } from "racing-bars/lib/store/index";
    export interface TickerAction extends Action {
        payload?: string | string[] | boolean | number;
    }
    export interface TickerState {
        isRunning: boolean;
        currentDate: string;
        isFirstDate: boolean;
        isLastDate: boolean;
        dates: string[];
    }
    export interface Ticker {
        start: () => void;
        stop: () => void;
        skipBack: () => void;
        loop: () => void;
        skipForward: () => void;
        toggle: () => void;
        goToDate: (date: string) => void;
    }
}
declare module "racing-bars/lib/ticker/ticker.actions" {
    import type { TickerAction } from "racing-bars/lib/ticker/ticker.models";
    export const actionTypes: {
        initialize: string;
        changeDates: string;
        updateDate: string;
        setRunning: string;
        setFirst: string;
        setLast: string;
        inc: string;
        dec: string;
    };
    export const initialize: (dates: string[]) => TickerAction;
    export const changeDates: (dates: string[]) => TickerAction;
    export const updateDate: (currentDate: string) => TickerAction;
    export const setRunning: (running: boolean) => TickerAction;
    export const setFirst: () => TickerAction;
    export const setLast: () => TickerAction;
    export const inc: (value?: number) => TickerAction;
    export const dec: (value?: number) => TickerAction;
}
declare module "racing-bars/lib/ticker/ticker.reducer" {
    import type { Reducer } from "racing-bars/lib/store/index";
    import type { TickerState, TickerAction } from "racing-bars/lib/ticker/ticker.models";
    export const tickerReducer: Reducer<TickerState, TickerAction>;
}
declare module "racing-bars/lib/ticker/ticker" {
    import { type Store } from "racing-bars/lib/store/index";
    import type { Ticker } from "racing-bars/lib/ticker/ticker.models";
    export function createTicker(store: Store): Ticker;
}
declare module "racing-bars/lib/ticker/index" {
    export * from "racing-bars/lib/ticker/ticker.actions";
    export * from "racing-bars/lib/ticker/ticker.models";
    export * from "racing-bars/lib/ticker/ticker.reducer";
    export * from "racing-bars/lib/ticker/ticker";
}
declare module "racing-bars/lib/store/actions" {
    import * as container from "racing-bars/lib/container/index";
    import * as data from "racing-bars/lib/data/index";
    import * as options from "racing-bars/lib/options/index";
    import * as ticker from "racing-bars/lib/ticker/index";
    export const actions: {
        container: typeof container;
        data: typeof data;
        options: typeof options;
        ticker: typeof ticker;
    };
}
declare module "racing-bars/lib/store/models" {
    import type { Options } from "racing-bars/lib/options/index";
    import type { TickerState } from "racing-bars/lib/ticker/index";
    import type { DataState } from "racing-bars/lib/data/index";
    import type { ContainerState } from "racing-bars/lib/container/index";
    export interface Action {
        type: string;
        payload?: any;
        error?: Error;
        triggerRender?: boolean;
    }
    export interface State {
        container: ContainerState;
        data: DataState;
        options: Options;
        ticker: TickerState;
        triggerRender: boolean;
    }
    type StateOrSlice = State | ContainerState | DataState | Options | TickerState;
    export type Reducer<T extends StateOrSlice, U extends Action> = (state: T, action: U) => T;
    export interface Store {
        getState: () => State;
        dispatch: (action: Action) => void;
        subscribe: (fn: Subscriber) => {
            unsubscribe: () => void;
        };
        unsubscribeAll: () => void;
    }
    export type Subscriber = () => void;
}
declare module "racing-bars/lib/store/reducer" {
    import type { Action, State, Reducer } from "racing-bars/lib/store/models";
    export const rootReducer: Reducer<State, Action>;
}
declare module "racing-bars/lib/store/store" {
    import type { Action, Reducer, State, Store } from "racing-bars/lib/store/models";
    export function createStore(reducer?: Reducer<State, Action>, preloadedState?: State): Store;
}
declare module "racing-bars/lib/store/index" {
    export * from "racing-bars/lib/store/actions";
    export * from "racing-bars/lib/store/models";
    export * from "racing-bars/lib/store/reducer";
    export * from "racing-bars/lib/store/store";
}
declare module "racing-bars/lib/data/data.models" {
    import type { HSLColor } from 'd3';
    import type { Action } from "racing-bars/lib/store/index";
    export interface DataAction extends Action {
        payload?: DataCollections | string | DateSlice;
    }
    export interface DataState extends DataCollections {
        groupFilter: string[];
        selected: string[];
        dateSlices: DateSlice;
    }
    export interface DataCollections {
        names: string[];
        groups: string[];
        datesCache: string[];
    }
    export interface Data {
        date: string;
        name: string;
        value: number;
        lastValue?: number;
        group?: string;
        color?: HSLColor | string;
        icon?: string;
        rank?: number;
    }
    export interface WideData {
        [key: string]: any;
        date: string;
    }
    export interface DateSlice {
        [key: string]: Data[];
    }
}
declare module "racing-bars/lib/data/data.actions" {
    import type { DataAction, DataCollections, Data } from "racing-bars/lib/data/data.models";
    export const actionTypes: {
        dataLoaded: string;
        addFilter: string;
        removeFilter: string;
        toggleFilter: string;
        resetFilters: string;
        allExceptFilter: string;
        addSelection: string;
        removeSelection: string;
        toggleSelection: string;
        resetSelections: string;
        addDateSlice: string;
        clearDateSlices: string;
    };
    export const dataLoaded: (dataCollections: DataCollections) => DataAction;
    export const addFilter: (group: string) => DataAction;
    export const removeFilter: (group: string) => DataAction;
    export const toggleFilter: (group: string) => DataAction;
    export const resetFilters: () => DataAction;
    export const allExceptFilter: (group: string) => DataAction;
    export const addSelection: (selection: string) => DataAction;
    export const removeSelection: (selection: string) => DataAction;
    export const toggleSelection: (selection: string) => DataAction;
    export const resetSelections: () => DataAction;
    export const addDateSlice: (date: string, dateSlice: Data[]) => DataAction;
    export const clearDateSlices: () => DataAction;
}
declare module "racing-bars/lib/data/data.reducer" {
    import type { Reducer } from "racing-bars/lib/store/index";
    import type { DataState, DataAction } from "racing-bars/lib/data/data.models";
    export const dataReducer: Reducer<DataState, DataAction>;
}
declare module "racing-bars/lib/data/index" {
    export * from "racing-bars/lib/data/data.actions";
    export * from "racing-bars/lib/data/data.models";
    export * from "racing-bars/lib/data/data.reducer";
}
declare module "racing-bars/lib/renderer/renderer.models" {
    export interface Renderer {
        renderInitialView: () => void;
        renderFrame: () => void;
        resize: () => void;
    }
}
declare module "racing-bars/lib/renderer/render-options" {
    import type { Data } from "racing-bars/lib/data/index";
    export interface RenderOptions {
        titleText: any;
        subTitleText: any;
        captionText: any;
        dateCounterText: any;
        root: HTMLElement;
        svg: any;
        height: number;
        width: number;
        margin: {
            top: number;
            right: number;
            bottom: number;
            left: number;
        };
        x: d3.ScaleLinear<number, number>;
        y: d3.ScaleLinear<number, number>;
        xAxis: d3.Axis<number | {
            valueOf(): number;
        }>;
        headerHeight: number;
        titlePadding: number;
        titleHeight: number;
        barY: (d: Data) => number;
        barWidth: (d: Data) => number;
        barHeight: number;
        barHalfHeight: number;
        barPadding: number;
        labelX: number | ((d: Data) => number);
        labelPadding: number;
        defs: any;
        iconSize: number;
        iconSpace: number;
        maxValue: number;
        lastDate: string;
    }
}
declare module "racing-bars/lib/renderer/calculate-dimensions" {
    import type { Store } from "racing-bars/lib/store/index";
    import type { RenderOptions } from "racing-bars/lib/renderer/render-options";
    export function calculateDimensions(store: Store, renderOptions: RenderOptions): void;
}
declare module "racing-bars/lib/renderer/helpers" {
    import type { Data } from "racing-bars/lib/data/index";
    import { type Store } from "racing-bars/lib/store/index";
    import type { RenderOptions } from "racing-bars/lib/renderer/render-options";
    export function halo(text: any, renderOptions: RenderOptions): void;
    export function legendClick(ev: MouseEvent, d: string, store: Store): void;
    export function highlightFn(d: Data, store: Store, renderOptions: RenderOptions): void;
    export function selectFn(d: Data, store: Store, renderOptions: RenderOptions): void;
}
declare module "racing-bars/lib/renderer/render-header" {
    import type { Data } from "racing-bars/lib/data/index";
    import type { Store } from "racing-bars/lib/store/index";
    import type { RenderOptions } from "racing-bars/lib/renderer/render-options";
    export function renderHeader(store: Store, renderOptions: RenderOptions, CompleteDateSlice: Data[]): void;
}
declare module "racing-bars/lib/renderer/elements" {
    export const elements: {
        controls: string;
        skipBack: string;
        play: string;
        pause: string;
        skipForward: string;
        overlay: string;
        overlayPlay: string;
        overlayRepeat: string;
    };
}
declare module "racing-bars/lib/renderer/buttons" {
    export const buttons: {
        skipBack: string;
        play: string;
        pause: string;
        skipForward: string;
        overlayPlay: string;
        overlayRepeat: string;
    };
}
declare module "racing-bars/lib/renderer/controls" {
    import type { Store } from "racing-bars/lib/store/index";
    import type { RenderOptions } from "racing-bars/lib/renderer/render-options";
    export function renderControls(store: Store, renderOptions: RenderOptions): void;
    export function updateControls(store: Store, renderOptions: RenderOptions): void;
    export function renderOverlays(store: Store, renderOptions: RenderOptions): void;
}
declare module "racing-bars/lib/renderer/render-initial-view" {
    import type { Store } from "racing-bars/lib/store/index";
    import type { Data } from "racing-bars/lib/data/index";
    import type { RenderOptions } from "racing-bars/lib/renderer/render-options";
    export function renderInitialView(data: Data[], store: Store, renderOptions: RenderOptions): void;
}
declare module "racing-bars/lib/renderer/render-frame" {
    import type { Data } from "racing-bars/lib/data/index";
    import type { Store } from "racing-bars/lib/store/index";
    import type { RenderOptions } from "racing-bars/lib/renderer/render-options";
    export function renderFrame(data: Data[], store: Store, renderOptions: RenderOptions): void;
}
declare module "racing-bars/lib/renderer/resize" {
    import type { Data } from "racing-bars/lib/data/index";
    import type { Store } from "racing-bars/lib/store/index";
    import type { RenderOptions } from "racing-bars/lib/renderer/render-options";
    export function resize(data: Data[], store: Store, renderOptions: RenderOptions): void;
}
declare module "racing-bars/lib/renderer/create-renderer" {
    import type { Data } from "racing-bars/lib/data/index";
    import type { Store } from "racing-bars/lib/store/index";
    import type { Renderer } from "racing-bars/lib/renderer/renderer.models";
    export function createRenderer(data: Data[], store: Store, root: HTMLElement): Renderer;
}
declare module "racing-bars/lib/renderer/resize-observer" {
    export function createResizeObserver(resizeFn: () => void): ResizeObserver | {
        observe: () => void;
        unobserve: () => void;
    };
}
declare module "racing-bars/lib/renderer/renderer-subscriber" {
    import type { Store } from "racing-bars/lib/store/index";
    import type { Renderer } from "racing-bars/lib/renderer/renderer.models";
    export function rendererSubscriber(store: Store, renderer: Renderer): () => void;
}
declare module "racing-bars/lib/renderer/index" {
    export { createRenderer } from "racing-bars/lib/renderer/create-renderer";
    export { createResizeObserver } from "racing-bars/lib/renderer/resize-observer";
    export { elements } from "racing-bars/lib/renderer/elements";
    export { rendererSubscriber } from "racing-bars/lib/renderer/renderer-subscriber";
    export type { Renderer } from "racing-bars/lib/renderer/renderer.models";
}
declare module "racing-bars/lib/events/models" {
    export interface TickDetails {
        date: string;
        isFirstDate: boolean;
        isLastDate: boolean;
        isRunning: boolean;
        allDates: string[];
    }
    export interface DOMCustomEvent {
        bubbles: boolean;
        detail: TickDetails;
    }
    export type EventType = 'dateChange' | 'firstDate' | 'lastDate' | 'play' | 'pause';
    export interface Event {
        element: HTMLElement | Document;
        userDefined: boolean;
        eventType: EventType | 'click' | 'keyup';
        handler: EventListener;
    }
}
declare module "racing-bars/lib/events/events" {
    import type { Store } from "racing-bars/lib/store/index";
    import type { Ticker } from "racing-bars/lib/ticker/index";
    import type { EventType, TickDetails } from "racing-bars/lib/events/models";
    export function registerEvents(store: Store, ticker: Ticker): {
        reregister: () => void;
        unregister: (removeUserDefined?: boolean) => void;
        addApiEventHandler: (eventType: EventType, handler: () => void) => {
            remove: () => void;
        };
    };
    export function getTickDetails(store: Store): TickDetails;
    export function DOMEventSubscriber(store: Store): () => void;
}
declare module "racing-bars/lib/events/index" {
    export * from "racing-bars/lib/events/events";
    export * from "racing-bars/lib/events/models";
}
declare module "racing-bars/lib/models" {
    import type { Options } from "racing-bars/lib/options/index";
    import type { TickDetails, EventType } from "racing-bars/lib/events/index";
    export interface Race {
        play: () => void;
        pause: () => void;
        toggle: () => void;
        skipBack: () => void;
        skipForward: () => void;
        inc: (value: number) => void;
        dec: (value: number) => void;
        setDate: (inputDate: string | Date) => void;
        getDate: () => string;
        getAllDates: () => string[];
        isRunning: () => boolean;
        select: (name: string) => void;
        unselect: (name: string) => void;
        unselectAll: () => void;
        hideGroup: (group: string) => void;
        showGroup: (group: string) => void;
        showOnlyGroup: (group: string) => void;
        showAllGroups: () => void;
        changeOptions: (newOptions: Partial<Options>) => Promise<void>;
        onDate: (date: string | Date, fn: ApiCallback) => void;
        on: (event: EventType, fn: ApiCallback) => void;
        destroy: () => void;
    }
    export type ApiMethod = (...args: unknown[]) => Race | string | string[] | boolean | void;
    export type ApiCallback = (tickDetails: TickDetails) => void;
}
declare module "racing-bars/lib/styles/style-inject" {
    export function styleInject(container: HTMLElement, theme: string, insertAt?: string, styles?: any, themes?: {
        light: any;
        dark: any;
    }): string;
}
declare module "racing-bars/lib/styles/index" {
    export { styleInject } from "racing-bars/lib/styles/style-inject";
}
declare module "racing-bars/lib/race" {
    import type { Data, WideData } from "racing-bars/lib/data/index";
    import { type Options } from "racing-bars/lib/options/index";
    import type { Race } from "racing-bars/lib/models";
    export function race(data: Data[] | WideData[] | Promise<Data[]> | Promise<WideData[]> | string, container?: string | HTMLElement, options?: Partial<Options>): Promise<Race>;
}
declare module "racing-bars/lib/index" {
    export type { Data, WideData } from "racing-bars/lib/data/index";
    export type { DOMCustomEvent, EventType, TickDetails } from "racing-bars/lib/events/index";
    export type { ApiCallback, Race } from "racing-bars/lib/models";
    export type { Options } from "racing-bars/lib/options/index";
    export { defaultOptions } from "racing-bars/lib/options/index";
    export { race } from "racing-bars/lib/race";
    export { loadData } from "racing-bars/lib/load-data";
    export { generateId } from "racing-bars/lib/utils/index";
}
declare module "racing-bars" {
    export type { Props } from "racing-bars/shared/index";
    export type { DOMCustomEvent, Race, Data, WideData } from "racing-bars/lib/index";
    export { loadData, race, generateId, defaultOptions } from "racing-bars/lib/index";
    import type { Options as AllOptions } from "racing-bars/lib/index";
    export type Options = Partial<AllOptions>;
}
declare module "racing-bars/vue" {
    import type { DefineComponent, AllowedComponentProps, ComponentCustomProps, ComponentOptionsMixin, ExtractPropTypes, RendererElement, RendererNode, VNode, VNodeProps } from '@vue/runtime-core';
    import { type Props } from "racing-bars/shared/index";
    const RacingBars: RacingBarsComponent;
    export default RacingBars;
    type RacingBarsComponent = DefineComponent<Props, () => VNode<RendererNode, RendererElement, {
        [key: string]: any;
    }>, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<Props>>, {}>;
}
declare module "racing-bars/lib/scroller" {
    import type { Store } from "racing-bars/lib/store/index";
    export function createScroller(store: Store): void;
}
declare module "racing-bars/lib/__test-utils/generate-test-data" {
    import type { Data } from "racing-bars/lib/index";
    export const generateTestData: (startDate?: string, endDate?: string, interval?: 'year' | 'month' | 'day') => Data[];
}
declare module "racing-bars/lib/__test-utils/index" {
    export * from "racing-bars/lib/__test-utils/generate-test-data";
}
declare module "racing-bars/lib/data/__tests__/data-action-creators.spec" { }
declare module "racing-bars/lib/data/__tests__/data-reducer.spec" { }
declare module "racing-bars/lib/options/__tests__/options-action-creators.spec" { }
declare module "racing-bars/lib/options/__tests__/options-reducer.spec" { }
declare module "racing-bars/lib/options/__tests__/validate-options.spec" { }
declare module "racing-bars/lib/store/__tests__/root-reducer.spec" { }
declare module "racing-bars/lib/store/__tests__/store.spec" { }
declare module "racing-bars/lib/styles/__tests__/style-inject.spec" { }
declare module "racing-bars/lib/ticker/__tests__/ticker-action-creators.spec" { }
declare module "racing-bars/lib/ticker/__tests__/ticker-reducer.spec" { }
declare module "racing-bars/lib/ticker/__tests__/ticker.spec" { }
declare module "racing-bars/lib/utils/__tests__/data/get-date-slice.spec" { }
declare module "racing-bars/lib/utils/__tests__/dates/format-date.spec" { }
declare module "racing-bars/lib/utils/__tests__/dates/get-date-range.spec" { }
declare module "racing-bars/lib/utils/__tests__/dates/get-date-string.spec" { }
declare module "racing-bars/lib/utils/__tests__/dates/get-dates.spec" { }
declare module "racing-bars/lib/utils/__tests__/dates/get-next-date.spec" { }
declare module "racing-bars/lib/utils/__tests__/utils/generate-id.spec" { }
declare module "racing-bars/lib/utils/__tests__/utils/get-color.spec" { }
declare module "racing-bars/lib/utils/__tests__/utils/get-element.spec" { }
declare module "racing-bars/lib/utils/__tests__/utils/get-icon-id.spec" { }
declare module "racing-bars/lib/utils/__tests__/utils/get-text.spec" { }
declare module "racing-bars/lib/utils/__tests__/utils/hide-element.spec" { }
declare module "racing-bars/lib/utils/__tests__/utils/pipe.spec" { }
declare module "racing-bars/lib/utils/__tests__/utils/random.spec" { }
declare module "racing-bars/lib/utils/__tests__/utils/remove-element.spec" { }
declare module "racing-bars/lib/utils/__tests__/utils/safe-name.spec" { }
declare module "racing-bars/lib/utils/__tests__/utils/show-element.spec" { }
declare module "racing-bars/lib/utils/__tests__/utils/shuffle.spec" { }
declare module "racing-bars/lib/utils/__tests__/utils/toggle-class.spec" { }
declare module "racing-bars/lib/utils/__tests__/utils/zero-pad.spec" { }
declare module "racing-bars/lib/worker/prepare-data" {
    import type { Data, WideData } from "racing-bars/lib/data/index";
    import type { Options } from "racing-bars/lib/options/index";
    export function prepareData(data: Data[] | WideData[] | Promise<Data[]> | Promise<WideData[]> | string, options: Options, baseUrl: string): Promise<Data[]>;
}
declare module "racing-bars/lib/worker/index" { }
declare module "racing-bars/react" {
    import { type Props } from "racing-bars/shared/index";
    export default function RacingBars(props: Props & {
        children?: React.ReactNode;
    }): import("react/jsx-runtime").JSX.Element;
}
