import { StatusResult } from "simple-git"; import { EventEmitter } from "events"; import { Config } from "../config/index.js"; export interface GitSyncEvents { syncing: () => void; synced: (result: SyncResult) => void; error: (error: Error) => void; conflict: (files: string[]) => void; } export interface SyncResult { committed: boolean; pushed: boolean; pulled: boolean; filesChanged: number; commitMessage?: string; } export declare class GitSync extends EventEmitter { private config; private git; private notesDir; private debounceTimer; private pendingSync; constructor(config: Config); isGitRepo(): Promise; getStatus(): Promise; hasRemote(): Promise; private generateCommitMessage; sync(): Promise; scheduleSync(): void; cancelPendingSync(): void; forcePush(): Promise; resolveConflicts(strategy: "ours" | "theirs"): Promise; getLog(limit?: number): Promise>; } //# sourceMappingURL=git-sync.d.ts.map