/// <reference types="@adonisjs/http-server/build/adonis-typings" />
import { HttpContextContract } from '@ioc:Adonis/Core/HttpContext';
import { AuthCredentials, SwaggerAuthConfig } from '@ioc:Adonis/Addons/Swagger';
import { AuthHeaderDecoder } from './AuthHeaderDecoder';
export declare class AuthMiddleware {
    protected readonly config: SwaggerAuthConfig;
    protected readonly tokenDecoder: AuthHeaderDecoder;
    constructor(config: SwaggerAuthConfig, tokenDecoder: AuthHeaderDecoder);
    handle({ request, response }: HttpContextContract, next: () => Promise<void>): Promise<void>;
    protected verifyCredentials(userCredentials: AuthCredentials | undefined): Promise<boolean>;
}
