export interface GitHubWebhookEvent { /** GitHub event type from X-GitHub-Event header (e.g. 'pull_request', 'issues') */ type: string; /** Action field from the payload (e.g. 'opened', 'synchronize') */ action: string; /** Raw webhook payload */ payload: Record; } /** * GitHubIntegration, HMAC verification, event parsing, prompt generation, * and outbound GitHub API calls (comments, reviews). */ export declare class GitHubIntegration { /** * Verify an HMAC-SHA256 webhook signature. * GitHub sends: X-Hub-Signature-256: sha256= */ static verifySignature(payload: string, signature: string, secret: string): boolean; /** * Parse a GitHub webhook payload into a structured event. * The event type comes from the X-GitHub-Event header. */ static parseEvent(headers: Headers, body: Record): GitHubWebhookEvent; /** * Convert a GitHub webhook event into an agent prompt. * Returns null if the event does not warrant agent action. */ static eventToPrompt(event: GitHubWebhookEvent): string | null; /** * Post a comment on a pull request. */ postPRComment(owner: string, repo: string, prNumber: number, body: string, token: string): Promise; /** * Post a review on a pull request. */ postPRReview(owner: string, repo: string, prNumber: number, body: string, event: 'APPROVE' | 'REQUEST_CHANGES' | 'COMMENT', token: string): Promise; /** * Post a comment on an issue. */ postIssueComment(owner: string, repo: string, issueNumber: number, body: string, token: string): Promise; private githubPost; } //# sourceMappingURL=github.d.ts.map