function utilRebind(target, source, ...args) {
    for (const method of args) {
        target[method] = d3_rebind(target, source, source[method]);
    }
    return target;
}
@template T
@template S
@template {keyof S} Args
@param {T} target
@param {S} source
@param {...Args} args
@returns {T & Pick<S, Args>}