import { Command as $Command } from "@smithy/smithy-client"; import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { UpdateAgreementRequest, UpdateAgreementResponse } from "../models/models_0"; import type { ServiceInputTypes, ServiceOutputTypes, TransferClientResolvedConfig } from "../TransferClient"; /** * @public */ export type { __MetadataBearer }; export { $Command }; /** * @public * * The input for {@link UpdateAgreementCommand}. */ export interface UpdateAgreementCommandInput extends UpdateAgreementRequest { } /** * @public * * The output of {@link UpdateAgreementCommand}. */ export interface UpdateAgreementCommandOutput extends UpdateAgreementResponse, __MetadataBearer { } declare const UpdateAgreementCommand_base: { new (input: UpdateAgreementCommandInput): import("@smithy/smithy-client").CommandImpl; new (input: UpdateAgreementCommandInput): import("@smithy/smithy-client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions; }; /** *

Updates some of the parameters for an existing agreement. Provide the AgreementId and the ServerId for the agreement that you want to update, along with the new values for the parameters to update.

Specify either BaseDirectory or CustomDirectories, but not both. Specifying both causes the command to fail.

If you update an agreement from using base directory to custom directories, the base directory is no longer used. Similarly, if you change from custom directories to a base directory, the custom directories are no longer used.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { TransferClient, UpdateAgreementCommand } from "@aws-sdk/client-transfer"; // ES Modules import * // const { TransferClient, UpdateAgreementCommand } = require("@aws-sdk/client-transfer"); // CommonJS import * // import type { TransferClientConfig } from "@aws-sdk/client-transfer"; * const config = {}; // type is TransferClientConfig * const client = new TransferClient(config); * const input = { // UpdateAgreementRequest * AgreementId: "STRING_VALUE", // required * ServerId: "STRING_VALUE", // required * Description: "STRING_VALUE", * Status: "ACTIVE" || "INACTIVE", * LocalProfileId: "STRING_VALUE", * PartnerProfileId: "STRING_VALUE", * BaseDirectory: "STRING_VALUE", * AccessRole: "STRING_VALUE", * PreserveFilename: "ENABLED" || "DISABLED", * EnforceMessageSigning: "ENABLED" || "DISABLED", * CustomDirectories: { // CustomDirectoriesType * FailedFilesDirectory: "STRING_VALUE", // required * MdnFilesDirectory: "STRING_VALUE", // required * PayloadFilesDirectory: "STRING_VALUE", // required * StatusFilesDirectory: "STRING_VALUE", // required * TemporaryFilesDirectory: "STRING_VALUE", // required * }, * }; * const command = new UpdateAgreementCommand(input); * const response = await client.send(command); * // { // UpdateAgreementResponse * // AgreementId: "STRING_VALUE", // required * // }; * * ``` * * @param UpdateAgreementCommandInput - {@link UpdateAgreementCommandInput} * @returns {@link UpdateAgreementCommandOutput} * @see {@link UpdateAgreementCommandInput} for command's `input` shape. * @see {@link UpdateAgreementCommandOutput} for command's `response` shape. * @see {@link TransferClientResolvedConfig | config} for TransferClient's `config` shape. * * @throws {@link InternalServiceError} (server fault) *

This exception is thrown when an error occurs in the Transfer Family service.

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

This exception is thrown when the client submits a malformed request.

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

The requested resource does not exist, or exists in a region other than the one specified for the command.

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

This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer Family service.

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

The request has failed because the Amazon Web ServicesTransfer Family service is not available.

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

The request was denied due to request throttling.

* * @throws {@link TransferServiceException} *

Base exception class for all service exceptions from Transfer service.

* * * @public */ export declare class UpdateAgreementCommand extends UpdateAgreementCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: UpdateAgreementRequest; output: UpdateAgreementResponse; }; sdk: { input: UpdateAgreementCommandInput; output: UpdateAgreementCommandOutput; }; }; }