///
import { Client, _QueryBuilder } from ".";
import { DeleteDocumentOutput, DeleteWhereOutput, GetDocumentOutput, SimpleSearchPostOutput, BulkInsertOutput, UpdateWhereOutput, BulkUpdateOutput } from "../..";
import { _GenericMethodOptions } from "../../shared/BaseClient";
interface searchOptions {
debounce?: number;
rawPayload?: any;
}
export declare class Dataset {
client: Client;
name: string;
config: any;
debounceTimer?: NodeJS.Timeout;
constructor(client: Client, name: string, options: any);
get datasetName(): string;
createIfNotExist(): Promise;
recreateIfExists(): Promise;
insertDocument(document: any, options?: _GenericMethodOptions): Promise;
search(): Promise;
search(query?: _QueryBuilder): Promise;
search(options?: searchOptions): Promise;
search(query?: _QueryBuilder, options?: searchOptions): Promise;
insertDocuments(documents: any, encoders?: any, options?: _GenericMethodOptions & {
batchSize?: number;
retryCount?: number;
progressCallback?: (progress: BulkInsertOutput[]) => any;
}): Promise;
_GenericBulkOperation({ data, batchSize, fn, retryCount }: {
data: InputItem[];
fn: (data: InputItem[]) => Promise;
batchSize?: number;
retryCount?: number;
progressCallback?: (progress: OutputItem[]) => any;
}): Promise;
updateDocument(documentId: string, partialUpdates: any): Promise<{
status: string;
message: string;
}>;
updateDocuments(updates: any, options?: _GenericMethodOptions & {
batchSize?: number;
retryCount?: number;
progressCallback?: (progress: BulkUpdateOutput[]) => any;
}): Promise;
updateDocumentsWhere(filters: _QueryBuilder, partialUpdates: {
[id: string]: any;
}): Promise;
getDocument(documentId: string): Promise;
deleteDocument(documentId: string): Promise;
deleteDocuments(documentIds: [string]): Promise;
deleteDocumentsWhere(filters: _QueryBuilder): Promise;
}
export {};