import { Backend } from "../../core/backend"; import { ControllerDefinition } from "./ControllerDefinition"; import { EmbeddedSDK } from "../../core/shared/sdk/embeddedSdk"; /** * Base class to declare a controller class */ export declare abstract class Controller { /** * Current application instance */ protected app: Backend; /** * Controller name */ name: string; /** * Controller definition * * @example * { * actions: { * sayHello: { * handler: async request => `Hello, ${request.input.args.name}`, * http: [{ verb: 'POST', path: '/greeting/hello/:name' }] * } * } * } * */ definition: ControllerDefinition; /** * EmbeddedSDK instance */ get sdk(): EmbeddedSDK; constructor(app: Backend); }