import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { DeleteKnowledgeBaseRequest, DeleteKnowledgeBaseResponse } from "../models/models_1"; /** * @public */ export type { __MetadataBearer }; /** * @public * * The input for {@link DeleteKnowledgeBaseCommand}. */ export interface DeleteKnowledgeBaseCommandInput extends DeleteKnowledgeBaseRequest { } /** * @public * * The output of {@link DeleteKnowledgeBaseCommand}. */ export interface DeleteKnowledgeBaseCommandOutput extends DeleteKnowledgeBaseResponse, __MetadataBearer { } declare const DeleteKnowledgeBaseCommand_base: { new (input: DeleteKnowledgeBaseCommandInput): import("@smithy/core/client").CommandImpl; new (input: DeleteKnowledgeBaseCommandInput): import("@smithy/core/client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/types").EndpointParameterInstructions; }; /** *

Deletes the knowledge base.

When you use this API to delete an external knowledge base such as Salesforce or ServiceNow, you must also delete the Amazon AppIntegrations DataIntegration. This is because you can't reuse the DataIntegration after it's been associated with an external knowledge base. However, you can delete and recreate it. See DeleteDataIntegration and CreateDataIntegration in the Amazon AppIntegrations API Reference.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { QConnectClient, DeleteKnowledgeBaseCommand } from "@aws-sdk/client-qconnect"; // ES Modules import * // const { QConnectClient, DeleteKnowledgeBaseCommand } = require("@aws-sdk/client-qconnect"); // CommonJS import * // import type { QConnectClientConfig } from "@aws-sdk/client-qconnect"; * const config = {}; // type is QConnectClientConfig * const client = new QConnectClient(config); * const input = { // DeleteKnowledgeBaseRequest * knowledgeBaseId: "STRING_VALUE", // required * }; * const command = new DeleteKnowledgeBaseCommand(input); * const response = await client.send(command); * // {}; * * ``` * * @param DeleteKnowledgeBaseCommandInput - {@link DeleteKnowledgeBaseCommandInput} * @returns {@link DeleteKnowledgeBaseCommandOutput} * @see {@link DeleteKnowledgeBaseCommandInput} for command's `input` shape. * @see {@link DeleteKnowledgeBaseCommandOutput} for command's `response` shape. * @see {@link QConnectClientResolvedConfig | config} for QConnectClient's `config` shape. * * @throws {@link AccessDeniedException} (client fault) *

You do not have sufficient access to perform this action.

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

The request could not be processed because of conflict in the current state of the resource. For example, if you're using a Create API (such as CreateAssistant) that accepts name, a conflicting resource (usually with the same name) is being created or mutated.

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

The specified resource does not exist.

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

You do not have permission to perform this action.

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

The input fails to satisfy the constraints specified by a service.

* * @throws {@link QConnectServiceException} *

Base exception class for all service exceptions from QConnect service.

* * * @public */ export declare class DeleteKnowledgeBaseCommand extends DeleteKnowledgeBaseCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: DeleteKnowledgeBaseRequest; output: {}; }; sdk: { input: DeleteKnowledgeBaseCommandInput; output: DeleteKnowledgeBaseCommandOutput; }; }; }