import { ITrackingAdapter } from './TrackingService.js'; import { TrackedPlan } from '../../types/index.js'; import { HulaApiClient } from '../api/HulaApiClient.js'; /** * Remote tracking adapter that uses hula-project API for plan tracking. * Replaces local GitHub Projects integration with server-side tracking. * * Implements caching to reduce API calls during interactive mode. */ export declare class RemoteTrackingAdapter implements ITrackingAdapter { private client; private cache; private lastFetched; private readonly CACHE_TTL; private currentUserId; constructor(client: HulaApiClient); /** * Returns the authenticated user id captured from the most recent * server response, or null if it has not yet been observed (older * server, or no list call has been made yet). */ getCurrentUserId(): string | null; private fetchAllPlans; private mapApiPlanToTrackedPlan; private canonicalName; /** * Read all tracked plans from the server (implements ITrackingAdapter) */ read(): Promise; /** * Write tracked plans (implements ITrackingAdapter) * No-op for remote adapter - server handles persistence via API calls */ write(_plans: TrackedPlan[]): Promise; /** * Add a new tracked plan */ add(plan: TrackedPlan): Promise; /** * Remove a tracked plan */ remove(trackingName: string): Promise; /** * Update a tracked plan */ update(trackingName: string, updates: Partial): Promise; /** * Get a specific tracked plan */ get(trackingName: string): Promise; /** * Get all tracked plans */ getAll(): Promise; /** * Force refresh cache (useful after mutations) */ refresh(): Promise; private isCacheValid; private invalidateCache; } //# sourceMappingURL=RemoteTrackingAdapter.d.ts.map