import { type IsRecommendedItem } from '@atlaskit/editor-common/quick-insert/is-recommended-item';
import type { ExtractInjectionAPI } from '@atlaskit/editor-common/types';
import type { RegisterComponent, RegisterMenuItem, SurfaceContext } from '@atlaskit/editor-ui-control-model/types';
import type { QuickInsertPlugin } from '../quickInsertPluginType';
export declare const MAX_RECOMMENDED_ITEMS = 5;
export declare const RECOMMENDED_SLOT_KEY_PREFIX = "quick-insert-recommended-slot-";
export declare const isRecommendedSlotKey: (key: string) => boolean;
export declare const getRecommendedComponents: ({ components, context, isRecommendedItem, }: {
    components: RegisterComponent[];
    context: SurfaceContext;
    isRecommendedItem?: IsRecommendedItem;
}) => RegisterMenuItem[];
/** Keeps only the current menu-open recommendation snapshot. */
type RecommendedSnapshotCache = {
    getSnapshot: (surfaceContext?: SurfaceContext) => RegisterMenuItem[];
};
export declare const createRecommendedSnapshotCache: ({ api, isRecommendedItem, }: {
    api: ExtractInjectionAPI<QuickInsertPlugin> | undefined;
    isRecommendedItem?: IsRecommendedItem;
}) => RecommendedSnapshotCache;
export {};
