export type EnsureKeys< T extends Record, K extends (keyof T)[], > = { [P in K[number]]: T[P]; // At least one key 'K' from 'T' } & Partial; // Other keys of 'T' are optional