import { Repository } from 'typeorm'; import { ConfigService } from '@nestjs/config'; import { Invitation } from '../entities/invitation.entity'; import { User } from '../../auth/entities/user.entity'; import { Tenant } from '../../tenants/entities/tenant.entity'; import { EmailService } from '../../email/services/email.service'; import { InviteUserDto, InvitationResponseDto } from '../dto/invite-user.dto'; export declare class InvitationService { private readonly invitationRepository; private readonly userRepository; private readonly tenantRepository; private readonly emailService; private readonly configService; private readonly logger; private readonly invitationExpirationDays; constructor(invitationRepository: Repository, userRepository: Repository, tenantRepository: Repository, emailService: EmailService, configService: ConfigService); invite(dto: InviteUserDto, inviterId: string, tenantId: string): Promise; findAllByTenant(tenantId: string): Promise; resend(token: string, inviterId: string, tenantId: string): Promise; cancel(id: string, tenantId: string): Promise; findByToken(token: string): Promise; private generateSecureToken; private sendInvitationEmail; private expireOldInvitations; private translateRole; private toResponseDto; }