interface Node { next: Node | null; } interface Constructor<T> { new(): T; } declare function reusify<T extends Node>(constructor: Constructor<T>): { get(): T; release(node: T): void; }; export = reusify;