import type { Node } from './types.js';
declare const isObject: (value: unknown) => value is object;
declare const isUndefined: (value: unknown) => value is undefined;
declare const last: <T>(values: T[]) => T | undefined;
declare const traverse: <Keys extends unknown[], Value>(node: Node<Value>, keys: Keys) => Node<Value>[];
declare const weakize: <T>(values: T[]) => (T | WeakRef<object>)[];
declare const unweakize: <T>(values: (T | WeakRef<object>)[]) => (T | object | undefined)[];
export { isObject, isUndefined, last, traverse, weakize, unweakize };
