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

package com.azure.data.appconfiguration.implementation.models;

import com.azure.core.util.ExpandableStringEnum;
import java.util.Collection;

/** Defines values for SnapshotFields. */
public final class SnapshotFields extends ExpandableStringEnum<SnapshotFields> {
    /** Static value name for SnapshotFields. */
    public static final SnapshotFields NAME = fromString("name");

    /** Static value status for SnapshotFields. */
    public static final SnapshotFields STATUS = fromString("status");

    /** Static value filters for SnapshotFields. */
    public static final SnapshotFields FILTERS = fromString("filters");

    /** Static value composition_type for SnapshotFields. */
    public static final SnapshotFields COMPOSITION_TYPE = fromString("composition_type");

    /** Static value created for SnapshotFields. */
    public static final SnapshotFields CREATED = fromString("created");

    /** Static value expires for SnapshotFields. */
    public static final SnapshotFields EXPIRES = fromString("expires");

    /** Static value retention_period for SnapshotFields. */
    public static final SnapshotFields RETENTION_PERIOD = fromString("retention_period");

    /** Static value size for SnapshotFields. */
    public static final SnapshotFields SIZE = fromString("size");

    /** Static value items_count for SnapshotFields. */
    public static final SnapshotFields ITEMS_COUNT = fromString("items_count");

    /** Static value tags for SnapshotFields. */
    public static final SnapshotFields TAGS = fromString("tags");

    /** Static value etag for SnapshotFields. */
    public static final SnapshotFields ETAG = fromString("etag");

    /**
     * Creates a new instance of SnapshotFields value.
     *
     * @deprecated Use the {@link #fromString(String)} factory method.
     */
    @Deprecated
    public SnapshotFields() {}

    /**
     * Creates or finds a SnapshotFields from its string representation.
     *
     * @param name a name to look for.
     * @return the corresponding SnapshotFields.
     */
    public static SnapshotFields fromString(String name) {
        return fromString(name, SnapshotFields.class);
    }

    /**
     * Gets known SnapshotFields values.
     *
     * @return known SnapshotFields values.
     */
    public static Collection<SnapshotFields> values() {
        return values(SnapshotFields.class);
    }
}
