import { z } from 'zod'; interface PluginInput { directory: string; serverUrl?: URL | string; client: { session: { status(): Promise<{ data?: Record; }>; subscribe(callback: (event: { type: string; properties?: unknown; }) => void): () => void; }; }; } interface PluginOutput { name: string; event?: (input: { event: { type: string; properties?: unknown; }; }) => Promise; tool?: Record; config?: unknown; } type Plugin = (ctx: PluginInput) => Promise; declare const TmuxLayoutSchema: z.ZodEnum<["main-horizontal", "main-vertical", "tiled", "even-horizontal", "even-vertical"]>; type TmuxLayout = z.infer; declare const TmuxConfigSchema: z.ZodObject<{ enabled: z.ZodDefault; layout: z.ZodDefault>; main_pane_size: z.ZodDefault; spawn_delay_ms: z.ZodDefault; max_retry_attempts: z.ZodDefault; layout_debounce_ms: z.ZodDefault; max_agents_per_column: z.ZodDefault; reaper_enabled: z.ZodDefault; reaper_interval_ms: z.ZodDefault; reaper_min_zombie_checks: z.ZodDefault; reaper_grace_period_ms: z.ZodDefault; reaper_auto_self_destruct: z.ZodDefault; reaper_self_destruct_timeout_ms: z.ZodDefault; rotate_port: z.ZodDefault; max_ports: z.ZodDefault; }, "strip", z.ZodTypeAny, { enabled: boolean; layout: "main-horizontal" | "main-vertical" | "tiled" | "even-horizontal" | "even-vertical"; main_pane_size: number; spawn_delay_ms: number; max_retry_attempts: number; layout_debounce_ms: number; max_agents_per_column: number; reaper_enabled: boolean; reaper_interval_ms: number; reaper_min_zombie_checks: number; reaper_grace_period_ms: number; reaper_auto_self_destruct: boolean; reaper_self_destruct_timeout_ms: number; rotate_port: boolean; max_ports: number; }, { enabled?: boolean | undefined; layout?: "main-horizontal" | "main-vertical" | "tiled" | "even-horizontal" | "even-vertical" | undefined; main_pane_size?: number | undefined; spawn_delay_ms?: number | undefined; max_retry_attempts?: number | undefined; layout_debounce_ms?: number | undefined; max_agents_per_column?: number | undefined; reaper_enabled?: boolean | undefined; reaper_interval_ms?: number | undefined; reaper_min_zombie_checks?: number | undefined; reaper_grace_period_ms?: number | undefined; reaper_auto_self_destruct?: boolean | undefined; reaper_self_destruct_timeout_ms?: number | undefined; rotate_port?: boolean | undefined; max_ports?: number | undefined; }>; type TmuxConfig = z.infer; declare const PluginConfigSchema: z.ZodObject<{ enabled: z.ZodDefault; port: z.ZodDefault; layout: z.ZodDefault>; main_pane_size: z.ZodDefault; auto_close: z.ZodDefault; spawn_delay_ms: z.ZodDefault; max_retry_attempts: z.ZodDefault; layout_debounce_ms: z.ZodDefault; max_agents_per_column: z.ZodDefault; reaper_enabled: z.ZodDefault; reaper_interval_ms: z.ZodDefault; reaper_min_zombie_checks: z.ZodDefault; reaper_grace_period_ms: z.ZodDefault; reaper_auto_self_destruct: z.ZodDefault; reaper_self_destruct_timeout_ms: z.ZodDefault; rotate_port: z.ZodDefault; max_ports: z.ZodDefault; }, "strip", z.ZodTypeAny, { enabled: boolean; port: number; layout: "main-horizontal" | "main-vertical" | "tiled" | "even-horizontal" | "even-vertical"; main_pane_size: number; auto_close: boolean; spawn_delay_ms: number; max_retry_attempts: number; layout_debounce_ms: number; max_agents_per_column: number; reaper_enabled: boolean; reaper_interval_ms: number; reaper_min_zombie_checks: number; reaper_grace_period_ms: number; reaper_auto_self_destruct: boolean; reaper_self_destruct_timeout_ms: number; rotate_port: boolean; max_ports: number; }, { enabled?: boolean | undefined; port?: number | undefined; layout?: "main-horizontal" | "main-vertical" | "tiled" | "even-horizontal" | "even-vertical" | undefined; main_pane_size?: number | undefined; auto_close?: boolean | undefined; spawn_delay_ms?: number | undefined; max_retry_attempts?: number | undefined; layout_debounce_ms?: number | undefined; max_agents_per_column?: number | undefined; reaper_enabled?: boolean | undefined; reaper_interval_ms?: number | undefined; reaper_min_zombie_checks?: number | undefined; reaper_grace_period_ms?: number | undefined; reaper_auto_self_destruct?: boolean | undefined; reaper_self_destruct_timeout_ms?: number | undefined; rotate_port?: boolean | undefined; max_ports?: number | undefined; }>; type PluginConfig = z.infer; declare const OpencodeAgentTmux: Plugin; export { type PluginConfig, type TmuxConfig, type TmuxLayout, OpencodeAgentTmux as default };