export declare type Defined = T extends undefined ? never : T; export declare type MinusKeys = Pick>; export declare type MergedProperties = { [K in keyof T & keyof U]: undefined extends T[K] ? Defined : T[K]; }; export declare function extend(a: Readonly, ...os: Array>): Readonly> & Pick> & MergedProperties>;