@hashgraphonline/conversational-agent
Version:
Hashgraph Online conversational AI agent implementing HCS-10 communication, HCS-2 registries, and content inscription on Hedera. https://hol.org
65 lines (63 loc) • 1.85 kB
TypeScript
import { ContentStorage } from '../memory/content-storage';
import { ContentReference, ContentReferenceConfig, ContentReferenceStats } from '../types/content-reference';
import { Logger } from '@hashgraphonline/standards-sdk';
/**
* Content metadata interface for adapter compatibility
*/
interface AdapterContentMetadata {
mimeType?: string;
fileName?: string;
sizeBytes?: number;
[key: string]: unknown;
}
/**
* Manages content store lifecycle and cross-package registration
*/
export declare class ContentStoreManager {
private contentStorage;
private adapter;
private resolver;
private logger;
protected isRegistered: boolean;
constructor(maxMessageStorage?: number, referenceConfig?: Partial<ContentReferenceConfig>, logger?: Logger);
/**
* Initialize and register content storage for cross-package access
*/
initialize(): Promise<void>;
/**
* Get the underlying ContentStorage instance
*/
getContentStorage(): ContentStorage;
/**
* Get storage statistics
*/
getStats(): Promise<ContentReferenceStats>;
/**
* Update configuration
*/
updateConfig(config: Partial<ContentReferenceConfig>): Promise<void>;
/**
* Perform manual cleanup
*/
performCleanup(): Promise<{
cleanedUp: number;
errors: string[];
}>;
/**
* Check if content should be stored as reference
*/
shouldUseReference(content: Buffer | string): boolean;
/**
* Store content if it's large enough
*/
storeContentIfLarge(content: Buffer | string, metadata: AdapterContentMetadata): Promise<ContentReference | null>;
/**
* Cleanup and unregister
*/
dispose(): Promise<void>;
/**
* Check if the manager is initialized
*/
isInitialized(): boolean;
}
export {};