/** * MongoDB adapter for UnBloque blog * @module @unbloque/blog-core/adapters */ import type { BlogAdapter } from "./adapter"; import type { BlogPost, CreateBlogPostInput, UpdateBlogPostInput, BlogPostFilters } from "../types"; export interface MongoDBAdapterConfig { uri: string; databaseName?: string; collectionName?: string; } /** * MongoDB database adapter * Requires MONGODB_URI environment variable */ export declare class MongoDBAdapter implements BlogAdapter { private client; private db; private collection; private databaseName; private collectionName; private isInitialized; constructor(config: MongoDBAdapterConfig); initialize(): Promise; getPosts(filters?: BlogPostFilters): Promise; getPostBySlug(slug: string): Promise; getPostById(id: string): Promise; createPost(input: CreateBlogPostInput): Promise; updatePost(id: string, input: UpdateBlogPostInput): Promise; deletePost(id: string): Promise; private ensureInitialized; private mapFromDb; private calculateReadingTime; } //# sourceMappingURL=mongodb-adapter.d.ts.map