import type { Location } from "history";
import type { Collection, CollectionId } from "@metabase/embedding-sdk-react/dist/frontend/src/metabase-types/api";
import type { State } from "@metabase/embedding-sdk-react/dist/frontend/src/metabase-types/store";
type Props = {
    collectionId?: Collection["id"];
    location?: Location;
    params?: {
        collectionId?: Collection["id"];
        slug?: string;
    };
};
declare function byCollectionIdProp(state: State, { collectionId }: Props): CollectionId | undefined;
declare function byCollectionIdNavParam(state: State, { params }: Props): CollectionId | undefined;
declare function byCollectionUrlId(state: State, { params, location }: Props): false | "" | CollectionId | undefined;
declare function byCollectionQueryParameter(state: State, { location }: Props): string | string[] | null | undefined;
declare const getInitialCollectionId: ((state: any, params_0: Props) => number | null) & {
    clearCache: () => void;
    resultsCount: () => number;
    resetResultsCount: () => void;
} & {
    resultFunc: (resultFuncArgs_0: Record<CollectionId, Collection>, resultFuncArgs_1: CollectionId | undefined, resultFuncArgs_2: CollectionId | undefined, resultFuncArgs_3: CollectionId | undefined, resultFuncArgs_4: false | "" | CollectionId | undefined, resultFuncArgs_5: string | string[] | null | undefined) => number | null;
    memoizedResultFunc: ((resultFuncArgs_0: Record<CollectionId, Collection>, resultFuncArgs_1: CollectionId | undefined, resultFuncArgs_2: CollectionId | undefined, resultFuncArgs_3: CollectionId | undefined, resultFuncArgs_4: false | "" | CollectionId | undefined, resultFuncArgs_5: string | string[] | null | undefined) => number | null) & {
        clearCache: () => void;
        resultsCount: () => number;
        resetResultsCount: () => void;
    };
    lastResult: () => number | null;
    dependencies: [(state: any) => Record<CollectionId, Collection>, ((state: State) => CollectionId | undefined) & {
        clearCache: () => void;
        resultsCount: () => number;
        resetResultsCount: () => void;
    } & {
        resultFunc: (resultFuncArgs_0: import("@metabase/embedding-sdk-react/dist/frontend/src/metabase-types/api").User | null) => CollectionId | undefined;
        memoizedResultFunc: ((resultFuncArgs_0: import("@metabase/embedding-sdk-react/dist/frontend/src/metabase-types/api").User | null) => CollectionId | undefined) & {
            clearCache: () => void;
            resultsCount: () => number;
            resetResultsCount: () => void;
        };
        lastResult: () => CollectionId | undefined;
        dependencies: [(state: State) => import("@metabase/embedding-sdk-react/dist/frontend/src/metabase-types/api").User | null];
        recomputations: () => number;
        resetRecomputations: () => void;
        dependencyRecomputations: () => number;
        resetDependencyRecomputations: () => void;
    } & {
        argsMemoize: typeof import("reselect").weakMapMemoize;
        memoize: typeof import("reselect").weakMapMemoize;
    }, typeof byCollectionIdProp, typeof byCollectionIdNavParam, typeof byCollectionUrlId, typeof byCollectionQueryParameter];
    recomputations: () => number;
    resetRecomputations: () => void;
    dependencyRecomputations: () => number;
    resetDependencyRecomputations: () => void;
} & {
    argsMemoize: typeof import("reselect").weakMapMemoize;
    memoize: typeof import("reselect").weakMapMemoize;
};
export default getInitialCollectionId;
