/*!
 * Source https://github.com/donmahallem/trapeze
 */
import * as express from 'express';
import { IApiServerConfig } from './api-server-config';
export declare const api404Handler: express.RequestHandler;
/**
 * Api Server
 */
export declare class ApiServer {
    readonly config: IApiServerConfig;
    private app;
    private server;
    private isRunning;
    private readonly ngModulePath;
    /**
     * Api Server for the Trapeze Api Wrapper
     * @param config Config to be used to start the server
     */
    constructor(config: IApiServerConfig);
    /**
     * Checks the Auth Header for the Api Token
     * @param secret Secret to be checked in the auth header
     */
    createAuthMiddleware(secret: string): express.RequestHandler;
    /**
     * Starts the app server
     */
    start(): Promise<void>;
    /**
     * Stops the app server
     */
    stop(): void;
}
