import { DocumentSlice } from './documentSlice.js'; import { NavigationSlice } from './navigationSlice.js'; import { ViewportSlice } from './viewportSlice.js'; import { SearchSlice } from './searchSlice.js'; import { AnnotationSlice } from './annotationSlice.js'; import { UiSlice } from './uiSlice.js'; export type { DocumentSlice, LoadState } from './documentSlice.js'; export type { NavigationSlice } from './navigationSlice.js'; export type { ViewportSlice } from './viewportSlice.js'; export type { SearchSlice, SearchState } from './searchSlice.js'; export type { AnnotationSlice } from './annotationSlice.js'; export type { UiSlice, ToolbarDensity } from './uiSlice.js'; export type ViewerStore = DocumentSlice & NavigationSlice & ViewportSlice & SearchSlice & AnnotationSlice & UiSlice; export interface CreateViewerStoreOptions { /** localStorage key for persisted preferences; pass a distinct key per viewer to isolate them. */ persistKey?: string; } export declare const createViewerStore: (options?: CreateViewerStoreOptions) => import('zustand').UseBoundStore, "subscribe"> & { subscribe: { (listener: (selectedState: ViewerStore, previousSelectedState: ViewerStore) => void): () => void; (selector: (state: ViewerStore) => U, listener: (selectedState: U, previousSelectedState: U) => void, options?: { equalityFn?: (a: U, b: U) => boolean; fireImmediately?: boolean; } | undefined): () => void; }; }, "setState" | "devtools"> & { setState(partial: ViewerStore | Partial | ((state: ViewerStore) => ViewerStore | Partial), replace?: false | undefined, action?: (string | { [x: string]: unknown; [x: number]: unknown; [x: symbol]: unknown; type: string; }) | undefined): void; setState(state: ViewerStore | ((state: ViewerStore) => ViewerStore), replace: true, action?: (string | { [x: string]: unknown; [x: number]: unknown; [x: symbol]: unknown; type: string; }) | undefined): void; devtools: { cleanup: () => void; }; }, "setState" | "persist"> & { setState(partial: ViewerStore | Partial | ((state: ViewerStore) => ViewerStore | Partial), replace?: false | undefined, action?: (string | { [x: string]: unknown; [x: number]: unknown; [x: symbol]: unknown; type: string; }) | undefined): unknown; setState(state: ViewerStore | ((state: ViewerStore) => ViewerStore), replace: true, action?: (string | { [x: string]: unknown; [x: number]: unknown; [x: symbol]: unknown; type: string; }) | undefined): unknown; persist: { setOptions: (options: Partial>) => void; clearStorage: () => void; rehydrate: () => Promise | void; hasHydrated: () => boolean; onHydrate: (fn: (state: ViewerStore) => void) => () => void; onFinishHydration: (fn: (state: ViewerStore) => void) => () => void; getOptions: () => Partial>; }; }>;