// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
// Code generated by Microsoft (R) AutoRest Code Generator.

package com.azure.maps.timezone.models;

import com.azure.core.annotation.Immutable;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.time.OffsetDateTime;
import java.util.List;

/** This object is returned from a successful Timezone By ID call or By Coordinates call. */
@Immutable
public final class TimeZoneResult {
    /*
     * Version property
     */
    @JsonProperty(value = "Version", access = JsonProperty.Access.WRITE_ONLY)
    private String version;

    /*
     * Reference Utc Timestamp property
     */
    @JsonProperty(value = "ReferenceUtcTimestamp", access = JsonProperty.Access.WRITE_ONLY)
    private OffsetDateTime referenceUtcTimestamp;

    /*
     * TimeZoneId array
     */
    @JsonProperty(value = "TimeZones", access = JsonProperty.Access.WRITE_ONLY)
    private List<TimeZoneId> timeZones;

    /** Set default TimeZoneResult constructor to private */
    private TimeZoneResult() {}

    /**
     * Get the version property: Version property.
     *
     * @return the version value.
     */
    public String getVersion() {
        return this.version;
    }

    /**
     * Get the referenceUtcTimestamp property: Reference Utc Timestamp property.
     *
     * @return the referenceUtcTimestamp value.
     */
    public OffsetDateTime getReferenceUtcTimestamp() {
        return this.referenceUtcTimestamp;
    }

    /**
     * Get the timeZones property: TimeZoneId array.
     *
     * @return the timeZones value.
     */
    public List<TimeZoneId> getTimeZones() {
        return this.timeZones;
    }
}
