import type { NetworkClient } from '@sudobility/types'; export interface IndexerWebhookConfig { indexerBackendUrl: string; networkClient: NetworkClient; } export interface WebhookEmailSent { senderAddress: string; recipientAddress: string; emailId: string; chainId?: number; } export interface WebhookRecipientLogin { recipientAddress: string; } export interface WebhookReferralRegistration { referrerAddress: string; refereeAddress: string; referralCode?: string; source?: string; } export interface WebhookLoginEvent { walletAddress: string; signature: string; message?: string; refer?: string; referralCode?: string; } export interface WebhookLoginResult { message: string; walletAddress: string; results: { recipientLogin: boolean; referralBonus: boolean; referralRegistration: boolean; pointsAwarded: number; }; } export interface WebhookResponse { success: boolean; data: { message: string; }; } export declare class IndexerWebhookHelper { private config; private client; constructor(config: IndexerWebhookConfig); processEmailSent(emailData: WebhookEmailSent): Promise; processRecipientLogin(loginData: WebhookRecipientLogin): Promise; registerReferral(referralData: WebhookReferralRegistration): Promise; processRefereeLogin(walletAddress: string, signature: string, message?: string): Promise; processLogin(loginData: WebhookLoginEvent): Promise; processSolanaWebhook(transactions: unknown[]): Promise<{ success: boolean; processed: number; total: number; }>; } export declare const createIndexerWebhookHelper: (indexerBackendUrl: string, networkClient: NetworkClient) => IndexerWebhookHelper; //# sourceMappingURL=indexer-webhooks.d.ts.map