import type { ApiClient } from './api-client'; import type { CachedProjectConfig, ProjectConfigResponse } from './types'; /** * Result of a project config sync attempt. * * `fromCache: true` indicates the response came from the on-disk fallback cache * (server was unreachable). The cache intentionally omits secrets (aws / backlog.apiKey * / envVars), so callers should preserve previously-applied secret state instead of * overwriting it with the cache-derived config. */ export interface SyncProjectConfigResult { config: ProjectConfigResponse; fromCache: boolean; } /** * Sync project config from server. * Returns the config if it was updated (different hash), or null if unchanged. */ export declare function syncProjectConfig(client: ApiClient, currentHash: string | undefined, projectDir: string | undefined, prefix: string): Promise; /** * Save project config to cache (excluding AWS credentials). * Uses atomic write (temp + rename) with 0o600 permissions. */ export declare function saveCachedConfig(projectDir: string, config: ProjectConfigResponse): void; /** * Load cached project config. * Returns null if cache doesn't exist or is corrupted. */ export declare function loadCachedConfig(projectDir: string): CachedProjectConfig | null; //# sourceMappingURL=project-config-sync.d.ts.map