import { HttpContext } from '@adonisjs/core/http';
import { AuthHeaderDecoder } from './auth_header_decoder.js';
import { AuthCredentials, SwaggerAuthConfig } from '../types.js';
export declare class AuthMiddleware {
    protected readonly config: SwaggerAuthConfig;
    protected readonly tokenDecoder: AuthHeaderDecoder;
    /**
     * Constructor
     */
    constructor(config: SwaggerAuthConfig, tokenDecoder: AuthHeaderDecoder);
    /**
     * Handle
     */
    handle({ request, response }: HttpContext, next: () => Promise<void>): Promise<void>;
    /**
     * Verify credentials
     */
    protected verifyCredentials(userCredentials: AuthCredentials | undefined): Promise<boolean>;
}
