import { Component, Theme, Example, ThemeVariable } from '../models/index.js'; export interface Database { initialize(): Promise; close(): Promise; insertComponent(component: Component): Promise; getComponent(id: string): Promise; getAllComponents(): Promise; searchComponents(query: string, category?: string): Promise; updateComponent(component: Component): Promise; deleteComponent(id: string): Promise; insertTheme(theme: Theme): Promise; getTheme(id: string): Promise; getAllThemes(): Promise; getThemeVariables(): Promise; insertExample(example: Example, componentId: string): Promise; getExamples(componentId: string): Promise; } export declare class SQLiteDatabase implements Database { private db; private dbPath; private runAsync; private getAsync; private allAsync; constructor(dbPath?: string); initialize(): Promise; close(): Promise; insertComponent(component: Component): Promise; getComponent(id: string): Promise; getAllComponents(): Promise; searchComponents(query: string, category?: string): Promise; updateComponent(component: Component): Promise; deleteComponent(id: string): Promise; insertTheme(theme: Theme): Promise; getTheme(id: string): Promise; getAllThemes(): Promise; getThemeVariables(): Promise; insertExample(example: Example, componentId: string): Promise; getExamples(componentId: string): Promise; private insertProperties; private insertMethods; private insertEvents; private insertVariations; private getProperties; private getMethods; private getEvents; private getVariations; private mapRowToComponent; } //# sourceMappingURL=database.d.ts.map