export type WebhookHeaders = Record<string, string | string[] | undefined>;

export type WebhookVerificationResult = {
  verified: boolean;
  reason: string;
};

export type NormalizedWebhookEvent = {
  provider: string;
  eventType: string;
  eventId: string;
  senderPhone?: string;
  recipientPhone?: string;
  externalMessageId?: string;
  eventTimestamp: Date;
  payload: Record<string, unknown>;
};

export type WebhookReceiveSummary = {
  provider: string;
  verified: boolean;
  verification: string;
  received: number;
  queued: number;
  duplicates: number;
  ignored: number;
  eventIds: string[];
};
