export type AndByDiscriminatingKey< DiscriminatingKey extends string, U1 extends Record, U2 extends Record, > = AndByDiscriminatingKey.Tf1; export declare namespace AndByDiscriminatingKey { export type Tf1< DiscriminatingKey extends string, U1, U1Again extends Record, U2 extends Record, > = U1 extends Pick ? Tf2 : U1; export type Tf2< DiscriminatingKey extends string, SingletonU1 extends Record, U2, U1 extends Record, > = U2 extends Pick ? U2 & SingletonU1 : U2 extends Pick ? never : U2; }