import React from "react";
import { NavigateFunction } from "react-router-dom";
import { RegularFeatureViewCustomTabRegistrationInterface, OnDemandFeatureViewCustomTabRegistrationInterface, StreamFeatureViewCustomTabRegistrationInterface, FeatureServiceCustomTabRegistrationInterface, FeatureCustomTabRegistrationInterface, DataSourceCustomTabRegistrationInterface, EntityCustomTabRegistrationInterface, DatasetCustomTabRegistrationInterface } from "./types";
interface FeastTabsRegistryInterface {
    RegularFeatureViewCustomTabs?: RegularFeatureViewCustomTabRegistrationInterface[];
    OnDemandFeatureViewCustomTabs?: OnDemandFeatureViewCustomTabRegistrationInterface[];
    StreamFeatureViewCustomTabs?: StreamFeatureViewCustomTabRegistrationInterface[];
    FeatureServiceCustomTabs?: FeatureServiceCustomTabRegistrationInterface[];
    FeatureCustomTabs?: FeatureCustomTabRegistrationInterface[];
    DataSourceCustomTabs?: DataSourceCustomTabRegistrationInterface[];
    EntityCustomTabs?: EntityCustomTabRegistrationInterface[];
    DatasetCustomTabs?: DatasetCustomTabRegistrationInterface[];
}
interface NavigationTabInterface {
    label: string;
    isSelected: boolean;
    onClick: () => void;
}
declare const TabsRegistryContext: React.Context<FeastTabsRegistryInterface>;
declare const useRegularFeatureViewCustomTabs: (navigate: NavigateFunction) => {
    customNavigationTabs: NavigationTabInterface[];
};
declare const useOnDemandFeatureViewCustomTabs: (navigate: NavigateFunction) => {
    customNavigationTabs: NavigationTabInterface[];
};
declare const useStreamFeatureViewCustomTabs: (navigate: NavigateFunction) => {
    customNavigationTabs: NavigationTabInterface[];
};
declare const useFeatureServiceCustomTabs: (navigate: NavigateFunction) => {
    customNavigationTabs: NavigationTabInterface[];
};
declare const useFeatureCustomTabs: (navigate: NavigateFunction) => {
    customNavigationTabs: NavigationTabInterface[];
};
declare const useDataSourceCustomTabs: (navigate: NavigateFunction) => {
    customNavigationTabs: NavigationTabInterface[];
};
declare const useEntityCustomTabs: (navigate: NavigateFunction) => {
    customNavigationTabs: NavigationTabInterface[];
};
declare const useDatasetCustomTabs: (navigate: NavigateFunction) => {
    customNavigationTabs: NavigationTabInterface[];
};
declare const useRegularFeatureViewCustomTabRoutes: () => import("react/jsx-runtime").JSX.Element[];
declare const useOnDemandFeatureViewCustomTabRoutes: () => import("react/jsx-runtime").JSX.Element[];
declare const useStreamFeatureViewCustomTabRoutes: () => import("react/jsx-runtime").JSX.Element[];
declare const useFeatureServiceCustomTabRoutes: () => import("react/jsx-runtime").JSX.Element[];
declare const useEntityCustomTabRoutes: () => import("react/jsx-runtime").JSX.Element[];
declare const useDataSourceCustomTabRoutes: () => import("react/jsx-runtime").JSX.Element[];
declare const useFeatureCustomTabRoutes: () => import("react/jsx-runtime").JSX.Element[];
declare const useDatasetCustomTabRoutes: () => import("react/jsx-runtime").JSX.Element[];
export default TabsRegistryContext;
export { useRegularFeatureViewCustomTabs, useOnDemandFeatureViewCustomTabs, useStreamFeatureViewCustomTabs, useFeatureServiceCustomTabs, useFeatureCustomTabs, useDataSourceCustomTabs, useEntityCustomTabs, useDatasetCustomTabs, useRegularFeatureViewCustomTabRoutes, useOnDemandFeatureViewCustomTabRoutes, useStreamFeatureViewCustomTabRoutes, useFeatureServiceCustomTabRoutes, useFeatureCustomTabRoutes, useDataSourceCustomTabRoutes, useEntityCustomTabRoutes, useDatasetCustomTabRoutes, };
export type { FeastTabsRegistryInterface };
//# sourceMappingURL=TabsRegistryContext.d.ts.map