export default Server;
export type Factory = import('../types').Factory;
/**
 * @typedef {import('../types').Factory} Factory
 */
/**
 * Creates an instance of Server.
 *
 * @class
 */
declare class Server {
    /**
     * @class
     * @param {object} options
     * @param {number} [options.port=43134]
     * @param {string} [options.host='localhost']
     * @param {() => Factory | Promise<Factory>} createFactory
     */
    constructor(options: {
        port?: number | undefined;
        host?: string | undefined;
    } | undefined, createFactory: () => Factory | Promise<Factory>);
    options: {
        port?: number | undefined;
        host?: string | undefined;
    };
    server: Hapi.Server | null;
    port: number;
    host: string;
    createFactory: () => Factory | Promise<Factory>;
    /**
     * Start the server
     *
     * @param {number} port
     * @returns {Promise<Server>}
     */
    start(port?: number): Promise<Server>;
    /**
     * Stop the server
     *
     * @param {object} [options]
     * @param {number} options.timeout
     * @returns {Promise<void>}
     */
    stop(options?: {
        timeout: number;
    } | undefined): Promise<void>;
}
import Hapi from "@hapi/hapi";
//# sourceMappingURL=server.d.ts.map