import type { Payload, PayloadRequest, TypedUser } from 'payload'; import type { EmailSenderOption, VerificationFlowConfig } from '../types'; export type SendInvitationEmailResult = { status: 'sent'; } | { status: 'already_accepted'; } | { status: 'user_not_found'; } | { status: 'flow_not_found'; } | { status: 'no_invitation_flow'; }; interface SendInvitationEmailConfig { emailSender: EmailSenderOption | undefined; generateInvitationEmailHTML: (args: { req: PayloadRequest; invitationURL: string; user: TypedUser; }) => string | Promise; generateInvitationEmailSubject: (args: { req: PayloadRequest; invitationURL: string; user: TypedUser; }) => string | Promise; resolveInvitationURL: (args: { payload: Payload; req: PayloadRequest | undefined; token: string; user: TypedUser; }) => Promise; verificationFlows: Record | undefined; } export declare function createSendInvitationEmail(config: SendInvitationEmailConfig): (options: { payload: Payload; userId: string | number; req?: PayloadRequest; }) => Promise; export declare function sendInvitationEmail(options: { payload: Payload; userId: string | number; req?: PayloadRequest; }): Promise; export {}; //# sourceMappingURL=send-invitation-email.d.ts.map