export type TreeTransformerNextCallback<
	T extends readonly unknown[],
	U,
	C extends object | null = null
> = (nodes: T, context?: C) => U;
export type TreeTransformer<
	T extends readonly unknown[],
	U,
	C extends object | null = null
> = (nodes: T, next: TreeTransformerNextCallback<T, U, C>, context: C) => U;
export declare function transformTree<
	T extends readonly unknown[],
	U,
	C extends object | null = null
>(nodes: T, context: C, transformer: TreeTransformer<T, U, C>): U;
