import { WaitlistInviteBatchDTO } from "../dtos/waitlist.invite.dto"; import { WaitlistPostDTO } from "../dtos/waitlist.post.dto"; import { WaitlistStatus } from "../entities/waitlist"; import { WaitlistService } from "../services/waitlist.service"; export declare class WaitlistController { private readonly service; constructor(service: WaitlistService); /** * POST /waitlists - Submit to waitlist (public) */ submit(body: WaitlistPostDTO): Promise; /** * GET /waitlists/confirm/:code - Confirm email (public) */ confirm(code: string): Promise; /** * GET /waitlists/stats - Get statistics (admin only) */ getStats(): Promise<{ data: { type: string; attributes: { pending: number; confirmed: number; invited: number; registered: number; total: number; }; }; }>; /** * GET /waitlists - List all entries (admin only) */ findAll(query: any, status?: WaitlistStatus): Promise; /** * POST /waitlists/:id/invite - Send invite (admin only) */ invite(id: string): Promise; /** * POST /waitlists/invite-batch - Bulk invite (admin only) */ inviteBatch(body: WaitlistInviteBatchDTO): Promise<{ data: { type: string; attributes: { invited: number; failed: number; }; }; }>; /** * GET /waitlists/invite/:code - Validate invite code (public) */ validateInviteCode(code: string): Promise<{ data: { type: string; attributes: { email: string; valid: boolean; }; }; }>; } //# sourceMappingURL=waitlist.controller.d.ts.map