/**
 * Gateway Lock - Prevents multiple gateway instances from running simultaneously
 */
export type GatewayLockHandle = {
    lockPath: string;
    configPath: string;
    release: () => Promise<void>;
};
export type GatewayLockOptions = {
    timeoutMs?: number;
    pollIntervalMs?: number;
    staleMs?: number;
    port?: number;
};
export declare class GatewayLockError extends Error {
    readonly cause?: unknown;
    constructor(message: string, cause?: unknown);
}
export declare function acquireGatewayLock(configPath: string, opts?: GatewayLockOptions): Promise<GatewayLockHandle>;
