import { UnaryCall } from "@protobuf-ts/runtime-rpc";
import { BatchUpsertRequest, BatchUpsertResponse, QueryRequest, QueryResponse } from "@versesdev/proto-kortex/hstp/v1/hstp.ts";
import { FilledModelHSML } from "../hsml-types";
import { Mesh } from "@babylonjs/core";
export interface IGeniusCoreStore {
    meshes: {
        [key: string]: any;
    };
    upsertEntity: (entity: string) => UnaryCall<BatchUpsertRequest, BatchUpsertResponse>;
    query: (query: string) => UnaryCall<QueryRequest, QueryResponse>;
    cleanedQuery: (query: string) => Promise<any>;
    addMeshListener: (entity: FilledModelHSML, mesh: Mesh) => void;
    removeMeshListener: (swid: string) => void;
}
declare const useGeniusCoreStore: import("zustand").UseBoundStore<import("zustand").StoreApi<IGeniusCoreStore>>;
export default useGeniusCoreStore;
