import type { Config } from '../config/schema.js';
import type { GatewayBindMode } from '../config/schema.js';
export type { GatewayBindMode };
export declare function resolveGatewayBindMode(cfg: Config, bindOverride?: GatewayBindMode): GatewayBindMode;
export declare function resolveGatewayCustomBindHost(cfg: Config, override?: string): string | undefined;
export declare function isContainerEnvironment(): boolean;
/** Reset cached container detection (tests). */
export declare function resetContainerEnvironmentCacheForTest(): void;
export declare function defaultGatewayBindMode(): GatewayBindMode;
/** Resolve primary Tailscale tailnet IPv4 (100.x) when available. */
export declare function pickPrimaryTailnetIPv4(): string | undefined;
export declare function isValidIPv4(host: string): boolean;
export declare function resolveGatewayBindHostSync(params: {
    bindMode: GatewayBindMode;
    customBindHost?: string;
}): string;
export declare function canBindToHost(host: string): Promise<boolean>;
/**
 * Resolve gateway bind host with optional bindability probe (OpenClaw-aligned).
 */
export declare function resolveGatewayBindHost(params: {
    bindMode: GatewayBindMode;
    customBindHost?: string;
}): Promise<string>;
export declare function resolveGatewayListenHosts(bindHost: string): Promise<string[]>;
export declare function isNetworkAccessibleBindHost(bindHost: string): boolean;
export declare function resolveGatewayEffectiveHost(cfg: Config, overrides?: {
    bind?: GatewayBindMode;
}): string;
/** Loopback URL hostname when connecting to the gateway from the same machine. */
export declare function resolveGatewayLocalClientHost(cfg: Config): string;
