import { ClientSDK, RequestOptions } from "../lib/sdks.js";
import * as operations from "../models/operations/index.js";
export declare class Knowledge extends ClientSDK {
    /**
     * List all knowledge bases
     *
     * @remarks
     * Returns a list of your knowledge bases. The knowledge bases are returned sorted by creation date, with the most recent knowledge bases appearing first
     */
    list(request?: operations.ListKnowledgeBasesRequest | undefined, options?: RequestOptions): Promise<operations.ListKnowledgeBasesResponseBody>;
    /**
     * Create a knowledge
     */
    create(request: operations.CreateKnowledgeRequestBody, options?: RequestOptions): Promise<operations.CreateKnowledgeResponseBody>;
    /**
     * Retrieves a knowledge base
     *
     * @remarks
     * Retrieve a knowledge base with the settings.
     */
    retrieve(request: operations.GetOneKnowledgeRequest, options?: RequestOptions): Promise<operations.GetOneKnowledgeResponseBody>;
    /**
     * Updates a knowledge
     */
    update(request: operations.UpdateKnowledgeRequest, options?: RequestOptions): Promise<operations.UpdateKnowledgeResponseBody>;
    /**
     * Deletes a knowledge
     *
     * @remarks
     * Deletes a knowledge base. Deleting a knowledge base will delete all the datasources and chunks associated with it.
     */
    delete(request: operations.DeleteKnowledgeRequest, options?: RequestOptions): Promise<void>;
    /**
     * Search knowledge base
     *
     * @remarks
     * Search a Knowledge Base and return the most similar chunks, along with their search and rerank scores. Note that all configuration changes made in the API will override the settings in the UI.
     */
    search(request: operations.SearchKnowledgeRequest, options?: RequestOptions): Promise<operations.SearchKnowledgeResponseBody>;
    /**
     * List all datasources
     */
    listDatasources(request: operations.ListDatasourcesRequest, options?: RequestOptions): Promise<operations.ListDatasourcesResponseBody>;
    /**
     * Create a new datasource
     */
    createDatasource(request: operations.CreateDatasourceRequest, options?: RequestOptions): Promise<operations.CreateDatasourceResponseBody>;
    /**
     * Retrieve a datasource
     */
    retrieveDatasource(request: operations.RetrieveDatasourceRequest, options?: RequestOptions): Promise<operations.RetrieveDatasourceResponseBody>;
    /**
     * Deletes a datasource
     *
     * @remarks
     * Deletes a datasource from a knowledge base. Deleting a datasource will remove it from the knowledge base and all associated chunks. This action is irreversible and cannot be undone.
     */
    deleteDatasource(request: operations.DeleteDatasourceRequest, options?: RequestOptions): Promise<void>;
    /**
     * Update a datasource
     */
    updateDatasource(request: operations.UpdateDatasourceRequest, options?: RequestOptions): Promise<operations.UpdateDatasourceResponseBody>;
    /**
     * Create chunks for a datasource
     */
    createChunks(request: operations.CreateChunkRequest, options?: RequestOptions): Promise<Array<operations.ResponseBody>>;
    /**
     * List all chunks for a datasource
     */
    listChunks(request: operations.ListChunksRequest, options?: RequestOptions): Promise<operations.ListChunksResponseBody>;
    /**
     * Delete multiple chunks
     */
    deleteChunks(request: operations.DeleteChunksRequest, options?: RequestOptions): Promise<operations.DeleteChunksResponseBody>;
    /**
     * List chunks with offset-based pagination
     */
    listChunksPaginated(request: operations.ListChunksPaginatedRequest, options?: RequestOptions): Promise<operations.ListChunksPaginatedResponseBody>;
    /**
     * Get chunks total count
     */
    getChunksCount(request: operations.GetChunksCountRequest, options?: RequestOptions): Promise<operations.GetChunksCountResponseBody>;
    /**
     * Update a chunk
     */
    updateChunk(request: operations.UpdateChunkRequest, options?: RequestOptions): Promise<operations.UpdateChunkResponseBody>;
    /**
     * Delete a chunk
     */
    deleteChunk(request: operations.DeleteChunkRequest, options?: RequestOptions): Promise<void>;
    /**
     * Retrieve a chunk
     */
    retrieveChunk(request: operations.GetOneChunkRequest, options?: RequestOptions): Promise<operations.GetOneChunkResponseBody>;
}
//# sourceMappingURL=knowledge.d.ts.map