Change the get data stream api to include the following properties of a data stream:

- ~~Add `index_mode` from `DataStream` to the response.~~
- For each backing index of a data stream with time series index mode, include the temporal range the backing index represents (based on the `index.time_series.start_time` and `index.time_series.end_time` index settings.
server/src/main/java/org/elasticsearch/action/datastreams/GetDataStreamAction.java
builder.field(SYSTEM_FIELD.getPreferredName(), dataStream.isSystem());
                builder.field(ALLOW_CUSTOM_ROUTING.getPreferredName(), dataStream.isAllowCustomRouting());
                builder.field(REPLICATED.getPreferredName(), dataStream.isReplicated());
                builder.endObject();
                return builder;
            }
            @Override
            public boolean equals(Object o) {
                if (this == o) return true;
                if (o == null || getClass() != o.getClass()) return false;
                DataStreamInfo that = (DataStreamInfo) o;
                return dataStream.equals(that.dataStream)
                    && dataStreamStatus == that.dataStreamStatus
                    && Objects.equals(indexTemplate, that.indexTemplate)
                    && Objects.equals(ilmPolicyName, that.ilmPolicyName);
            }
            @Override
            public int hashCode() {
                return Objects.hash(dataStream, dataStreamStatus, indexTemplate, ilmPolicyName);
            }
        }
        private final List<DataStreamInfo> dataStreams;
        public Response(List<DataStreamInfo> dataStreams) {
            this.dataStreams = dataStreams;
        }
        public Response(StreamInput in) throws IOException {
            this(in.readList(DataStreamInfo::new));
        }
        public List<DataStreamInfo> getDataStreams() {
            return dataStreams;