/** QueryRunner - pure executor for QueryPlan instances. */
import type QueryPlan from './QueryPlan.ts';
import { type AggregateResult } from './QueryAggregation.ts';
import type { QueryPropertyBag, QueryReadModelProvider } from './QueryReadModelProvider.ts';
type QueryResultNode = {
    id?: string;
    props?: QueryPropertyBag;
};
export type QueryResult = {
    stateHash: string;
    nodes: QueryResultNode[];
};
export default class QueryRunner {
    #private;
    constructor(provider: QueryReadModelProvider);
    run(plan: QueryPlan): Promise<QueryResult | AggregateResult>;
}
export {};
