export interface SubagentViewerInstance {
    childSessionId: string;
    agent: string;
    task: string;
    /** Monotonic focus counter used to derive z-order (higher = on top). */
    z: number;
}
export interface SubagentViewerPosition {
    x: number;
    y: number;
}
interface SubagentViewerState {
    /** Open viewers in opening order (stable for default cascade placement). */
    viewers: SubagentViewerInstance[];
    /** Persisted drag positions keyed by child session id (survives close/reopen). */
    positions: Record<string, SubagentViewerPosition>;
    nextZ: number;
    open: (args: {
        childSessionId: string;
        agent: string;
        task: string;
    }) => void;
    close: (childSessionId: string) => void;
    closeAll: () => void;
    bringToFront: (childSessionId: string) => void;
    setPosition: (childSessionId: string, position: SubagentViewerPosition) => void;
}
export declare const useSubagentViewerStore: import("zustand").UseBoundStore<import("zustand").StoreApi<SubagentViewerState>>;
export {};
//# sourceMappingURL=subagentViewerStore.d.ts.map