class Setting {

  public static <T> Setting<T> of(String name, String description, Property<T> property) {
    return of(name, description, property, null);
  }

  private  Setting(String name, String description, Property<T> property, Class<? extends T> type);

}