import type { CreateJobRequest, JobResponse, CLIOutput } from './types.js'; export declare class ExportCommentsClient { private token; private baseUrl; constructor(token: string, baseUrl?: string); private get headers(); /** Make a request against /api/v1/* (most user/webhook/schedule endpoints). */ private v1Request; private request; /** Create a new export job */ createJob(req: CreateJobRequest): Promise>; /** Check the status of an export job */ getJob(guid: string): Promise>; /** List all export jobs */ listJobs(page?: number, limit?: number): Promise>; /** Download a file from a direct URL, saving it to disk */ private downloadFile; /** * Download the export file (Excel/CSV) for a completed job. * First fetches job status to get the download URL, then downloads. */ downloadJob(guid: string): Promise>; /** * Download the raw JSON data for a completed job. * First fetches job status to get the JSON URL, then downloads. */ downloadJson(guid: string): Promise>; /** Authenticated user's profile (email, tier, account info). */ getProfile(): Promise>; /** Current usage quota: daily/monthly counts vs. allowances. */ getQuota(): Promise>; /** Plan tier limits (concurrent exports, max comments, rate limits, etc.). */ getLimits(): Promise>; /** List all webhooks for the authenticated account. */ listWebhooks(): Promise>; /** * @param event subscription event name (e.g. "export.completed") * @param url POST target — must respond 2xx within 10s * * The API-Platform webhook resource expects `events: string[]` and a * `signingSecret` for HMAC verification. We accept a single event in the * MCP-facing shape and expand it here so the MCP tool stays single-arg. */ createWebhook(event: string, url: string): Promise>; updateWebhook(uuid: string, fields: { event?: string; url?: string; }): Promise>; deleteWebhook(uuid: string): Promise>; /** Toggle uses PATCH (API-Platform exposes it that way). */ toggleWebhook(uuid: string): Promise>; /** Sends a test event payload. The main /webhooks bundle has no test * endpoint; the Zapier-integration route does, and accepts the same UUID. */ testWebhook(uuid: string): Promise>; listSchedules(): Promise>; createSchedule(payload: { url: string; cron?: string; frequency?: string; options?: Record; }): Promise>; updateSchedule(uuid: string, fields: Record): Promise>; deleteSchedule(uuid: string): Promise>; runSchedule(uuid: string): Promise>; pauseSchedule(uuid: string): Promise>; resumeSchedule(uuid: string): Promise>; /** Ping the API to check connectivity */ ping(): Promise>; /** * Poll a job until it reaches a terminal status (done/error). * Returns the final job state. */ waitForJob(guid: string, opts?: { intervalMs?: number; timeoutMs?: number; onPoll?: (job: JobResponse) => void; }): Promise>; } //# sourceMappingURL=client.d.ts.map