import { r as TraverseOptions, t as TraverseContext } from "../node_modules/.pnpm/neotraverse@1.0.1/node_modules/neotraverse/dist/utils-Bfb1gHfd.mjs"; //#region src/traverse/traverse-reduce.d.ts /** * Folds every node of `value` into a single accumulator, depth-first. The * `callback` receives the traversal `context`, the current `accumulator` and * the node, and returns the next accumulator. * @param value - The (possibly nested) value to reduce. * @param callback - Invoked as `(context, accumulator, node)` for every node. * @param initialValue - The starting accumulator. * @param options - Traversal options (`immutable`, `includeSymbols`, `maxDepth`, ...). * @returns The final accumulator. * @example * traverseReduce( * {a: 1, b: 2}, * (_context, accumulator, node) => accumulator + (typeof node === 'number' ? node : 0), * 0, * ); * // 3 */ declare const traverseReduce: (value: unknown, callback: (context: TraverseContext, accumulator: Accumulator, node: unknown) => Accumulator, initialValue?: Accumulator, options?: TraverseOptions) => Accumulator; //#endregion export { traverseReduce };