export declare class ApiError extends Error { statusCode: number; response?: any | undefined; constructor(message: string, statusCode: number, response?: any | undefined); } export declare class UnauthenticatedError extends ApiError { constructor(); } interface ApiClientOptions { baseUrl?: string; token?: string; } /** * API client for making authenticated requests to the Bragdoc API */ export declare class ApiClient { private baseUrl; private token?; constructor(options?: ApiClientOptions); /** * Create an API client instance with config loaded from disk */ static create(): Promise; /** * Make an authenticated GET request */ get(path: string): Promise; /** * Make an authenticated POST request */ post(path: string, body?: any): Promise; /** * Make an authenticated PUT request */ put(path: string, body?: any): Promise; /** * Make an authenticated DELETE request */ delete(path: string): Promise; /** * Make an authenticated request to the API */ private request; /** * Create multiple achievements in batch */ createAchievements(achievements: Array<{ title: string; summary?: string; details?: string; eventDuration: string; eventStart?: Date | null; eventEnd?: Date | null; projectId: string; companyId?: string | null; impact?: number; impactSource?: 'llm' | 'user'; source?: 'llm' | 'manual' | 'commit'; uniqueSourceId?: string | null; sourceItemType?: 'commit' | 'pr' | 'issue' | 'pr_comment' | null; }>): Promise; /** * Check if the client is authenticated */ isAuthenticated(): boolean; } /** * Create a new API client instance */ export declare function createApiClient(): Promise; export {}; //# sourceMappingURL=client.d.ts.map