/** * The money `ViaBinding` — wires the money engine (normalize/paths/where/ * money-reducer) into the kernel's generic Via port. `money()` * (descriptor.ts) calls {@link linkMoneyVia} at declaration time — the * same #553 static-link pattern the retired `linkMoneyEngine()` / * `kernel/money-runtime.ts` seam used, now the only one (Task 6 cut the * query DSL over to this binding and deleted the legacy seam). */ import type { ViaBinding } from '../../kernel/via/index.js'; import type { MoneyDescriptor } from './descriptor.js'; /** #669 — the money binder's config bag. `virtualMoneyFields` is the money∩virtual-mode- * computed field-name intersection (`kernel/collection-config.ts#resolveVirtualMoneyFields`); * absent/empty means no field on this collection composes money with a virtual computed * field on itself — the pre-#669 behavior (no `presentLate`, ordinary `present()` for * every declared money field). */ export interface MoneyBindingConfig { readonly moneyFields: Record; readonly virtualMoneyFields?: ReadonlySet; } export declare function moneyBinding(moneyFields: Record, virtualMoneyFields?: ReadonlySet): ViaBinding; export declare function linkMoneyVia(): void;