import { Command as $Command } from "@smithy/smithy-client"; import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { EvidentlyClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../EvidentlyClient"; import type { UpdateExperimentRequest, UpdateExperimentResponse } from "../models/models_0"; /** * @public */ export type { __MetadataBearer }; export { $Command }; /** * @public * * The input for {@link UpdateExperimentCommand}. */ export interface UpdateExperimentCommandInput extends UpdateExperimentRequest { } /** * @public * * The output of {@link UpdateExperimentCommand}. */ export interface UpdateExperimentCommandOutput extends UpdateExperimentResponse, __MetadataBearer { } declare const UpdateExperimentCommand_base: { new (input: UpdateExperimentCommandInput): import("@smithy/smithy-client").CommandImpl; new (input: UpdateExperimentCommandInput): import("@smithy/smithy-client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions; }; /** *

Updates an Evidently experiment.

Don't use this operation to update an experiment's tag. Instead, use TagResource.

* * @deprecated AWS CloudWatch Evidently has been deprecated since 11/17/2025. * @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { EvidentlyClient, UpdateExperimentCommand } from "@aws-sdk/client-evidently"; // ES Modules import * // const { EvidentlyClient, UpdateExperimentCommand } = require("@aws-sdk/client-evidently"); // CommonJS import * // import type { EvidentlyClientConfig } from "@aws-sdk/client-evidently"; * const config = {}; // type is EvidentlyClientConfig * const client = new EvidentlyClient(config); * const input = { // UpdateExperimentRequest * project: "STRING_VALUE", // required * experiment: "STRING_VALUE", // required * description: "STRING_VALUE", * treatments: [ // TreatmentConfigList * { // TreatmentConfig * name: "STRING_VALUE", // required * description: "STRING_VALUE", * feature: "STRING_VALUE", // required * variation: "STRING_VALUE", // required * }, * ], * metricGoals: [ // MetricGoalConfigList * { // MetricGoalConfig * metricDefinition: { // MetricDefinitionConfig * name: "STRING_VALUE", // required * entityIdKey: "STRING_VALUE", // required * valueKey: "STRING_VALUE", // required * eventPattern: "STRING_VALUE", * unitLabel: "STRING_VALUE", * }, * desiredChange: "STRING_VALUE", * }, * ], * randomizationSalt: "STRING_VALUE", * samplingRate: Number("long"), * segment: "STRING_VALUE", * removeSegment: true || false, * onlineAbConfig: { // OnlineAbConfig * controlTreatmentName: "STRING_VALUE", * treatmentWeights: { // TreatmentToWeightMap * "": Number("long"), * }, * }, * }; * const command = new UpdateExperimentCommand(input); * const response = await client.send(command); * // { // UpdateExperimentResponse * // experiment: { // Experiment * // arn: "STRING_VALUE", // required * // name: "STRING_VALUE", // required * // project: "STRING_VALUE", * // status: "STRING_VALUE", // required * // statusReason: "STRING_VALUE", * // description: "STRING_VALUE", * // createdTime: new Date("TIMESTAMP"), // required * // lastUpdatedTime: new Date("TIMESTAMP"), // required * // schedule: { // ExperimentSchedule * // analysisCompleteTime: new Date("TIMESTAMP"), * // }, * // execution: { // ExperimentExecution * // startedTime: new Date("TIMESTAMP"), * // endedTime: new Date("TIMESTAMP"), * // }, * // treatments: [ // TreatmentList * // { // Treatment * // name: "STRING_VALUE", // required * // description: "STRING_VALUE", * // featureVariations: { // FeatureToVariationMap * // "": "STRING_VALUE", * // }, * // }, * // ], * // metricGoals: [ // MetricGoalsList * // { // MetricGoal * // metricDefinition: { // MetricDefinition * // name: "STRING_VALUE", * // entityIdKey: "STRING_VALUE", * // valueKey: "STRING_VALUE", * // eventPattern: "STRING_VALUE", * // unitLabel: "STRING_VALUE", * // }, * // desiredChange: "STRING_VALUE", * // }, * // ], * // randomizationSalt: "STRING_VALUE", * // samplingRate: Number("long"), * // segment: "STRING_VALUE", * // type: "STRING_VALUE", // required * // onlineAbDefinition: { // OnlineAbDefinition * // controlTreatmentName: "STRING_VALUE", * // treatmentWeights: { // TreatmentToWeightMap * // "": Number("long"), * // }, * // }, * // tags: { // TagMap * // "": "STRING_VALUE", * // }, * // }, * // }; * * ``` * * @param UpdateExperimentCommandInput - {@link UpdateExperimentCommandInput} * @returns {@link UpdateExperimentCommandOutput} * @see {@link UpdateExperimentCommandInput} for command's `input` shape. * @see {@link UpdateExperimentCommandOutput} for command's `response` shape. * @see {@link EvidentlyClientResolvedConfig | config} for EvidentlyClient's `config` shape. * * @throws {@link AccessDeniedException} (client fault) *

You do not have sufficient permissions to perform this action.

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

A resource was in an inconsistent state during an update or a deletion.

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

The request references a resource that does not exist.

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

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

* * @throws {@link EvidentlyServiceException} *

Base exception class for all service exceptions from Evidently service.

* * * @public */ export declare class UpdateExperimentCommand extends UpdateExperimentCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: UpdateExperimentRequest; output: UpdateExperimentResponse; }; sdk: { input: UpdateExperimentCommandInput; output: UpdateExperimentCommandOutput; }; }; }