import { ExecutionContext } from '@nestjs/common';
import { Reflector } from '@nestjs/core';
import { SDKAuthenticationGuard } from '@serene-dev/la-nest-library';
import { TokenService } from 'src/services/token.service';
import { AuthService } from '../services/authentication.service';
import { AuthEntity } from '../entities/authentication.entity';
import { IAuthParam } from '../interfaces/authentication.interface';
import { ClientService } from 'src/services/client.service';
export declare const AllowClientKey: () => import("@nestjs/common").CustomDecorator<string>;
export declare class JwtAuthGuard extends SDKAuthenticationGuard<AuthEntity> {
    protected tokenService: TokenService;
    protected authS: AuthService;
    protected reflector: Reflector;
    private readonly clientService;
    constructor(tokenService: TokenService, authS: AuthService, reflector: Reflector, clientService: ClientService);
    verifyAuthToken(context: ExecutionContext, payload: IAuthParam): Promise<void>;
    canActivate(context: ExecutionContext): Promise<boolean>;
    static provideGuard(): {
        provide: string;
        useClass: any;
    };
}
