/**
 * Dynamic Route Helper Functions
 *
 * This module provides utility functions for creating dynamic routes
 * with context-based host and port mapping.
 */
import type { IRouteConfig, TPortRange, IRouteContext } from '../../models/route-types.js';
/**
 * Create a helper function that applies a port offset
 * @param offset The offset to apply to the matched port
 * @returns A function that adds the offset to the matched port
 */
export declare function createPortOffset(offset: number): (context: IRouteContext) => number;
/**
 * Create a port mapping route with context-based port function
 * @param options Port mapping route options
 * @returns Route configuration object
 */
export declare function createPortMappingRoute(options: {
    sourcePortRange: TPortRange;
    targetHost: string | string[] | ((context: IRouteContext) => string | string[]);
    portMapper: (context: IRouteContext) => number;
    name?: string;
    domains?: string | string[];
    priority?: number;
    [key: string]: any;
}): IRouteConfig;
/**
 * Create a simple offset port mapping route
 * @param options Offset port mapping route options
 * @returns Route configuration object
 */
export declare function createOffsetPortMappingRoute(options: {
    ports: TPortRange;
    targetHost: string | string[];
    offset: number;
    name?: string;
    domains?: string | string[];
    priority?: number;
    [key: string]: any;
}): IRouteConfig;
/**
 * Create a dynamic route with context-based host and port mapping
 * @param options Dynamic route options
 * @returns Route configuration object
 */
export declare function createDynamicRoute(options: {
    ports: TPortRange;
    targetHost: (context: IRouteContext) => string | string[];
    portMapper: (context: IRouteContext) => number;
    name?: string;
    domains?: string | string[];
    path?: string;
    clientIp?: string[];
    priority?: number;
    [key: string]: any;
}): IRouteConfig;
