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

package com.azure.resourcemanager.recoveryservices.models;

import com.azure.resourcemanager.recoveryservices.fluent.models.ReplicationUsageInner;

/** An immutable client-side representation of ReplicationUsage. */
public interface ReplicationUsage {
    /**
     * Gets the monitoringSummary property: Summary of the replication monitoring data for this vault.
     *
     * @return the monitoringSummary value.
     */
    MonitoringSummary monitoringSummary();

    /**
     * Gets the jobsSummary property: Summary of the replication jobs data for this vault.
     *
     * @return the jobsSummary value.
     */
    JobsSummary jobsSummary();

    /**
     * Gets the protectedItemCount property: Number of replication protected items for this vault.
     *
     * @return the protectedItemCount value.
     */
    Integer protectedItemCount();

    /**
     * Gets the recoveryPlanCount property: Number of replication recovery plans for this vault.
     *
     * @return the recoveryPlanCount value.
     */
    Integer recoveryPlanCount();

    /**
     * Gets the registeredServersCount property: Number of servers registered to this vault.
     *
     * @return the registeredServersCount value.
     */
    Integer registeredServersCount();

    /**
     * Gets the recoveryServicesProviderAuthType property: The authentication type of recovery service providers in the
     * vault.
     *
     * @return the recoveryServicesProviderAuthType value.
     */
    Integer recoveryServicesProviderAuthType();

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