import { type DeepPartial } from '@poppinss/utils/types';
import type { ServerConfig } from './types/server.ts';
type UserDefinedServerConfig = DeepPartial<Omit<ServerConfig, 'trustProxy'> & {
    trustProxy: ((address: string, distance: number) => boolean) | boolean | string;
}>;
/**
 * Define configuration for the HTTP server with sensible defaults.
 *
 * This function merges user-provided configuration with default values,
 * normalizes certain properties (like cookie maxAge and trustProxy settings),
 * and returns a complete ServerConfig object.
 *
 * @param config - User-defined server configuration options
 *
 * @example
 * ```ts
 * const config = defineConfig({
 *   trustProxy: true,
 *   cookie: {
 *     maxAge: '7d',
 *     secure: false
 *   },
 *   etag: true
 * })
 * ```
 */
export declare function defineConfig(config: UserDefinedServerConfig): ServerConfig;
export {};
