import { IResult } from '@studyportals/sp-r2d2-interface';
import { IRequest } from '../requests-interfaces/i-request.interface';
import { IRequestHandler } from '../request-handling-interfaces/i-request-handler.interface';
export declare class BaseRequestHandler implements IRequestHandler {
    handle(request: IRequest): Promise<IResult>;
    protected validateRequest(request: IRequest): Promise<void>;
    protected validateRequestData(data: {
        [key: string]: any;
    }): Promise<void>;
    protected additionalRequestValidation(request: IRequest): Promise<void>;
    protected authorizeRequest(request: IRequest): Promise<void>;
    protected executeRequest(request: IRequest): Promise<IResult>;
}
