import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { UpdateSubscriberNotificationRequest, UpdateSubscriberNotificationResponse } from "../models/models_0"; /** * @public */ export type { __MetadataBearer }; /** * @public * * The input for {@link UpdateSubscriberNotificationCommand}. */ export interface UpdateSubscriberNotificationCommandInput extends UpdateSubscriberNotificationRequest { } /** * @public * * The output of {@link UpdateSubscriberNotificationCommand}. */ export interface UpdateSubscriberNotificationCommandOutput extends UpdateSubscriberNotificationResponse, __MetadataBearer { } declare const UpdateSubscriberNotificationCommand_base: { new (input: UpdateSubscriberNotificationCommandInput): import("@smithy/core/client").CommandImpl; new (input: UpdateSubscriberNotificationCommandInput): import("@smithy/core/client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/types").EndpointParameterInstructions; }; /** *

Updates an existing notification method for the subscription (SQS or HTTPs endpoint) or * switches the notification subscription endpoint for a subscriber.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { SecurityLakeClient, UpdateSubscriberNotificationCommand } from "@aws-sdk/client-securitylake"; // ES Modules import * // const { SecurityLakeClient, UpdateSubscriberNotificationCommand } = require("@aws-sdk/client-securitylake"); // CommonJS import * // import type { SecurityLakeClientConfig } from "@aws-sdk/client-securitylake"; * const config = {}; // type is SecurityLakeClientConfig * const client = new SecurityLakeClient(config); * const input = { // UpdateSubscriberNotificationRequest * subscriberId: "STRING_VALUE", // required * configuration: { // NotificationConfiguration Union: only one key present * sqsNotificationConfiguration: {}, * httpsNotificationConfiguration: { // HttpsNotificationConfiguration * endpoint: "STRING_VALUE", // required * authorizationApiKeyName: "STRING_VALUE", * authorizationApiKeyValue: "STRING_VALUE", * httpMethod: "POST" || "PUT", * targetRoleArn: "STRING_VALUE", // required * }, * }, * }; * const command = new UpdateSubscriberNotificationCommand(input); * const response = await client.send(command); * // { // UpdateSubscriberNotificationResponse * // subscriberEndpoint: "STRING_VALUE", * // }; * * ``` * * @param UpdateSubscriberNotificationCommandInput - {@link UpdateSubscriberNotificationCommandInput} * @returns {@link UpdateSubscriberNotificationCommandOutput} * @see {@link UpdateSubscriberNotificationCommandInput} for command's `input` shape. * @see {@link UpdateSubscriberNotificationCommandOutput} for command's `response` shape. * @see {@link SecurityLakeClientResolvedConfig | config} for SecurityLakeClient's `config` shape. * * @throws {@link AccessDeniedException} (client fault) *

You do not have sufficient access to perform this action. Access denied errors appear when Amazon Security Lake explicitly or implicitly denies an authorization * request. An explicit denial occurs when a policy contains a Deny statement for the specific * Amazon Web Services action. An implicit denial occurs when there is no applicable Deny statement and also * no applicable Allow statement.

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

The request is malformed or contains an error such as an invalid parameter value or a missing required parameter.

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

Occurs when a conflict with a previous successful write is detected. This generally * occurs when the previous write did not have time to propagate to the host serving the * current request. A retry (with appropriate backoff logic) is the recommended response to * this exception.

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

Internal service exceptions are sometimes caused by transient issues. Before you start * troubleshooting, perform the operation again.

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

The resource could not be found.

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

The limit on the number of requests per second was exceeded.

* * @throws {@link SecurityLakeServiceException} *

Base exception class for all service exceptions from SecurityLake service.

* * * @public */ export declare class UpdateSubscriberNotificationCommand extends UpdateSubscriberNotificationCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: UpdateSubscriberNotificationRequest; output: UpdateSubscriberNotificationResponse; }; sdk: { input: UpdateSubscriberNotificationCommandInput; output: UpdateSubscriberNotificationCommandOutput; }; }; }