import { type ComputedRef, type Ref } from "vue";
import { type UseAiAgentContextOptions, type UseAiAgentContextReturn } from "@vc-shell/framework";
interface ContextItem {
    id: string | undefined;
    objectType: string | undefined;
    name?: string | undefined;
    [key: string]: unknown;
}
export interface UseAiAgentContextWithStoreOptions<T extends ContextItem> {
    /**
     * The blade's real data. If a single object is passed it gets wrapped in an
     * array before being merged with the store sentinel, which switches the
     * context into "list" mode and trims item fields down to {id, objectType,
     * name} per the useAiAgentContext contract. Merging a full "details" object
     * together with the sentinel is not possible under the current vc-shell
     * contract — that is a framework limitation, not a limitation of this wrapper.
     */
    dataRef?: Ref<T | T[] | null | undefined> | ComputedRef<T | T[] | null | undefined>;
    suggestions?: UseAiAgentContextOptions<T>["suggestions"];
}
export default function useAiAgentContextWithStore<T extends ContextItem = ContextItem>(options?: UseAiAgentContextWithStoreOptions<T>): UseAiAgentContextReturn;
export {};
//# sourceMappingURL=index.d.ts.map