import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { CreateKnowledgeBaseRequest, CreateKnowledgeBaseResponse } from "../models/models_0"; /** * @public */ export type { __MetadataBearer }; /** * @public * * The input for {@link CreateKnowledgeBaseCommand}. */ export interface CreateKnowledgeBaseCommandInput extends CreateKnowledgeBaseRequest { } /** * @public * * The output of {@link CreateKnowledgeBaseCommand}. */ export interface CreateKnowledgeBaseCommandOutput extends CreateKnowledgeBaseResponse, __MetadataBearer { } declare const CreateKnowledgeBaseCommand_base: { new (input: CreateKnowledgeBaseCommandInput): import("@smithy/core/client").CommandImpl; new (input: CreateKnowledgeBaseCommandInput): import("@smithy/core/client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/types").EndpointParameterInstructions; }; /** *

Creates a knowledge base.

* *

When using this API, you cannot reuse Amazon AppIntegrations * DataIntegrations with external knowledge bases such as Salesforce and ServiceNow. If you do, * you'll get an InvalidRequestException error.

*

For example, you're programmatically managing your external knowledge base, and you want * to add or remove one of the fields that is being ingested from Salesforce. Do the * following:

*
    *
  1. *

    Call DeleteKnowledgeBase.

    *
  2. *
  3. *

    Call DeleteDataIntegration.

    *
  4. *
  5. *

    Call CreateDataIntegration to recreate the DataIntegration or a create different * one.

    *
  6. *
  7. *

    Call CreateKnowledgeBase.

    *
  8. *
*
* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { WisdomClient, CreateKnowledgeBaseCommand } from "@aws-sdk/client-wisdom"; // ES Modules import * // const { WisdomClient, CreateKnowledgeBaseCommand } = require("@aws-sdk/client-wisdom"); // CommonJS import * // import type { WisdomClientConfig } from "@aws-sdk/client-wisdom"; * const config = {}; // type is WisdomClientConfig * const client = new WisdomClient(config); * const input = { // CreateKnowledgeBaseRequest * clientToken: "STRING_VALUE", * name: "STRING_VALUE", // required * knowledgeBaseType: "STRING_VALUE", // required * sourceConfiguration: { // SourceConfiguration Union: only one key present * appIntegrations: { // AppIntegrationsConfiguration * appIntegrationArn: "STRING_VALUE", // required * objectFields: [ // ObjectFieldsList * "STRING_VALUE", * ], * }, * }, * renderingConfiguration: { // RenderingConfiguration * templateUri: "STRING_VALUE", * }, * serverSideEncryptionConfiguration: { // ServerSideEncryptionConfiguration * kmsKeyId: "STRING_VALUE", * }, * description: "STRING_VALUE", * tags: { // Tags * "": "STRING_VALUE", * }, * }; * const command = new CreateKnowledgeBaseCommand(input); * const response = await client.send(command); * // { // CreateKnowledgeBaseResponse * // knowledgeBase: { // KnowledgeBaseData * // knowledgeBaseId: "STRING_VALUE", // required * // knowledgeBaseArn: "STRING_VALUE", // required * // name: "STRING_VALUE", // required * // knowledgeBaseType: "STRING_VALUE", // required * // status: "STRING_VALUE", // required * // lastContentModificationTime: new Date("TIMESTAMP"), * // sourceConfiguration: { // SourceConfiguration Union: only one key present * // appIntegrations: { // AppIntegrationsConfiguration * // appIntegrationArn: "STRING_VALUE", // required * // objectFields: [ // ObjectFieldsList * // "STRING_VALUE", * // ], * // }, * // }, * // renderingConfiguration: { // RenderingConfiguration * // templateUri: "STRING_VALUE", * // }, * // serverSideEncryptionConfiguration: { // ServerSideEncryptionConfiguration * // kmsKeyId: "STRING_VALUE", * // }, * // description: "STRING_VALUE", * // tags: { // Tags * // "": "STRING_VALUE", * // }, * // }, * // }; * * ``` * * @param CreateKnowledgeBaseCommandInput - {@link CreateKnowledgeBaseCommandInput} * @returns {@link CreateKnowledgeBaseCommandOutput} * @see {@link CreateKnowledgeBaseCommandInput} for command's `input` shape. * @see {@link CreateKnowledgeBaseCommandOutput} for command's `response` shape. * @see {@link WisdomClientResolvedConfig | config} for WisdomClient'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 ServiceQuotaExceededException} (client fault) *

You've exceeded your service quota. To perform the requested action, remove some of the * relevant resources, or use service quotas to request a service quota increase.

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

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

* * @throws {@link WisdomServiceException} *

Base exception class for all service exceptions from Wisdom service.

* * * @public */ export declare class CreateKnowledgeBaseCommand extends CreateKnowledgeBaseCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: CreateKnowledgeBaseRequest; output: CreateKnowledgeBaseResponse; }; sdk: { input: CreateKnowledgeBaseCommandInput; output: CreateKnowledgeBaseCommandOutput; }; }; }