import { Types } from 'mongoose'; declare type ExcludeBaseType = Exclude; declare type ExcludeFromArray = T extends Array ? Array> : ExcludeBaseType; declare type PopulateItem = Omit & { [x in P]: ExcludeFromArray; }; export declare type MaybeItem = T extends Array ? U : T; export declare type Populate = T extends Array ? P extends keyof U ? Array> : T : P extends keyof T ? PopulateItem : T; export {};