import { BaasixLoggerOptions } from "./utils/logger.js";
import type { BaasixPlugin, PluginManagerOptions } from "./types/plugin.js";
export declare const app: import("express-serve-static-core").Express;
export declare const invalidateCorsCache: () => void;
/**
 * Server startup options
 */
export interface StartServerOptions {
    /** Port number to listen on (default from env or 8055) */
    port?: number;
    /** Pino logger configuration options */
    logger?: BaasixLoggerOptions;
    /** Plugins to load */
    plugins?: BaasixPlugin[];
    /** Plugin manager options */
    pluginOptions?: PluginManagerOptions;
}
/**
 * Start the Baasix server
 * @param options - Server startup options including port and logger configuration
 */
export declare function startServer(options?: StartServerOptions | number): Promise<import("express-serve-static-core").Express>;
/**
 * Start server for testing with environment overrides
 * @param options - Testing options including environment overrides and logger configuration
 */
export declare function startServerForTesting(options?: {
    envOverrides?: Record<string, string>;
    logger?: BaasixLoggerOptions;
}): Promise<import("express-serve-static-core").Express>;
/**
 * Destroy all tables in the database (for testing)
 */
export declare function destroyAllTablesInDB(): Promise<void>;
export default app;
//# sourceMappingURL=app.d.ts.map