import type { DocumentType as __DocumentType } from "@smithy/types"; import type { ActionType, DataSourceStatus, DryRunMode, IndexStatus, IPAddressType, LogType, MaintenanceType, PackageScopeOperationEnum, ScheduleAt } from "./enums"; import type { AdvancedSecurityOptionsInput, AIMLOptionsInput, AppConfig, AutomatedSnapshotPauseRequestOptions, AutoTuneOptions, ChangeProgressDetails, ClusterConfig, CognitoOptions, DataSource, DataSourceType, DeploymentStrategyOptions, DirectQueryDataSourceType, DomainConfig, DomainEndpointOptions, DryRunProgressStatus, DryRunResults, EBSOptions, EncryptionAtRestOptions, IamIdentityCenterOptions, IdentityCenterOptionsInput, LogPublishingOption, NodeToNodeEncryptionOptions, OffPeakWindowOptions, PackageConfiguration, PackageDetails, PackageEncryptionOptions, PackageSource, ScheduledAction, ServiceSoftwareOptions, SnapshotOptions, SoftwareUpdateOptions, VpcEndpoint, VPCOptions } from "./models_0"; /** *

Container for the parameters to the StartDomainMaintenance * operation.

* @public */ export interface StartDomainMaintenanceRequest { /** *

The name of the domain.

* @public */ DomainName: string | undefined; /** *

The name of the action.

* @public */ Action: MaintenanceType | undefined; /** *

The ID of the data node.

* @public */ NodeId?: string | undefined; } /** *

The result of a StartDomainMaintenance request that information about the * requested action.

* @public */ export interface StartDomainMaintenanceResponse { /** *

The request ID of requested action.

* @public */ MaintenanceId?: string | undefined; } /** *

Container for the request parameters to the StartServiceSoftwareUpdate * operation.

* @public */ export interface StartServiceSoftwareUpdateRequest { /** *

The name of the domain that you want to update to the latest service software.

* @public */ DomainName: string | undefined; /** *

When to start the service software update.

* *

Default: NOW if you don't specify a value for * DesiredStartTime, and TIMESTAMP if you do.

* @public */ ScheduleAt?: ScheduleAt | undefined; /** *

The Epoch timestamp when you want the service software update to start. You only need * to specify this parameter if you set ScheduleAt to * TIMESTAMP.

* @public */ DesiredStartTime?: number | undefined; } /** *

Represents the output of a StartServiceSoftwareUpdate operation. Contains * the status of the update.

* @public */ export interface StartServiceSoftwareUpdateResponse { /** *

The current status of the OpenSearch Service software update.

* @public */ ServiceSoftwareOptions?: ServiceSoftwareOptions | undefined; } /** * @public */ export interface UpdateApplicationRequest { /** *

The unique identifier for the OpenSearch application to be updated.

* @public */ id: string | undefined; /** *

The data sources to associate with the OpenSearch application.

* @public */ dataSources?: DataSource[] | undefined; /** *

The configuration settings to modify for the OpenSearch application.

* @public */ appConfigs?: AppConfig[] | undefined; } /** * @public */ export interface UpdateApplicationResponse { /** *

The unique identifier of the updated OpenSearch application.

* @public */ id?: string | undefined; /** *

The name of the updated OpenSearch application.

* @public */ name?: string | undefined; /** *

The Amazon Resource Name (ARN) of the domain. See Identifiers for IAM Entities in * Using Amazon Web Services Identity and Access Management for * more information.

* @public */ arn?: string | undefined; /** *

The data sources associated with the updated OpenSearch application.

* @public */ dataSources?: DataSource[] | undefined; /** *

The IAM Identity Center configuration for the updated OpenSearch application.

* @public */ iamIdentityCenterOptions?: IamIdentityCenterOptions | undefined; /** *

The configuration settings for the updated OpenSearch application.

* @public */ appConfigs?: AppConfig[] | undefined; /** *

The timestamp when the OpenSearch application was originally created.

* @public */ createdAt?: Date | undefined; /** *

The timestamp when the OpenSearch application was last updated.

* @public */ lastUpdatedAt?: Date | undefined; } /** *

Container for the parameters to the UpdateDataSource operation.

* @public */ export interface UpdateDataSourceRequest { /** *

The name of the domain.

* @public */ DomainName: string | undefined; /** *

The name of the data source to modify.

* @public */ Name: string | undefined; /** *

The type of data source.

* @public */ DataSourceType: DataSourceType | undefined; /** *

A new description of the data source.

* @public */ Description?: string | undefined; /** *

The status of the data source update.

* @public */ Status?: DataSourceStatus | undefined; } /** *

The result of an UpdateDataSource operation.

* @public */ export interface UpdateDataSourceResponse { /** *

A message associated with the updated data source.

* @public */ Message?: string | undefined; } /** * @public */ export interface UpdateDirectQueryDataSourceRequest { /** *

A unique, user-defined label to identify the data source within your OpenSearch * Service environment.

* @public */ DataSourceName: string | undefined; /** *

The supported Amazon Web Services service that you want to use as the source for * direct queries in OpenSearch Service.

* @public */ DataSourceType: DirectQueryDataSourceType | undefined; /** *

An optional text field for providing additional context and details about the data * source.

* @public */ Description?: string | undefined; /** *

An optional list of Amazon Resource Names (ARNs) for the OpenSearch collections that are * associated with the direct query data source. This field is required for CloudWatchLogs * and SecurityLake datasource types.

* @public */ OpenSearchArns?: string[] | undefined; /** *

An optional IAM access policy document that defines the updated permissions for accessing the direct query data source. * The policy document must be in valid JSON format and follow IAM policy syntax. If not specified, the existing access policy if present remains unchanged.

* @public */ DataSourceAccessPolicy?: string | undefined; } /** * @public */ export interface UpdateDirectQueryDataSourceResponse { /** *

The unique, system-generated identifier that represents the data source.

* @public */ DataSourceArn?: string | undefined; } /** *

Container for the request parameters to the UpdateDomain * operation.

* @public */ export interface UpdateDomainConfigRequest { /** *

The name of the domain that you're updating.

* @public */ DomainName: string | undefined; /** *

Changes that you want to make to the cluster configuration, such as the instance type * and number of EC2 instances.

* @public */ ClusterConfig?: ClusterConfig | undefined; /** *

The type and size of the EBS volume to attach to instances in the domain.

* @public */ EBSOptions?: EBSOptions | undefined; /** *

Option to set the time, in UTC format, for the daily automated snapshot. Default value * is 0 hours.

* @public */ SnapshotOptions?: SnapshotOptions | undefined; /** *

Options to specify the subnets and security groups for a VPC endpoint. For more * information, see Launching your Amazon * OpenSearch Service domains using a VPC.

* @public */ VPCOptions?: VPCOptions | undefined; /** *

Key-value pairs to configure Amazon Cognito authentication for OpenSearch * Dashboards.

* @public */ CognitoOptions?: CognitoOptions | undefined; /** *

Key-value pairs to specify advanced configuration options. The following key-value * pairs are supported:

* *

For more information, see Advanced cluster parameters.

* @public */ AdvancedOptions?: Record | undefined; /** *

Identity and Access Management (IAM) access policy as a JSON-formatted string.

* @public */ AccessPolicies?: string | undefined; /** *

Specify either dual stack or IPv4 as your IP address type. Dual stack allows you to * share domain resources across IPv4 and IPv6 address types, and is the recommended * option. If your IP address type is currently set to dual stack, you can't change it. *

* @public */ IPAddressType?: IPAddressType | undefined; /** *

Options to publish OpenSearch logs to Amazon CloudWatch Logs.

* @public */ LogPublishingOptions?: Partial> | undefined; /** *

Encryption at rest options for the domain.

* @public */ EncryptionAtRestOptions?: EncryptionAtRestOptions | undefined; /** *

Additional options for the domain endpoint, such as whether to require HTTPS for all * traffic.

* @public */ DomainEndpointOptions?: DomainEndpointOptions | undefined; /** *

Node-to-node encryption options for the domain.

* @public */ NodeToNodeEncryptionOptions?: NodeToNodeEncryptionOptions | undefined; /** *

Options for fine-grained access control.

* @public */ AdvancedSecurityOptions?: AdvancedSecurityOptionsInput | undefined; /** *

Configuration settings for enabling and managing IAM Identity Center.

* @public */ IdentityCenterOptions?: IdentityCenterOptionsInput | undefined; /** *

Options for Auto-Tune.

* @public */ AutoTuneOptions?: AutoTuneOptions | undefined; /** *

This flag, when set to True, specifies whether the UpdateDomain request * should return the results of a dry run analysis without actually applying the change. A * dry run determines what type of deployment the update will cause.

* @public */ DryRun?: boolean | undefined; /** *

The type of dry run to perform.

* * @public */ DryRunMode?: DryRunMode | undefined; /** *

Off-peak window options for the domain.

* @public */ OffPeakWindowOptions?: OffPeakWindowOptions | undefined; /** *

Service software update options for the domain.

* @public */ SoftwareUpdateOptions?: SoftwareUpdateOptions | undefined; /** *

Options for all machine learning features for the specified domain.

* @public */ AIMLOptions?: AIMLOptionsInput | undefined; /** *

Specifies the deployment strategy options for the domain.

* @public */ DeploymentStrategyOptions?: DeploymentStrategyOptions | undefined; /** *

Specifies the automated snapshot pause options for the domain.

* *

Suspending snapshots reduces data protection. You cannot restore your domain to * points in time when snapshots are suspended. Use this feature only for short-term * operational needs such as migrations or maintenance windows.

*
*

Maximum suspension duration: 3 days.

* @public */ AutomatedSnapshotPauseOptions?: AutomatedSnapshotPauseRequestOptions | undefined; } /** *

The results of an UpdateDomain request. Contains the status of the domain * being updated.

* @public */ export interface UpdateDomainConfigResponse { /** *

The status of the updated domain.

* @public */ DomainConfig: DomainConfig | undefined; /** *

Results of the dry run performed in the update domain request.

* @public */ DryRunResults?: DryRunResults | undefined; /** *

The status of the dry run being performed on the domain, if any.

* @public */ DryRunProgressStatus?: DryRunProgressStatus | undefined; } /** * @public */ export interface UpdateIndexRequest { /** *

The name of an OpenSearch Service domain. Domain names are unique across the domains * owned by an account within an Amazon Web Services Region.

* @public */ DomainName: string | undefined; /** *

The name of the index to update.

* @public */ IndexName: string | undefined; /** *

The updated JSON schema for the index including any changes to mappings, settings, and semantic enrichment configuration.

* @public */ IndexSchema: __DocumentType | undefined; } /** * @public */ export interface UpdateIndexResponse { /** *

The status of the index update operation.

* @public */ Status: IndexStatus | undefined; } /** *

Container for request parameters to the UpdatePackage operation.

* @public */ export interface UpdatePackageRequest { /** *

The unique identifier for the package.

* @public */ PackageID: string | undefined; /** *

Amazon S3 bucket and key for the package.

* @public */ PackageSource: PackageSource | undefined; /** *

A new description of the package.

* @public */ PackageDescription?: string | undefined; /** *

Commit message for the updated file, which is shown as part of * GetPackageVersionHistoryResponse.

* @public */ CommitMessage?: string | undefined; /** *

The updated configuration details for a package.

* @public */ PackageConfiguration?: PackageConfiguration | undefined; /** *

Encryption options for a package.

* @public */ PackageEncryptionOptions?: PackageEncryptionOptions | undefined; } /** *

Container for the response returned by the UpdatePackage * operation.

* @public */ export interface UpdatePackageResponse { /** *

Information about a package.

* @public */ PackageDetails?: PackageDetails | undefined; } /** * @public */ export interface UpdatePackageScopeRequest { /** *

ID of the package whose scope is being updated.

* @public */ PackageID: string | undefined; /** *

The operation to perform on the package scope (e.g., add/remove/override * users).

* @public */ Operation: PackageScopeOperationEnum | undefined; /** *

List of users to be added or removed from the package scope.

* @public */ PackageUserList: string[] | undefined; } /** * @public */ export interface UpdatePackageScopeResponse { /** *

ID of the package whose scope was updated.

* @public */ PackageID?: string | undefined; /** *

The operation that was performed on the package scope.

* @public */ Operation?: PackageScopeOperationEnum | undefined; /** *

List of users who have access to the package after the scope update.

* @public */ PackageUserList?: string[] | undefined; } /** * @public */ export interface UpdateScheduledActionRequest { /** *

The name of the domain to reschedule an action for.

* @public */ DomainName: string | undefined; /** *

The unique identifier of the action to reschedule. To retrieve this ID, send a ListScheduledActions request.

* @public */ ActionID: string | undefined; /** *

The type of action to reschedule. Can be one of SERVICE_SOFTWARE_UPDATE, * JVM_HEAP_SIZE_TUNING, or JVM_YOUNG_GEN_TUNING. To retrieve * this value, send a ListScheduledActions request.

* @public */ ActionType: ActionType | undefined; /** *

When to schedule the action.

* * @public */ ScheduleAt: ScheduleAt | undefined; /** *

The time to implement the change, in Coordinated Universal Time (UTC). Only specify * this parameter if you set ScheduleAt to TIMESTAMP.

* @public */ DesiredStartTime?: number | undefined; } /** * @public */ export interface UpdateScheduledActionResponse { /** *

Information about the rescheduled action.

* @public */ ScheduledAction?: ScheduledAction | undefined; } /** * @public */ export interface UpdateVpcEndpointRequest { /** *

The unique identifier of the endpoint.

* @public */ VpcEndpointId: string | undefined; /** *

The security groups and/or subnets to add, remove, or modify.

* @public */ VpcOptions: VPCOptions | undefined; } /** * @public */ export interface UpdateVpcEndpointResponse { /** *

The endpoint to be updated.

* @public */ VpcEndpoint: VpcEndpoint | undefined; } /** *

Container for the request parameters to the UpgradeDomain * operation.

* @public */ export interface UpgradeDomainRequest { /** *

Name of the OpenSearch Service domain that you want to upgrade.

* @public */ DomainName: string | undefined; /** *

OpenSearch or Elasticsearch version to which you want to upgrade, in the format * Opensearch_X.Y or Elasticsearch_X.Y.

* @public */ TargetVersion: string | undefined; /** *

When true, indicates that an upgrade eligibility check needs to be performed. Does not * actually perform the upgrade.

* @public */ PerformCheckOnly?: boolean | undefined; /** *

Only supports the override_main_response_version parameter and not other * advanced options. You can only include this option when upgrading to an OpenSearch * version. Specifies whether the domain reports its version as 7.10 so that it continues * to work with Elasticsearch OSS clients and plugins.

* @public */ AdvancedOptions?: Record | undefined; } /** *

Container for the response returned by UpgradeDomain operation.

* @public */ export interface UpgradeDomainResponse { /** *

The unique identifier of the domain upgrade.

* @public */ UpgradeId?: string | undefined; /** *

The name of the domain that was upgraded.

* @public */ DomainName?: string | undefined; /** *

OpenSearch or Elasticsearch version that the domain was upgraded to.

* @public */ TargetVersion?: string | undefined; /** *

When true, indicates that an upgrade eligibility check was performed.

* @public */ PerformCheckOnly?: boolean | undefined; /** *

The advanced options configuration for the domain.

* @public */ AdvancedOptions?: Record | undefined; /** *

Container for information about a configuration change happening on a domain.

* @public */ ChangeProgressDetails?: ChangeProgressDetails | undefined; }