@llamaindex/core
Version:
LlamaIndex Core Module
33 lines (29 loc) • 1.27 kB
text/typescript
import { MessageContent } from '../../llms/dist/index.cjs';
import { BaseRetriever } from '../../retriever/dist/index.cjs';
import { TextNode, BaseNode } from '../../schema/dist/index.cjs';
/**
* @todo refactor this module, most of the part is broken
* reference
* - https://github.com/run-llama/LlamaIndexTS/pull/531
* - https://github.com/run-llama/LlamaIndexTS/pull/416
*/
declare abstract class BaseObjectNodeMapping {
abstract fromObjects<OT>(objs: OT[], ...args: any[]): BaseObjectNodeMapping;
abstract objNodeMapping(): Record<any, any>;
abstract toNode(obj: any): TextNode;
validateObject(obj: any): void;
addObj(obj: any): void;
abstract _addObj(obj: any): void;
toNodes(objs: any[]): TextNode[];
abstract _fromNode(node: BaseNode): any;
fromNode(node: BaseNode): any;
abstract persist(persistDir: string, objNodeMappingFilename: string): void;
}
declare class ObjectRetriever<T = unknown> {
_retriever: BaseRetriever;
_objectNodeMapping: BaseObjectNodeMapping;
constructor(retriever: BaseRetriever, objectNodeMapping: BaseObjectNodeMapping);
get retriever(): BaseRetriever;
retrieve(strOrQueryBundle: MessageContent): Promise<T[]>;
}
export { BaseObjectNodeMapping, ObjectRetriever };