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

package com.azure.resourcemanager.agrifood.models;

import com.azure.resourcemanager.agrifood.fluent.models.ExtensionInner;

/** An immutable client-side representation of Extension. */
public interface Extension {
    /**
     * Gets the id property: Fully qualified resource Id for the resource.
     *
     * @return the id value.
     */
    String id();

    /**
     * Gets the name property: The name of the resource.
     *
     * @return the name value.
     */
    String name();

    /**
     * Gets the type property: The type of the resource.
     *
     * @return the type value.
     */
    String type();

    /**
     * Gets the etag property: The ETag value to implement optimistic concurrency.
     *
     * @return the etag value.
     */
    String etag();

    /**
     * Gets the extensionId property: Extension Id.
     *
     * @return the extensionId value.
     */
    String extensionId();

    /**
     * Gets the extensionCategory property: Extension category. e.g. weather/sensor/satellite.
     *
     * @return the extensionCategory value.
     */
    String extensionCategory();

    /**
     * Gets the installedExtensionVersion property: Installed extension version.
     *
     * @return the installedExtensionVersion value.
     */
    String installedExtensionVersion();

    /**
     * Gets the extensionAuthLink property: Extension auth link.
     *
     * @return the extensionAuthLink value.
     */
    String extensionAuthLink();

    /**
     * Gets the extensionApiDocsLink property: Extension api docs link.
     *
     * @return the extensionApiDocsLink value.
     */
    String extensionApiDocsLink();

    /**
     * Gets the inner com.azure.resourcemanager.agrifood.fluent.models.ExtensionInner object.
     *
     * @return the inner object.
     */
    ExtensionInner innerModel();
}
