import { JwtService, JwtSignOptions } from '@nestjs/jwt'; import { UserEntity } from '../../users/entities/users.entity'; import { UsersService } from '../../users/services/users.service'; import { UserRole } from '../../users/users.constants'; import { CheckEmailDto } from '../dto/check-email.dto'; import { CheckUsernameDto } from '../dto/check-username.dto'; import { LoginDto } from '../dto/login.dto'; import { RegisterDto } from '../dto/register.dto'; import { CheckModel, LoggedInModel, RefreshTokenModel } from '../models/auth.model'; import { TokensService } from './tokens.service'; export declare class AuthService { private readonly usersService; private readonly tokensService; private readonly jwtService; private readonly logger; constructor(usersService: UsersService, tokensService: TokensService, jwtService: JwtService); generateToken(user: UserEntity, role?: UserRole, options?: JwtSignOptions): string; checkUsername({ username }: CheckUsernameDto): Promise; checkEmail({ email }: CheckEmailDto): Promise; getProfile(id: string): Promise; login(loginDto: LoginDto): Promise; register(registerDto: RegisterDto): Promise; refreshAccessToken(token: string): Promise; private createTokenPair; private validateDto; private getExpiryDate; }