/** * Supabase adapter for UnBloque blog * @module @unbloque/blog-core/adapters */ import type { BlogAdapter } from "./adapter"; import type { BlogPost, CreateBlogPostInput, UpdateBlogPostInput, BlogPostFilters } from "../types"; export interface SupabaseAdapterConfig { supabaseUrl: string; supabaseKey: string; tableName?: string; } /** * Supabase database adapter * Requires NEXT_PUBLIC_SUPABASE_URL and SUPABASE_SERVICE_KEY environment variables */ export declare class SupabaseAdapter implements BlogAdapter { private client; private tableName; constructor(config: SupabaseAdapterConfig); 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; initialize(): Promise; private mapFromDb; private calculateReadingTime; } //# sourceMappingURL=supabase-adapter.d.ts.map