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

Updates the file transfer protocol-enabled server's properties after that server has been created.

The UpdateServer call returns the ServerId of the server you updated.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { TransferClient, UpdateServerCommand } from "@aws-sdk/client-transfer"; // ES Modules import * // const { TransferClient, UpdateServerCommand } = 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 = { // UpdateServerRequest * Certificate: "STRING_VALUE", * ProtocolDetails: { // ProtocolDetails * PassiveIp: "STRING_VALUE", * TlsSessionResumptionMode: "DISABLED" || "ENABLED" || "ENFORCED", * SetStatOption: "DEFAULT" || "ENABLE_NO_OP", * As2Transports: [ // As2Transports * "HTTP", * ], * }, * EndpointDetails: { // EndpointDetails * AddressAllocationIds: [ // AddressAllocationIds * "STRING_VALUE", * ], * SubnetIds: [ // SubnetIds * "STRING_VALUE", * ], * VpcEndpointId: "STRING_VALUE", * VpcId: "STRING_VALUE", * SecurityGroupIds: [ // SecurityGroupIds * "STRING_VALUE", * ], * }, * EndpointType: "PUBLIC" || "VPC" || "VPC_ENDPOINT", * HostKey: "STRING_VALUE", * IdentityProviderDetails: { // IdentityProviderDetails * Url: "STRING_VALUE", * InvocationRole: "STRING_VALUE", * DirectoryId: "STRING_VALUE", * Function: "STRING_VALUE", * SftpAuthenticationMethods: "PASSWORD" || "PUBLIC_KEY" || "PUBLIC_KEY_OR_PASSWORD" || "PUBLIC_KEY_AND_PASSWORD", * }, * LoggingRole: "STRING_VALUE", * PostAuthenticationLoginBanner: "STRING_VALUE", * PreAuthenticationLoginBanner: "STRING_VALUE", * Protocols: [ // Protocols * "SFTP" || "FTP" || "FTPS" || "AS2", * ], * SecurityPolicyName: "STRING_VALUE", * ServerId: "STRING_VALUE", // required * WorkflowDetails: { // WorkflowDetails * OnUpload: [ // OnUploadWorkflowDetails * { // WorkflowDetail * WorkflowId: "STRING_VALUE", // required * ExecutionRole: "STRING_VALUE", // required * }, * ], * OnPartialUpload: [ // OnPartialUploadWorkflowDetails * { * WorkflowId: "STRING_VALUE", // required * ExecutionRole: "STRING_VALUE", // required * }, * ], * }, * StructuredLogDestinations: [ // StructuredLogDestinations * "STRING_VALUE", * ], * S3StorageOptions: { // S3StorageOptions * DirectoryListingOptimization: "ENABLED" || "DISABLED", * }, * IpAddressType: "IPV4" || "DUALSTACK", * IdentityProviderType: "SERVICE_MANAGED" || "API_GATEWAY" || "AWS_DIRECTORY_SERVICE" || "AWS_LAMBDA", * }; * const command = new UpdateServerCommand(input); * const response = await client.send(command); * // { // UpdateServerResponse * // ServerId: "STRING_VALUE", // required * // }; * * ``` * * @param UpdateServerCommandInput - {@link UpdateServerCommandInput} * @returns {@link UpdateServerCommandOutput} * @see {@link UpdateServerCommandInput} for command's `input` shape. * @see {@link UpdateServerCommandOutput} for command's `response` shape. * @see {@link TransferClientResolvedConfig | config} for TransferClient's `config` shape. * * @throws {@link AccessDeniedException} (client fault) *

You do not have sufficient access to perform this action.

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

This exception is thrown when the UpdateServer is called for a file transfer protocol-enabled server that has VPC as the endpoint type and the server's VpcEndpointID is not in the available state.

* * @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 UpdateServerCommand extends UpdateServerCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: UpdateServerRequest; output: UpdateServerResponse; }; sdk: { input: UpdateServerCommandInput; output: UpdateServerCommandOutput; }; }; }