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

package com.azure.resourcemanager.webpubsub.models;

import com.azure.resourcemanager.webpubsub.fluent.models.OperationInner;

/** An immutable client-side representation of Operation. */
public interface Operation {
    /**
     * Gets the name property: Name of the operation with format: {provider}/{resource}/{operation}.
     *
     * @return the name value.
     */
    String name();

    /**
     * Gets the isDataAction property: If the operation is a data action. (for data plane rbac).
     *
     * @return the isDataAction value.
     */
    Boolean isDataAction();

    /**
     * Gets the display property: The object that describes a operation.
     *
     * @return the display value.
     */
    OperationDisplay display();

    /**
     * Gets the origin property: Optional. The intended executor of the operation; governs the display of the operation
     * in the RBAC UX and the audit logs UX.
     *
     * @return the origin value.
     */
    String origin();

    /**
     * Gets the properties property: Extra Operation properties.
     *
     * @return the properties value.
     */
    OperationProperties properties();

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