import type Database from 'better-sqlite3';
export interface ProjectRecord {
    id: number;
    name: string;
    path: string | null;
    language: string | null;
    framework: string | null;
    created_at: string;
    updated_at: string;
}
type CreateProjectData = Omit<ProjectRecord, 'id' | 'created_at' | 'updated_at'>;
type UpdateProjectData = Partial<Omit<ProjectRecord, 'id' | 'created_at'>>;
export declare class ProjectRepository {
    private db;
    private stmts;
    constructor(db: Database.Database);
    create(data: CreateProjectData): number;
    getById(id: number): ProjectRecord | undefined;
    update(id: number, data: UpdateProjectData): void;
    delete(id: number): void;
    findByName(name: string): ProjectRecord | undefined;
    findByPath(path: string): ProjectRecord | undefined;
    getAll(): ProjectRecord[];
}
export {};
