/*
* Copyright (c) Microsoft Corporation.
* Licensed under the MIT License.
*
* Code generated by Microsoft (R) AutoRest Code Generator.
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/
import { PagedAsyncIterableIterator } from "@azure/core-paging";
import {
RoleDefinition,
RoleDefinitionsListOptionalParams,
RoleDefinitionsDeleteOptionalParams,
RoleDefinitionsDeleteResponse,
RoleDefinitionsGetOptionalParams,
RoleDefinitionsGetResponse,
RoleDefinitionsCreateOrUpdateOptionalParams,
RoleDefinitionsCreateOrUpdateResponse,
RoleDefinitionsGetByIdOptionalParams,
RoleDefinitionsGetByIdResponse
} from "../models";
///
/** Interface representing a RoleDefinitions. */
export interface RoleDefinitions {
/**
* Get all role definitions that are applicable at scope and above.
* @param scope The scope of the role definition.
* @param options The options parameters.
*/
list(
scope: string,
options?: RoleDefinitionsListOptionalParams
): PagedAsyncIterableIterator;
/**
* Deletes a role definition.
* @param scope The scope of the role definition.
* @param roleDefinitionId The ID of the role definition to delete.
* @param options The options parameters.
*/
delete(
scope: string,
roleDefinitionId: string,
options?: RoleDefinitionsDeleteOptionalParams
): Promise;
/**
* Get role definition by name (GUID).
* @param scope The scope of the role definition.
* @param roleDefinitionId The ID of the role definition.
* @param options The options parameters.
*/
get(
scope: string,
roleDefinitionId: string,
options?: RoleDefinitionsGetOptionalParams
): Promise;
/**
* Creates or updates a role definition.
* @param scope The scope of the role definition.
* @param roleDefinitionId The ID of the role definition.
* @param roleDefinition The values for the role definition.
* @param options The options parameters.
*/
createOrUpdate(
scope: string,
roleDefinitionId: string,
roleDefinition: RoleDefinition,
options?: RoleDefinitionsCreateOrUpdateOptionalParams
): Promise;
/**
* Gets a role definition by ID.
* @param roleId The fully qualified role definition ID. Use the format,
* /subscriptions/{guid}/providers/Microsoft.Authorization/roleDefinitions/{roleDefinitionId} for
* subscription level role definitions, or
* /providers/Microsoft.Authorization/roleDefinitions/{roleDefinitionId} for tenant level role
* definitions.
* @param options The options parameters.
*/
getById(
roleId: string,
options?: RoleDefinitionsGetByIdOptionalParams
): Promise;
}