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