/** * Fake database implementation using browser cookies for development mode * This allows developers to test the ORM without an actual Appwrite backend */ import { DatabaseSchema } from '../shared/types'; interface Document { $id: string; $createdAt: string; $updatedAt: string; [key: string]: any; } export declare class FakeDatabaseClient { private databaseId; private static readonly COOKIE_PREFIX; private static readonly MAX_COOKIE_SIZE; private lastWarning; constructor(databaseId: string); /** * Get the database from cookies */ private getDatabase; /** * Save the database to cookies */ private saveDatabase; /** * Get collection from database */ private getCollection; /** * Generate a unique ID */ private generateId; /** * Create a document */ createDocument(collectionId: string, data: Partial, schema?: DatabaseSchema): Document; /** * Get document by ID */ getDocument(collectionId: string, documentId: string): Document | null; /** * List documents with optional filters */ listDocuments(collectionId: string, filters?: Record): { documents: Document[]; total: number; }; /** * Update a document */ updateDocument(collectionId: string, documentId: string, data: Partial, schema?: DatabaseSchema): Document; /** * Delete a document */ deleteDocument(collectionId: string, documentId: string): void; /** * Return last warning message (if any) produced by save operations */ getLastWarning(): string | null; /** * Clear all data (for testing) */ clearDatabase(): void; /** * Validate document against schema */ private validateDocument; } export {}; //# sourceMappingURL=fake-database.d.ts.map