/**
 * GitHub Sync Orchestrator — Wires push sync, Projects V2, and frontmatter updates
 *
 * Composes all sync sub-components into a single flow:
 * 1. Push user stories → GitHub issues
 * 2. (Optional) Add issues to Projects V2 board
 * 3. (Optional) Set Status/Priority fields on V2 items
 * 4. Update spec frontmatter with sync results
 *
 * @module github-sync-orchestrator
 */
import type { UserStoryForSync, PushSyncResult } from './github-push-sync.js';
import type { FieldSyncResult } from './github-field-sync.js';
import type { GitHubSyncMetadata } from '../../../../../src/core/types/sync-profile.js';
export interface SyncOrchestratorConfig {
    owner: string;
    repo: string;
    token?: string;
    dryRun?: boolean;
    projectV2Enabled?: boolean;
    projectV2Number?: number;
    projectV2Id?: string;
    boardName?: string;
    statusFieldMapping?: Record<string, string>;
    priorityFieldMapping?: Record<string, string>;
}
export interface ProjectV2Result {
    projectId: string;
    projectNumber: number;
    itemIds: string[];
    fieldSyncResult: FieldSyncResult;
}
export interface SyncOrchestratorResult {
    pushResult: PushSyncResult;
    projectV2Result?: ProjectV2Result;
    frontmatterResult: GitHubSyncMetadata;
}
export declare class GitHubSyncOrchestrator {
    private config;
    constructor(config: SyncOrchestratorConfig);
    /**
     * Run the full sync flow for a spec.
     */
    syncSpec(specPath: string, userStories: UserStoryForSync[]): Promise<SyncOrchestratorResult>;
    private syncProjectV2;
}
//# sourceMappingURL=github-sync-orchestrator.d.ts.map