public static PropertyInfo[] GetProperties(Type type) => (type.IsInterface ? InterfaceQueries.GetProperties(type) : ClassQueries.GetPublicImplementedProperties(type)).ToArray();