import { Command as $Command } from "@smithy/core/client"; import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { AddDirectQueryDataSourceRequest, AddDirectQueryDataSourceResponse } from "../models/models_0"; import type { OpenSearchClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../OpenSearchClient"; /** * @public */ export type { __MetadataBearer }; export { $Command }; /** * @public * * The input for {@link AddDirectQueryDataSourceCommand}. */ export interface AddDirectQueryDataSourceCommandInput extends AddDirectQueryDataSourceRequest { } /** * @public * * The output of {@link AddDirectQueryDataSourceCommand}. */ export interface AddDirectQueryDataSourceCommandOutput extends AddDirectQueryDataSourceResponse, __MetadataBearer { } declare const AddDirectQueryDataSourceCommand_base: { new (input: AddDirectQueryDataSourceCommandInput): import("@smithy/core/client").CommandImpl; new (input: AddDirectQueryDataSourceCommandInput): import("@smithy/core/client").CommandImpl; getEndpointParameterInstructions(): { [x: string]: unknown; }; }; /** *

Adds a new data source in Amazon OpenSearch Service so that you can perform direct * queries on external data.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { OpenSearchClient, AddDirectQueryDataSourceCommand } from "@aws-sdk/client-opensearch"; // ES Modules import * // const { OpenSearchClient, AddDirectQueryDataSourceCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import * // import type { OpenSearchClientConfig } from "@aws-sdk/client-opensearch"; * const config = {}; // type is OpenSearchClientConfig * const client = new OpenSearchClient(config); * const input = { // AddDirectQueryDataSourceRequest * DataSourceName: "STRING_VALUE", // required * DataSourceType: { // DirectQueryDataSourceType Union: only one key present * CloudWatchLog: { // CloudWatchDirectQueryDataSource * RoleArn: "STRING_VALUE", // required * }, * SecurityLake: { // SecurityLakeDirectQueryDataSource * RoleArn: "STRING_VALUE", // required * }, * Prometheus: { // PrometheusDirectQueryDataSource * RoleArn: "STRING_VALUE", // required * WorkspaceArn: "STRING_VALUE", // required * }, * }, * Description: "STRING_VALUE", * OpenSearchArns: [ // DirectQueryOpenSearchARNList * "STRING_VALUE", * ], * DataSourceAccessPolicy: "STRING_VALUE", * TagList: [ // TagList * { // Tag * Key: "STRING_VALUE", // required * Value: "STRING_VALUE", // required * }, * ], * }; * const command = new AddDirectQueryDataSourceCommand(input); * const response = await client.send(command); * // { // AddDirectQueryDataSourceResponse * // DataSourceArn: "STRING_VALUE", * // }; * * ``` * * @param AddDirectQueryDataSourceCommandInput - {@link AddDirectQueryDataSourceCommandInput} * @returns {@link AddDirectQueryDataSourceCommandOutput} * @see {@link AddDirectQueryDataSourceCommandInput} for command's `input` shape. * @see {@link AddDirectQueryDataSourceCommandOutput} for command's `response` shape. * @see {@link OpenSearchClientResolvedConfig | config} for OpenSearchClient's `config` shape. * * @throws {@link BaseException} (client fault) *

An error occurred while processing the request.

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

An error occured because the client wanted to access an unsupported operation.

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

Request processing failed because of an unknown error, exception, or internal failure.

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

An exception for trying to create more than the allowed number of resources or sub-resources.

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

An exception for accessing or deleting a resource that doesn't exist.

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

An exception for accessing or deleting a resource that doesn't exist.

* * @throws {@link OpenSearchServiceException} *

Base exception class for all service exceptions from OpenSearch service.

* * * @public */ export declare class AddDirectQueryDataSourceCommand extends AddDirectQueryDataSourceCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: AddDirectQueryDataSourceRequest; output: AddDirectQueryDataSourceResponse; }; sdk: { input: AddDirectQueryDataSourceCommandInput; output: AddDirectQueryDataSourceCommandOutput; }; }; }