import { BaseQueryBuilder } from "./builder/index.cjs";
import { Collection } from "../collection/index.cjs";
/**
 * The identity of a query a partition can serve with no residual conjunct:
 * its source and its `eq` fields and literals, which determine its rows.
 * Undefined for any other query, which keeps the full structural identity.
 */
export declare function getPooledQueryIdentity(query: BaseQueryBuilder): string | undefined;
/**
 * A pooled view for a query a partition can serve, or undefined. The view is
 * typed as the Collection it stands in for.
 */
export declare function createPooledLiveQuery(query: BaseQueryBuilder, { gcTime }?: {
    gcTime?: number;
}): Collection<any, any, any> | undefined;
/**
 * Pooled live queries for framework hooks. Pass it as `pool` in a hook's
 * query config to serve equality-filtered queries of one shape from a shared
 * partition. Apps that do not pass it do not bundle pooling.
 */
export declare const pooledLiveQueries: {
    createPooledLiveQuery: typeof createPooledLiveQuery;
    getPooledQueryIdentity: typeof getPooledQueryIdentity;
};
export type PooledLiveQueries = typeof pooledLiveQueries;
