import { UseQueryResult } from '@tanstack/react-query';
import { default as React } from 'react';
import { CubeMetaResponse } from '../hooks/use-meta-query';
import { Agent } from '../types/agent';
import { DataAsset, SemanticView } from '../types/data-assets';

type CubeMetaContextContextValue = {
    selectedDataAssetId: string | null | undefined;
    setSelectedDataAssetId: (id: string | null | undefined) => void;
    isDataAssetsExpanded: boolean;
    toggleDataAssetsExpanded: () => void;
    dataAssets: DataAsset[] | null;
    getDataAssetById: (id: string) => any;
    selectedDataAsset: DataAsset | SemanticView | undefined;
    dataAssetsLoading: boolean;
    semanticViews: SemanticView[];
    cubeTitleMap: Record<string, string>;
    refetchDataAssets: UseQueryResult<CubeMetaResponse | undefined>['refetch'];
    hasFetchedAssets: boolean;
    dataAssetsError: Error | null;
    hasNoSemanticViews: boolean;
};
export declare const useCubeMetaContext: <Selected = CubeMetaContextContextValue>(selector?: ((value: CubeMetaContextContextValue) => Selected) | undefined, eqlFn?: import('../utils').EqualityFn<Selected> | undefined) => Selected, CubeMetaContext: import('use-context-selector').Context<CubeMetaContextContextValue>;
type Props = {
    children: React.ReactNode;
    agent?: Agent;
};
export declare function CubeMetaContextProvider({ agent, children }: Props): import("react/jsx-runtime").JSX.Element;
export {};
//# sourceMappingURL=CubeMetaContextProvider.d.ts.map