BasicJoin

source
type BasicJoin<T, Name extends string, U> = T & {
  [K in StringKeyOf<U> as `${Name}.${K}`]: U[K] | undefined;
};