export type NgChanges> = { [Key in keyof Props]: { previousValue: Props[Key]; currentValue: Props[Key]; firstChange: boolean; isFirstChange(): boolean; }; }; type ExcludeFunctionPropertyNames = MarkFunctionProperties[keyof T]; type MarkFunctionProperties = { [Key in keyof Component]: Component[Key] extends Function ? never : Key; }; type ExcludeFunctions = Pick>; export {};