import * as vue from 'vue'; import { App, InjectionKey, Ref } from 'vue'; import { CoreMemoryClientConfig, CoreMemoryClient } from '../core/client'; export { ApiResponse, CoreMemoryClient, CoreMemoryClientConfig, PaginatedResponse } from '../core/client'; import { MemoryType, MemoryStatus, UpdateMemoryRequest, CreateMemoryRequest, MemoryEntry, SearchMemoryRequest } from '../core/types'; export { CreateMemoryRequest, MemoryEntry, MemorySearchResult, MemoryStatus, MemoryTopic, MemoryType, SearchMemoryRequest, UpdateMemoryRequest, UserMemoryStats } from '../core/types'; /** * Vue Plugin for Memory Client * * Provides a Memory Client instance to all components via Vue's provide/inject */ declare const MEMORY_CLIENT_KEY: InjectionKey; interface MemoryPluginOptions extends CoreMemoryClientConfig { /** Automatically authenticate on plugin installation */ autoAuth?: boolean; } /** * Vue plugin for Memory Client * * @example * ```ts * import { createApp } from 'vue'; * import { createMemoryPlugin } from '@lanonasis/memory-client/vue'; * import App from './App.vue'; * * const app = createApp(App); * * app.use(createMemoryPlugin({ * apiUrl: 'https://api.lanonasis.com', * apiKey: import.meta.env.VITE_LANONASIS_KEY * })); * * app.mount('#app'); * ``` */ declare function createMemoryPlugin(options: MemoryPluginOptions): { install(app: App): void; }; /** * Hook to access the Memory Client instance * * @throws Error if used without installing the plugin */ declare function useMemoryClient(): CoreMemoryClient; /** * Composable to list memories with optional filtering * * @example * ```vue * * * * ``` */ declare function useMemories(options?: { page?: number; limit?: number; memory_type?: string; topic_id?: string; project_ref?: string; status?: string; tags?: string[]; sort?: string; order?: 'asc' | 'desc'; }): { memories: vue.ComputedRef<{ id: string; title: string; content: string; summary?: string | undefined; memory_type: MemoryType; status: MemoryStatus; relevance_score?: number | undefined; access_count: number; last_accessed?: string | undefined; user_id: string; topic_id?: string | undefined; project_ref?: string | undefined; tags: string[]; metadata?: Record | undefined; created_at: string; updated_at: string; }[]>; loading: vue.ComputedRef; error: vue.ComputedRef<{ code: ErrorCode; message: string; statusCode?: number | undefined; details?: unknown; requestId?: string | undefined; timestamp?: string | undefined; } | null>; refresh: () => Promise; }; /** * Composable to fetch and manage a single memory by ID * * @example * ```vue * * * * ``` */ declare function useMemory(id: Ref | (() => string) | string): { memory: vue.ComputedRef<{ id: string; title: string; content: string; summary?: string | undefined; memory_type: MemoryType; status: MemoryStatus; relevance_score?: number | undefined; access_count: number; last_accessed?: string | undefined; user_id: string; topic_id?: string | undefined; project_ref?: string | undefined; tags: string[]; metadata?: Record | undefined; created_at: string; updated_at: string; } | null>; loading: vue.ComputedRef; error: vue.ComputedRef<{ code: ErrorCode; message: string; statusCode?: number | undefined; details?: unknown; requestId?: string | undefined; timestamp?: string | undefined; } | null>; refresh: () => Promise; update: (updates: UpdateMemoryRequest) => Promise; deleteMemory: () => Promise; }; /** * Composable to create new memories * * @example * ```vue * * *