import { IOperation, IChassisDataStore, IChassisMiddleware } from "../interfaces"; /************************************************************************* * * Troven CONFIDENTIAL * __________________ * * (c) 2017-2020 Troven Ventures Pty Ltd. All Rights Reserved. * * NOTICE: All information contained herein is, and remains * the property of Troven Pty Ltd and its licensors, * if any. The intellectual and technical concepts contained * herein are proprietary to Troven Pty Ltd * and its suppliers and may be covered by International and Regional Patents, * patents in process, and are protected by trade secret or copyright law. * Dissemination of this information or reproduction of this material * is strictly forbidden unless prior written permission is obtained * from Troven Pty Ltd. */ export declare class CRUDMiddleware implements IChassisMiddleware { name: string; store: IChassisDataStore; method_actions: any; constructor(store_plugin: IChassisDataStore); /** * fn() is the generic entry point to initialize a plugin. * * @param context * @param options */ fn(operation: IOperation, _options: any): (req: any, res: any, next: Function) => void; route_to_fields(route: string): any[]; handle(operation: IOperation, actionId: string, model: any, req: any, _options: any, response_handler: Function): void; validate_model(operation: IOperation, model: any, callback: Function): boolean; model_transforms(model: any, options: any): any; model_policies(model: any, options: any): any; }