import { APIResource } from "../../core/resource.js"; import * as PassagesAPI from "./passages.js"; import { PassageCreateManyParams, PassageCreateManyResponse, PassageCreateParams, PassageDeleteParams, Passages } from "./passages.js"; import * as ModelsAPI from "../models/models.js"; import { APIPromise } from "../../core/api-promise.js"; import { ArrayPage, type ArrayPageParams, PagePromise } from "../../core/pagination.js"; import { RequestOptions } from "../../internal/request-options.js"; export declare class Archives extends APIResource { passages: PassagesAPI.Passages; /** * Create a new archive. */ create(body: ArchiveCreateParams, options?: RequestOptions): APIPromise; /** * Get a single archive by its ID. */ retrieve(archiveID: string, options?: RequestOptions): APIPromise; /** * Update an existing archive's name and/or description. */ update(archiveID: string, body: ArchiveUpdateParams, options?: RequestOptions): APIPromise; /** * Get a list of all archives for the current organization with optional filters * and pagination. */ list(query?: ArchiveListParams | null | undefined, options?: RequestOptions): PagePromise; /** * Delete an archive by its ID. */ delete(archiveID: string, options?: RequestOptions): APIPromise; } export type ArchivesArrayPage = ArrayPage; /** * Representation of an archive - a collection of archival passages that can be * shared between agents. */ export interface Archive { /** * The human-friendly ID of the Archive */ id: string; /** * The creation date of the archive */ created_at: string; /** * The name of the archive */ name: string; /** * The id of the user that made this object. */ created_by_id?: string | null; /** * A description of the archive */ description?: string | null; /** * Configuration for embedding model connection and processing parameters. */ embedding_config?: ModelsAPI.EmbeddingConfig | null; /** * The id of the user that made this object. */ last_updated_by_id?: string | null; /** * Additional metadata */ metadata?: { [key: string]: unknown; } | null; /** * The timestamp when the object was last updated. */ updated_at?: string | null; /** * The vector database provider used for this archive's passages */ vector_db_provider?: VectorDBProvider; } /** * Supported vector database providers for archival memory */ export type VectorDBProvider = 'native' | 'tpuf' | 'pinecone'; export interface ArchiveCreateParams { name: string; description?: string | null; /** * Embedding model handle for the archive */ embedding?: string | null; /** * Configuration for embedding model connection and processing parameters. */ embedding_config?: ModelsAPI.EmbeddingConfig | null; } export interface ArchiveUpdateParams { description?: string | null; name?: string | null; } export interface ArchiveListParams extends ArrayPageParams { /** * Only archives attached to this agent ID */ agent_id?: string | null; /** * Filter by archive name (exact match) */ name?: string | null; } export declare namespace Archives { export { type Archive as Archive, type VectorDBProvider as VectorDBProvider, type ArchivesArrayPage as ArchivesArrayPage, type ArchiveCreateParams as ArchiveCreateParams, type ArchiveUpdateParams as ArchiveUpdateParams, type ArchiveListParams as ArchiveListParams, }; export { Passages as Passages, type PassageCreateManyResponse as PassageCreateManyResponse, type PassageCreateParams as PassageCreateParams, type PassageDeleteParams as PassageDeleteParams, type PassageCreateManyParams as PassageCreateManyParams, }; } //# sourceMappingURL=archives.d.ts.map