import { Strategy } from 'passport-jwt';
import { ConfigService } from '@nestjs/config';
import { Request } from 'express';
import { AuthService } from '../auth.service';
declare const JwtStrategy_base: new (...args: [opt: import("passport-jwt").StrategyOptionsWithRequest] | [opt: import("passport-jwt").StrategyOptionsWithoutRequest]) => Strategy & {
    validate(...args: any[]): unknown;
};
export declare class JwtStrategy extends JwtStrategy_base {
    private configService;
    private authService;
    private readonly logger;
    constructor(configService: ConfigService, authService: AuthService);
    validate(req: Request, payload: any): Promise<{
        jti: any;
        userId: string;
        username: string | undefined;
        email: string | undefined;
        defaultRegion: string | undefined;
        currentOrganizationId: string | undefined;
        roles: string[];
        permissions: string[];
        organizationPermissions: Record<string, string[]>;
        organizationRoles: Record<string, string[]>;
        regionPermissions: Record<string, string[]>;
        regionRoles: Record<string, string[]>;
        dataScopes: {
            resource: string;
            scopeType: string;
        }[];
    }>;
}
export {};
