import { Command as $Command } from "@smithy/smithy-client"; import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { GrafanaClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../GrafanaClient"; import type { UpdatePermissionsRequest, UpdatePermissionsResponse } from "../models/models_0"; /** * @public */ export type { __MetadataBearer }; export { $Command }; /** * @public * * The input for {@link UpdatePermissionsCommand}. */ export interface UpdatePermissionsCommandInput extends UpdatePermissionsRequest { } /** * @public * * The output of {@link UpdatePermissionsCommand}. */ export interface UpdatePermissionsCommandOutput extends UpdatePermissionsResponse, __MetadataBearer { } declare const UpdatePermissionsCommand_base: { new (input: UpdatePermissionsCommandInput): import("@smithy/smithy-client").CommandImpl; new (input: UpdatePermissionsCommandInput): import("@smithy/smithy-client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions; }; /** *

Updates which users in a workspace have the Grafana Admin or Editor roles.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { GrafanaClient, UpdatePermissionsCommand } from "@aws-sdk/client-grafana"; // ES Modules import * // const { GrafanaClient, UpdatePermissionsCommand } = require("@aws-sdk/client-grafana"); // CommonJS import * // import type { GrafanaClientConfig } from "@aws-sdk/client-grafana"; * const config = {}; // type is GrafanaClientConfig * const client = new GrafanaClient(config); * const input = { // UpdatePermissionsRequest * updateInstructionBatch: [ // UpdateInstructionBatch // required * { // UpdateInstruction * action: "STRING_VALUE", // required * role: "STRING_VALUE", // required * users: [ // UserList // required * { // User * id: "STRING_VALUE", // required * type: "STRING_VALUE", // required * }, * ], * }, * ], * workspaceId: "STRING_VALUE", // required * }; * const command = new UpdatePermissionsCommand(input); * const response = await client.send(command); * // { // UpdatePermissionsResponse * // errors: [ // UpdateErrorList // required * // { // UpdateError * // code: Number("int"), // required * // message: "STRING_VALUE", // required * // causedBy: { // UpdateInstruction * // action: "STRING_VALUE", // required * // role: "STRING_VALUE", // required * // users: [ // UserList // required * // { // User * // id: "STRING_VALUE", // required * // type: "STRING_VALUE", // required * // }, * // ], * // }, * // }, * // ], * // }; * * ``` * * @param UpdatePermissionsCommandInput - {@link UpdatePermissionsCommandInput} * @returns {@link UpdatePermissionsCommandOutput} * @see {@link UpdatePermissionsCommandInput} for command's `input` shape. * @see {@link UpdatePermissionsCommandOutput} for command's `response` shape. * @see {@link GrafanaClientResolvedConfig | config} for GrafanaClient's `config` shape. * * @throws {@link AccessDeniedException} (client fault) *

You do not have sufficient permissions to perform this action.

* * @throws {@link InternalServerException} (server fault) *

Unexpected error while processing the request. Retry the request.

* * @throws {@link ResourceNotFoundException} (client fault) *

The request references a resource that does not exist.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied because of request throttling. Retry the request.

* * @throws {@link ValidationException} (client fault) *

The value of a parameter in the request caused an error.

* * @throws {@link GrafanaServiceException} *

Base exception class for all service exceptions from Grafana service.

* * * @public */ export declare class UpdatePermissionsCommand extends UpdatePermissionsCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: UpdatePermissionsRequest; output: UpdatePermissionsResponse; }; sdk: { input: UpdatePermissionsCommandInput; output: UpdatePermissionsCommandOutput; }; }; }