/** Minimum zellij version with the full CLI-automation surface we depend on. */
export declare const MIN_ZELLIJ_VERSION: {
    major: number;
    minor: number;
    patch: number;
};
/**
 * Strip zellij-injected env vars when spawning a `zellij` child process.
 *
 * If the parent was launched from inside a zellij session, `ZELLIJ` and
 * `ZELLIJ_SESSION_NAME` are exported. Any `zellij` subcommand we run then
 * resolves against that parent session (e.g. `action` targets the wrong
 * session, `attach` nests), so we drop them — the analogue of tmuxEnv()
 * stripping TMUX/TMUX_PANE.
 */
export declare function zellijEnv(env?: NodeJS.ProcessEnv): NodeJS.ProcessEnv;
/** Parse `zellij 0.44.1` → {major,minor,patch}. Returns undefined if unparseable. */
export declare function parseZellijVersion(raw: string): {
    major: number;
    minor: number;
    patch: number;
} | undefined;
/** True iff `v` >= MIN_ZELLIJ_VERSION (pure — unit testable). */
export declare function isZellijVersionSupported(v: {
    major: number;
    minor: number;
    patch: number;
}, min?: {
    major: number;
    minor: number;
    patch: number;
}): boolean;
/**
 * Functional zellij probe — actually creates a headless background session and
 * tears it down. `zellij --version` only checks the binary; this verifies the
 * server can fork + that the version is new enough.
 *
 * Uses `attach --create-background` (no TTY required — verified) and
 * `delete-session -f` so we never leave a resurrectable corpse behind.
 */
export declare function probeZellijFunctional(): {
    ok: true;
    version: string;
} | {
    ok: false;
    reason: string;
};
//# sourceMappingURL=ensure-zellij.d.ts.map