import type { CreateSessionRequest, UpdateSessionRequest, Session, SessionsPage } from '../types/api'; export declare const sessionsQueryKey: readonly ["sessions", "list"]; export declare function getSessionsQueryKey(sessionType?: SessionListFilter): readonly ["project", string, "sessions", "list", "looper"] | readonly ["project", string, "sessions", "list"]; export declare function getSessionQueryKey(sessionId: string): readonly ["project", string, "session", string]; export type SessionListFilter = 'looper' | undefined; export declare function useSessionsInfinite(sessionType?: SessionListFilter): import("@tanstack/react-query").UseInfiniteQueryResult, 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, 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; export declare function useUpdateSession(sessionId: string): import("@tanstack/react-query").UseMutationResult; export declare function useSetSessionPinned(): import("@tanstack/react-query").UseMutationResult; export declare function useMarkSessionViewed(): import("@tanstack/react-query").UseMutationResult; export declare function useDeleteSession(): import("@tanstack/react-query").UseMutationResult<{ success: boolean; }, Error, string, unknown>; //# sourceMappingURL=useSessions.d.ts.map