getCustomProperty<T>  method 
Implementation
T? getCustomProperty<T>(String key) {
  final value = customProperties?[key];
  if (value is T) {
    return value;
  }
  return null;
}T? getCustomProperty<T>(String key) {
  final value = customProperties?[key];
  if (value is T) {
    return value;
  }
  return null;
}