import { DatabaseController } from "./database.controller";
import { StorageController } from "./storage.controller";
import { BFastDatabaseOptions } from "../bfast-database.option";
import { AuthController } from "./auth.controller";
import { NextFunction, Request, Response } from 'express';
import { SecurityController } from "./security.controller";
import { RulesController } from "./rules.controller";
import { DatabaseAdapter } from "../adapters/database.adapter";
import { AuthAdapter } from "../adapters/auth.adapter";
import { UpdateRuleController } from "./update.rule.controller";
import { FilesAdapter } from "../adapters/files.adapter";
export declare class RestController {
    constructor();
    getFile(request: Request, response: Response, _: NextFunction, storageController: StorageController, databaseAdapter: DatabaseAdapter, filesAdapter: FilesAdapter, options: any): void;
    getThumbnail(request: Request, response: Response, _: NextFunction, storageController: StorageController, databaseAdapter: DatabaseAdapter, filesAdapter: FilesAdapter, options: BFastDatabaseOptions): void;
    getAllFiles(request: Request, response: Response, _: NextFunction, storageController: StorageController, databaseAdapter: DatabaseAdapter, filesAdapter: FilesAdapter, options: BFastDatabaseOptions): void;
    multipartForm(request: Request, response: Response, _: NextFunction, storageController: StorageController, securityController: SecurityController, databaseAdapter: DatabaseAdapter, filesAdapter: FilesAdapter, options: BFastDatabaseOptions): void;
    verifyApplicationId(request: any, response: any, next: any, options: BFastDatabaseOptions): void;
    filePolicy(request: Request, response: Response, next: NextFunction, databaseController: DatabaseController, securityController: SecurityController, databaseAdapter: DatabaseAdapter, authController: AuthController, options: BFastDatabaseOptions): void;
    verifyToken(request: Request, response: Response, next: NextFunction, securityController: SecurityController, options: BFastDatabaseOptions): void;
    verifyMethod(request: any, response: any, next: any): void;
    verifyBodyData(request: any, response: any, next: any): void;
    handleRuleBlocks(request: Request, response: Response, _: NextFunction, rulesController: RulesController, authController: AuthController, updateRuleController: UpdateRuleController, databaseController: DatabaseController, securityController: SecurityController, storageController: StorageController, authAdapter: AuthAdapter, databaseAdapter: DatabaseAdapter, filesAdapter: FilesAdapter, options: BFastDatabaseOptions): void;
}
