/**
 * SQLite WorkItem Repository Implementation
 *
 * Implements IWorkItemRepository using better-sqlite3.
 */
import type Database from 'better-sqlite3';
import type { IWorkItemRepository, WorkItemFilter } from '../../application/ports/output/repositories/work-item-repository.interface.js';
import type { WorkItem } from '../../domain/generated/output.js';
export declare class SQLiteWorkItemRepository implements IWorkItemRepository {
    private readonly db;
    constructor(db: Database.Database);
    create(item: WorkItem): Promise<void>;
    findById(id: string): Promise<WorkItem | null>;
    findByIdentifier(projectId: string, sequenceId: number): Promise<WorkItem | null>;
    listByProject(projectId: string, filters?: WorkItemFilter): Promise<WorkItem[]>;
    update(id: string, fields: Partial<Pick<WorkItem, 'title' | 'description' | 'stateId' | 'priority' | 'parentId' | 'sortOrder' | 'startDate' | 'dueDate' | 'estimateValue' | 'customPropertyValues'>>): Promise<void>;
    softDelete(id: string): Promise<void>;
    addLabel(workItemId: string, labelId: string): Promise<void>;
    removeLabel(workItemId: string, labelId: string): Promise<void>;
    addAssignee(workItemId: string, assigneeId: string): Promise<void>;
    removeAssignee(workItemId: string, assigneeId: string): Promise<void>;
    getLabels(workItemId: string): Promise<string[]>;
    getAssignees(workItemId: string): Promise<string[]>;
}
//# sourceMappingURL=sqlite-work-item.repository.d.ts.map