@tanstack/db
Version:
A reactive client store for building super fast apps on sync
15 lines (14 loc) • 904 B
text/typescript
import { CollectionImpl } from "../../collection/index.cjs";
import { CollectionOptionsIdentity } from "../../collection-options.cjs";
import { QueryIR } from "../ir.cjs";
export type CollectionResolver = (options: CollectionOptionsIdentity<any, string | number, any, any, any>) => CollectionImpl<any, string | number, any, any, any>;
/**
* Gives every query-source placement its own runtime source identities.
*
* A reused builder describes the same query meaning, but each FROM, JOIN,
* UNION, or include placement owns an independent position in the dataflow
* graph. Expressions are immutable and can remain shared; source refs cannot
* because their sourceId identifies that lexical position. A supplied
* resolver also binds any retained descriptors while cloning the plan.
*/
export declare function cloneQueryForPlacement(query: QueryIR, resolveCollection?: CollectionResolver): QueryIR;