recallrai
Version:
Official Node.js SDK for RecallrAI - Revolutionary contextual memory system that enables AI assistants to form meaningful connections between conversations, just like human memory.
62 lines (61 loc) • 2.25 kB
TypeScript
import { HTTPClient } from './utils/http-client';
import { UserModel } from './models/user';
import { Session } from './session';
import { SessionList } from './models/session';
export declare class User {
private http;
private userData;
userId: string;
metadata: Record<string, any>;
createdAt: Date;
lastActiveAt: Date;
/**
* Initialize a user.
*
* @param httpClient HTTP client for API communication
* @param userData User data model with user information
*/
constructor(httpClient: HTTPClient, userData: UserModel);
/**
* Update this user's metadata or ID.
*
* @param newMetadata New metadata to associate with the user
* @param newUserId New ID for the user
* @returns The updated user object
* @throws {UserNotFoundError} If the user is not found
* @throws {UserAlreadyExistsError} If a user with the new_user_id already exists
*/
update(newMetadata?: Record<string, any>, newUserId?: string): Promise<User>;
/**
* Delete this user.
*
* @throws {UserNotFoundError} If the user is not found
*/
delete(): Promise<void>;
/**
* Create a new session for this user.
*
* @param autoProcessAfterMinutes Minutes to wait before auto-processing (-1 to disable)
* @returns A Session object to interact with the created session
* @throws {UserNotFoundError} If the user is not found
*/
createSession(autoProcessAfterMinutes?: number): Promise<Session>;
/**
* Get an existing session for this user.
*
* @param sessionId ID of the session to retrieve
* @returns A Session object to interact with the session
* @throws {UserNotFoundError} If the user is not found
* @throws {SessionNotFoundError} If the session is not found
*/
getSession(sessionId: string): Promise<Session>;
/**
* List sessions for this user with pagination.
*
* @param offset Number of records to skip
* @param limit Maximum number of records to return
* @returns List of sessions with pagination info
* @throws {UserNotFoundError} If the user is not found
*/
listSessions(offset?: number, limit?: number): Promise<SessionList>;
}