import type { CreateSessionRequest, UpdateSessionRequest, Session, SessionsPage } from '../types/api';
export declare const sessionsQueryKey: readonly ["sessions", "list"];
export type SessionListFilter = 'otto' | undefined;
export declare function useSessionsInfinite(sessionType?: SessionListFilter): import("@tanstack/react-query").UseInfiniteQueryResult<import("@tanstack/query-core").InfiniteData<SessionsPage, unknown>, Error>;
export declare function useSessions(sessionType?: SessionListFilter): {
    data: Session[];
    isLoading: boolean;
    isError: boolean;
    error: Error;
    hasNextPage: boolean;
    fetchNextPage: (options?: import("@tanstack/query-core").FetchNextPageOptions) => Promise<import("@tanstack/query-core").InfiniteQueryObserverResult<import("@tanstack/query-core").InfiniteData<SessionsPage, unknown>, Error>>;
    isFetchingNextPage: boolean;
};
/**
 * Resolves a session row by id. Looks in the main sessions list first; when
 * the session is not listed there (e.g. otto orchestrator sessions, which are
 * excluded from the default listing) it falls back to fetching the single
 * session. The fallback query stays disabled for normally-listed sessions.
 */
export declare function useSession(sessionId: string): Session;
export declare function useCreateSession(): import("@tanstack/react-query").UseMutationResult<Session, Error, CreateSessionRequest, unknown>;
export declare function useUpdateSession(sessionId: string): import("@tanstack/react-query").UseMutationResult<Session, Error, UpdateSessionRequest, unknown>;
export declare function useSetSessionPinned(): import("@tanstack/react-query").UseMutationResult<Session, Error, {
    sessionId: string;
    isPinned: boolean;
}, unknown>;
export declare function useMarkSessionViewed(): import("@tanstack/react-query").UseMutationResult<Session, Error, string, unknown>;
export declare function useDeleteSession(): import("@tanstack/react-query").UseMutationResult<{
    success: boolean;
}, Error, string, unknown>;
//# sourceMappingURL=useSessions.d.ts.map