/**
 * GitHub Field Sync — Status and Priority field sync for Projects V2
 *
 * Syncs Status and Priority custom fields on Projects V2 items
 * using configurable field mappings.
 *
 * @module github-field-sync
 */
import type { GitHubGraphQLClient } from './github-graphql-client.js';
export interface FieldSyncConfig {
    projectId: string;
    statusFieldMapping?: Record<string, string>;
    priorityFieldMapping?: Record<string, string>;
}
export interface FieldSyncItem {
    itemId: string;
    status?: string;
    priority?: string;
}
export interface FieldSyncResult {
    updated: Array<{
        itemId: string;
        field: string;
        value: string;
    }>;
    warnings: Array<{
        itemId: string;
        field: string;
        message: string;
    }>;
}
export declare class GitHubFieldSync {
    private client;
    private config;
    private statusField?;
    private priorityField?;
    private fieldsLoaded;
    constructor(client: GitHubGraphQLClient, config: FieldSyncConfig);
    /**
     * Load project fields and cache field IDs and option IDs.
     */
    loadFields(): Promise<void>;
    /**
     * Sync fields for one or more items.
     * Auto-calls loadFields if not called yet.
     */
    syncItemFields(items: FieldSyncItem[]): Promise<FieldSyncResult>;
    private syncField;
}
//# sourceMappingURL=github-field-sync.d.ts.map