class ColumnSchema {

  @Override
  public boolean equals(Object other) {
    if (this == other) {
      return true;
    }
    if (!(other instanceof ColumnSchema)) {
      return false;
    }
    ColumnSchema that = (ColumnSchema) other;
    return Objects.equals(type, that.getType())
        && Objects.equals(ephemeral, that.getEphemeral())
        && Objects.equals(mutable, that.getMutable());
  }

  public  ColumnSchema(Type type);
  @JsonCreator public  ColumnSchema(
      @JsonProperty(value = "type", required = true) Type type,
      @JsonProperty(value = "ephemeral") Boolean ephemeral,
      @JsonProperty(value = "mutable") Boolean mutable
  );

}